[book] Operating System Concepts

pdf

  • 9th

https://github.com/yuanhui-yang/Operating-System-Concepts/blob/master/Operating%20System%20Concepts%20-%209th%20Edition.pdf

  • 8th

http://www.uobabylon.edu.iq/download/M.S%202013-2014/Operating_System_Concepts,_8th_Edition%5BA4%5D.pdf

 

  • Power Point material

http://codex.cs.yale.edu/avi/os-book/OS9/slide-dir/

Advertisements

나야나 – 랜섬웨어관련 – 3차공지

[3차공지] Erebus Encrypted로 인한 시스템 장애
공지시간: 2017.6.11 오후 6시경 공지

상세공지가 늦어진 점 대단히 죄송합니다.

(주)인터넷나야나에서는 보안 부분과 이중 백업을 철저히 시행하였으나 해커의 공격으로 인해서 해당 서버들의 데이터가 랜섬웨어에 감염되었습니다.

저희는 2017년 6월 10일 01시 30분 경 랜섬웨어 공격을 최초 확인하였고
랜섬웨어 공격 발견 즉시 저희는 인터넷진흥원 및 사이버수사대에 신고 조치하였으며 현재 조사 및 수사 중에 있습니다.

감염상황은 Erebus 랜섬웨어에 해킹 되었으며 대상은 리눅스 서버이고, 감염대수 163대 입니다.

복구를 위한 해커의 최초 요구사항은 각 리눅스 서버 당 10비트코인(한화 32,710,000원) 입니다.
2017년 6월 11일 현재 해커의 최종 요구사항은 2017년 6월 14일 23시 59분까지 각 리눅스 서버 당 5.4비트코인(한화 17,550,000원) 입니다.

저희는 랜섬웨어에 감염된 파일로 확인 후 백업된 자료로 복구하려고 하였으나
원본 파일을 포함한 내부 백업 및 외부 백업 모두 랜섬웨어에 감염되어 모두 암호화 되었다는 사실을 확인하였습니다.

현재 시점에서 내부회의를 통해서 정리해 본 정상화를 위한 방법은 다음과 같습니다.

1. 감염된 원본을 가져가서 돈을 지불하여 푸는 방법 (감염된 원본은 제공이 가능함, 백업본 포함)
2. 보유하고 있는 원본 데이터 제공 시 복원 지원

저희는 (주)인터넷나야나에서 관리하는 웹 호스팅, 서버 호스팅, 도메인, 위탁관리 및 인계가 가능한 업체를 논의하는 등 고객님들의 이익을 보호하기 위해서 저희가 할 수 있는 최선을 다하고 있습니다.

랜섬웨어 자료 복구 가능 여부는 현재 인터넷진흥원의 조사와 사이버수사대의 수사가 진행 중이어서 당장 복구가 어려운 상황이지만
저희는 빠른 시간내에 복구를 할 수 있는 방안들도 찾아 보고 있습니다. 다시 한번 이런 상황이 생기게 되어서 죄송한 마음입니다.

정상적인 서비스를 이용하시는 고객님의 경우 인터넷진흥원 및 사이버수사대와 공조하여
고객님의 지적재산권과 이익을 보호하기 위해 최선을 다하고 있으므로 동요없이 믿고 기다려주시기 바랍니다.

현재 진행되는 상황에 대해서 수시로 공지를 올리도록 하겠습니다.

nginx 역할

참고사이트: http://kyounginserverstudy.blogspot.kr/2016/08/nginx.html

NGINX는 차세대 웹서버로 불린다. 위의 그래프를 통해서 알 수 있듯이 Apache의 독주에 제동을 걸고 있다. NGINX의 특징은 한마디로 정의하면 아래와 같다.
더 적은 자원으로 더 빠르게 데이터를 서비스 할 수 있다.

웹 응용 프로그램 서버에서 Nginx 역할

  • 응용프로그램 서버에 요청을 보내는 리버스 프록시로서의 역할
  • 응용프로그램 서버가 처리하지 않는 이미지나 css 파일과 같은 정적 파일을 처리하는 HTTP 서버로서의 역할

 –  리버스 프록시 역할

