X 윈도 X 윈도의 개념 및 특징 X 윈도의 역사 DEC, IBM, MIT가 공동으로 시작한 아데나 프로젝트의 일환으로 Bob Scheigler와 Jim Gettys가 1984년 최초 버전을 발표 XFree86 IBM 호환 시스템을 사용하는 유닉스 계열 운영체제를 위한 이 후 자유 소프트웨어 재단의 GPL 라이선스와 호환되지 않으면서 대부분의 개발자들이 X.org로 옮겨감 개발 중단됨 X.org X. org Server라 부름 소스가 공개된 자유 소프트웨어로 X Window System에 사용되는 디스플레이 서버 현재 거의 다 X.org Server 사용함 X 윈도의 특징 네트워크 프로토콜에 기반을 둔 그래픽 사용자 인터페이스 환경 X 윈도의 구조 X 윈도는 클라이언트/서버 구조로 되어 있고, 서로간의 ..
리눅스의 구조 부트 매니저 부팅을 도와주는 역할을 하는 프로그램 선택하여 부팅할 수 있도록 해줌 부트로더 하드디스크의 맨 앞쪽 영역인 MBR(Master Boot Record)에 설치 MBR은 부트 섹터로 디스크의 첫 번째 섹터에 해당하고 크기는 512 바이트 부트 섹터에 부트 매니저 프로그램과 파티션 정보가 기록 리눅스에서 사용하는 대표적인 부트 매니저 프로그램에는 LILO(Linux Loader)와 GRUB(Grand Unified BootLoader)가 있음 LILO는 특정 파일 시스템에 구애받지 않고 플로피 디스크와 하드디스크를 이용한 부팅을 지원 현재는 GRUB 씀. GRUB GNU 프로젝트에서 만든 부트로더 다양한 파일 시스템 지원 부팅 시에 커널 인자를 조정하여 동적인 부팅을 지원 메뉴 인터..
리눅스와 하드웨어 하드웨어의 이해 리눅스 설치를 위한 하드웨어 정보 파악 CPU 인텔사의 x86 계열 CPu 지원, 추가적으로 AMD, 모토롤라,SPARC 등 지원 정확한 모델 정보를 알아야 함 CPU 비트수 파악도 중요 CPU의 가상화 기술 지원 여부도 매우 중요 메모리(RAM) 메모리의 용량은 정확히 알고 있어야 함. 스왑 파티션 설정과 관련이 있어서 32비트 리눅스 운영체제에서는 페이징 기법의 차이로 4GB 이상의 램을 인식할 수 없음 64비트 리눅스 운영체제는 메모리 용량을 16TB 이상을 지원 하드디스크 드라이브 현존하는 대부분의 하드디스크 사용이 가능. USB, SSD도 가능 파티션 변경이나 설정, 스왑 설정 등 리눅스 시스템 ㅅ ㅏ용 중에 변경할 일 이 발생 /dev/hdx 파일 형식, /d..
리눅스 기초 리눅스의 철학 리눅스의 철학 처음 개발자인 리누스 토발즈의 주도하에 개발이 진행됨. GNU GNU's Not Unix 리철드 스톨먼을 주축으로 자유로운 스프트웨어를 희망하던 공동체들이 가장 먼저 유닉스를 모태로 개발을 시작. gcc, emacs, GNOME, GNU tar, bash, GRUB 등과 같은 다양한 분야의 응용 프로그램 만듬 FSF(Free Software Foundation)와 자유 소프트웨어 자유 소프트웨어의 생산, 보급, 발전시키기 위해 리처드 스톨만이 세운 비영리 조직. 자유 소프트웨어 프로그램을 실행시킬 수 있는 자유 프로그램이 어떻게 동작하는 지 학습하고, 필요에 따라서 프로그램을 개작할 수 있는 자유 무료 또는 유로로 프로그램을 재배포할 수 있는 자유 프로그램을 개선..
운영체제의 개요 컴퓨터 하드웨어와 컴퓨터 사용자 간의 매개체 역할을 하는 시스템 소프트웨어로 사용자가 프로그램을 수행할 수 있는 환경을 제공. 좁은 의미는 하드웨어와 응용 프로그램간의 다리 역할을 하는 커널을 의미, 넓은 의미에서는 커널, 미들웨어, 응용 프로그램 실행 환경과 사용자 인터페이스 프레임워크를 모두 포괄하여 정의 주목적은 컴퓨터 시스템을 편리하게 이용하는 것에 있고, 추가적인 목적은 PCU, 주기억장치, 입출력장치 등의 컴퓨터 하드웨어를 효율적으로 관리하는 데 있음. 운영체제의 이해 운영체제의 주요 역할 하드웨어 제어 작업의 순서 정함, 입출력 연산 제어 프로그램 실행 제어, 데이터 및 파일 저장 관리 사용자들 간의 하드웨어 자원 공유 시스템 자원을 스케줄링하여 효율적으로 활용 입출력을 쉽게..
네트워크 침해 유형 및 특징 네트워크 침해 유형 및 특징 DoS(Denial of Service) 공격 시스템이나 네트워크의 구조적인 취약점을 공격하여 정상적인 서비스를 할 수 없도록 방해하는 것. 과도한 부하를 발생시켜 데이터나 자원을 잠식. 파괴 공격, 시스템 자원 고갈 공격, 네트워크 자원 고갈 공격으로 분류. Ping of Death Ping을 이용하여 ICMP 패킷을 정상적인 크기보다 아주 크게 만들어 보낸는 공격 방법. ICMP Flooding의 일종. UDP Flooding UDP 패킷을 대량 발생시켜 특정 시스템의 서비스를 방해하는 공격. 소스 주소가 스푸핑된 시스템에서 UDP 패킷을 공격 대상이 되는 시스템에 대량 전송하여 네트워크 대역폭을 소모하는 형태로 공격이 이루어짐 TCP SYN ..
가상화 관리 가상화 서비스의 이해 가상화의 정의 및 개요 한 컴퓨터의 물리적 시스템 자원인 CPU, 메모리, 디스크 등을 여럿으로 나누거나, 다수의 컴퓨터들의 물리적 자원을 하나로 묶어서 제공하는 기술 가상화의 기능 공유(Sharing) 다수의 많은 가상 자원들이 하나의 동일한 물리적 자원과 연결되어 있거나 가리키는 것 서버내의 논리적 파티셔닝(LPARs), 가상머신(VM), 가상 디스크, 가상 LAN(VLANs) 단일화(Aggregation) 공유의 반대되는 가상화 개념. 가상 자원은 여러 개의 물리적 자원들에 걸쳐서 만들어질 수 있으며 이를 통해 외견상 전체 용량을 증가시키고, 전체적인 관점에서 활용과 관리를 단순화시켜 줌. 에뮬레이션(Emulation) 물리적 자원 자체에는 원래부터 존재하지 않았지..
메일 관련 서비스 메일 관련 서비스의 이해 메일 서버의 개요 메일 관련 프로토콜 SMTP(Simple Mail Transger Protocol) : 인터넷에서 이메일을 보낼 때, 메일 클라이언트에서 메일 서버로 메일을 보낼 때 사용되는 프로토콜. TCP 25번 포트 사용. POP3(Post Office Protocol Version 3) : 서버에 도착한 메일을 클라이언트에서 직접 내려 받아 읽도록 해주는 프로토콜. 110번 포트 사용. 메일을 확인하면 서버로부터 메일을 클라이언트로 가지고 온 후 서버에서 해당 메일을 삭제함. IMAP(Internet Mail Access Protocol) : POP3와 마찬가지로 클라이언트 사용자가 메일 서버에 도착한 메일을 확인 할 때 사용하는 프로토콜로 143번 포..
인증 관련 서비스 인증 관련 서비스의 이해 인증의 개요 하나의 서버에 사용자 관련 정보를 저장하고, 나머지 다수의 다른 서버에 사용자, 암호, 그룹 정보 등을 제공하는 서비스를 말함 NIS, LDAP, 액티브 디렉터리(윈도우용) NIS(Network Information Service)의 개요 Sun Microsystems사에서 개발 네트워크 기반으로 여러 가지 정보를 제공해 주는 서비스 하나의 서버에 등록된 사용자 계정, 암호, 그룹 정보 등을 공유하여 다른 시스템에 제공하는 서비스 초기에는 YP라는 이름으로 출시가 되어 관련 명령어들이 yp로 시작하는 계기가 됨 보안을 강화하고, 확장성과 유연성을 높인 NIS+를 발표 NIS+는 RPC(Remote Procedure Call)에서 데이터 암호화 및 인..
웹 관련 서비스 웹 관련 서비스의 이해 웹의 개요 WWW(World Wide Web) 인터넷에 연결된 컴퓨터들을 통해 문서나 정보를 공유할 수 있도록 구성한 정보 공간이자 서비스 인터넷상에서 정보를 하이퍼텍스트 방식과 멀티미디어 환경에서 검색할 수 있는 정보검색 시스템 웹 브라우저라고 부르는 프로그램을 이용해서 탐색 HTML이라는 태그를 이용해서 만듬 웹 서비스 구성 요소 웹 서버 웹 브라우저와 같은 클라이언트로부터 HTTP 요청을 받아 정보제공자가 작성한 웹 페이지나 웹 문서를 전달하는 역할을 수행 아파치, IIS, Nginx, GWS, Cherokee, Lighttpd 등이 있음 로그 관리, 인증, 가상 호스팅, 대용량 파일 지원, 대역폭 제한 등의 기능 웹 문서 웹 서버 프로그램에서는 동적인 페이지..
시스템 분석 시스템 로그 분석 및 관리 시스템 로그의 개요 초기에는 syslog라는 패키지를 사용 syslogd라는 데몬이 /etc/syslog.conf 설정 파일을 기반으로 서비스별 로그 파일을 /var/log 디렉터리에 생성 최근에는 rsyslog(rocket-fast system for log processing) 패키지로 대체 rsyslog는 멀티스레드, TCP, SSL, TLS, RELP(Reliable Event Logging Protocol), 데이터베이스, 보내는 목록 제한, 메시지 일부 필터링, 출력 포맷 제어 등의 다양한 기능 제공 rsyslog 주요파일 /etc/rc.d/init.d/rsyslog : 데몬 /etc/rsyslog.conf : 데몬 환경 설정 /etc/sysconfig/..
장치의 설치 및 관리 장치의 설치 및 관리 모듈 프로그램이나 하드웨어 기능단위, 교환 가능한 구성부분. 보통 모듈이 로드되었다는 것은 커널 밖에 존재하던 해당 드라이버가 커널의 일부로 되었다는 뜻이고, 언로드하면 다시 커널과 별도로 존재. 리눅스 커널 모듈은 C 컴파일러로 만들어진 오브젝트 파일로서 '*.ko' 형태로 생성 각 시스템에서 가능한 모듈은 '/lib/modules/커널버전/kernel' 디렉터리 안에 생성 모듈관련 명령어 lsmod 리눅스 커널에 적재된 모듈 정보를 출력하는 명령 insmod 커널에 모듈을 적재하는 명령. 해당 모듈 파일이 존재하는 디렉터리까지 이동, 의존성이 있는 모듈인 경우에는 적재 못함. [사용법] $ insmod 모듈_파일명 rmmod 커널에서 모듈을 제거하는 명령. ..
3. 프로세스 관리 프로세스의 제어 프로세스 우선순위 명령행에서 'ps -l' PRI와 BNI가 있고, 이 두 항목이 프로세스의 우선순위와 연관 PRI는 운영체제에서 참고하는 우선순위 값으로 낮은 값일수록 우선순위가 높다. 인위적인 조작이 되지 않고, 시스템 상황에 따라 적절히 부여된다. NI 값은 root나 사용자가 조작하는 우선순위 값으로 -20부터 19까지 설정 가능하다. 이 값 역시 낮은 값일수록 우선순위가 높고, root만이 값을 낮출 수 있다.(관련 명령어로 nice, renice) 프로세스와 /proc 디렉터리 /proc 개요 가상 파일 시스템. 동작중인 프로세스 상태 정보 시스템 및 하드웨어 정보 확인 ps 명령시 이 디렉터리 사용 프로세스 생성시 이 디렉터리에 PID와 동일한 서브 디렉터..
2. 파일 시스템 관리 파일 및 디렉터리 관리 소유권과 허가권 소유권은 사용자 소유권과 그룹 소유권으로 나눔 허가권은 user, group, other로 나눔. 허가권은 10개의 영역으로 나눔. 첫 번째는 파일의 타입, 나머지9개는 각각 3개씩 나누고, 첫 세자리는 파일을 소유한 사용자 권한, 두 번째는 해당 그룹에 속한 사용자들 권한, 마지막은 그 외의 다른 사용자들의 권한. 각 세자리는 rwx(읽기, 쓰기, 실행)로 표시. 없는 경우 -로 표시. 파일의 종류 '-' : 일반파일 d : 디렉터리 l : 링크 파일 b : 블록 디바이스 c : 캐릭터 디바이스 p : named pipe(FIFO) s : 소켓 특수 권한 리눅스의 권한 체계는 3계층 3권한. 그러나 이걸로 원할한 시스템 운영 x.(일반 사용..
1. 사용자 관리 root 관리 사용자 분류 root 사용자 일반 사용자 : 로그인이 가능한 사용자, 시스템 계정 숫자 값 형태의 UID(User Identity)로 관리. root는 0이 할당되고 0번 사용자를 슈퍼유저로 인식 일반 사용자는 1번부터 부여. 시스템 계정 시스템의 필요에 의해 생성된 계정. vim, daemon, adm, game 등 root 계정 관리 다른 슈퍼유저가 존재하는지 점검. PAM을 이용하여 root 계정으로 직접 로그인을 막고, su 명령 사용 유도 TIMEOUT 설정 sudo 이용 사용자 계정 관리 사용자 생성 명령어 사용자 계정 생성: useradd [사용법] $ useradd [option] 사용자계정 이름 옵션 -p : 암호를 추가(--password) -d : 홈 ..