클라이언트 요청을 각 응용프로그램 서버에 배분해 그결과를 클라이언트에 반환하는 것이다. 클라이언트의 요청은 일단 모두 리버스 프록시가 받아 응용프로그램 서버로 보내고그 응답을 버퍼링해 클라이언트에 반환한다. 일반적으로 리버스 프록시는 각 응용프로그램 서버에 요청을 배분해 부하를 분산하고 캐시 서버로서의 역할을 하지만 웹 응용프로그램 서버에 리버스 프록시를 두는 이유는 주로 요청에 대한 버퍼링 때문이다. 응용프로그램 서버가 직접 클라이언트와 통신할 경우 사용자에게 응답을 반환할 때까지 응용프로그램 서버가 커넥션을 가져야 한다. 그러므로 단일 프로세스가 처리할 수 있는 요청 수를 제한하는 응용프로그램 서버에서는 통신 속도가 느린 클라이언트의 접속 때문에 1개의 프로세스가 응답 대기 상태가 돼버린다. 리버스 프록시는 응용프로그램 서버의 응답을 버퍼링해 응용프로그램 서버가 각 클라이언트와 통신을 신경 쓰지 않고 크게 지연 없이 입출력을 종료하고 다음 커넥션을 처리할 수 있다.

 – 정적 파일을 처리하는 HTTP 서버

응용프로그램 서버가 이미지 파일이나 css 파일 같은 정적파일을 요청을 처리가게 되면 동적처리가 주 목적인 서버의 리소스를 낭비하게 된다. 이와 같은 정적 파일의 요청을 처리하는 Nginx의 두번째 역할이다. (location 지시어를 사용하여 요청을 배분한다.)

기본적인 지시어

*** Nginx기본적인 처리 흐름
  1. host header,port에 어떤 server지시어가 일치하는지 할당
  2. 일치하는 server 지시어의 처리를 수행
  3. server 지시어으 일치하는 location 컨텍스트의 처리를 수행

HTTP server를 동작시키는데 필요한 지시어

  • server 지시어
    http서버의 가상 호스트를 정의. server 컨텍스트를 정의

    server{ listen 80; server_name http://www.example.com … // 이안에 작성한 설정은 http://www.example.com 에 적용 }
    
    
  • location 지시어
    지정한 조건에 일치하는 경로에 대한 처리를 작성하기 위해서 사용

    location /image/ {

    … // /image/이하 파일에 적용할 설정

    }

    
    

    경로 기록 외 정규 표현등 쓸수 있다. 정규표현을 사용하면 경로에 따라 동작을 배분 설정도 간단히 작성 가능

  • root 지시어
    실제 콘텐츠가 있는 폴더를 지정,
    root지시어는 절대 경로이거나 Nginx 설치 폴더에 대한 상대 경로를 지정,
    root 폴더는 http 컨텍스트, server 컨텍스트, location컨텍스트에 작성 할 수 있다.

    location / { root html;

    // http://www.example.com/ 이 root가 된다.

    } location /html/ { root html;

    // http://www.example.com/html/ 이 root가 된다.

    }

    
    
  • error_page 지시어
    에러 시에 표시되는 url을 지정
    1.  인수는 공백 문자로 구분해
    정렬된 http 상태 코드를 지정하고,
    마지막 인수로 그 상태 코드와 일치하는 경우에 표시할 url을 지정

    error_page 404 /404.html error_page 502 503 504 /5xx.html
    // 502.503.504일때 /5xx.html을 표시
    
    
    1. @로 시작하는 경로를 사용해 다른 서버로 대체 설정 할 수 있다.

    @로 시작하는 경로는 특별한 location으로 Nginx 내부에서만 사용.

    error_page 404 @fallback; location @fallback{ proxy_pass http://fallback_server; // 이 서버의 파일을 찾을 수 없을 때는 fallback_server로 정의한 서버에 요청 }