1 / 40

시스템 관리 기본

시스템 관리 기본. SPARCS 10 채승우. Maintaining the System 시스템 유지하기. 시스템 관리 작업 - root 계정에서 ! root 계정은 파일 퍼미션과 보안 메커니즘의 적용 X. 즉 모든 파일에 접근 및 수정 가능 모든 사용자에게 모든 권한을 준다면 그야말로 시스템 관리가 힘들어 진다 . 우분투 같은 일부 배포판에서는 root 계정을 사용할 수 없게 되어있다 . 대신 sudo 를 사용하여 root 권한으로 명령을 실행할 수 있다.

landry
Download Presentation

시스템 관리 기본

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 시스템 관리 기본 SPARCS 10 채승우

  2. Maintaining the System시스템 유지하기 • 시스템 관리 작업 - root 계정에서! • root 계정은 파일 퍼미션과 보안 메커니즘의 적용 X. 즉 모든 파일에 접근 및수정 가능 • 모든 사용자에게 모든 권한을 준다면 그야말로 시스템 관리가 힘들어 진다. • 우분투 같은 일부 배포판에서는root계정을 사용할 수 없게 되어있다. 대신 sudo를 사용하여 root권한으로 명령을 실행할 수 있다.

  3. 일반적으로 바로 root로 로그인하지 않는다. • 개인 사용자로 로그인 한 뒤, su명령어를 이용하여 root로 로그인. • 이유: su명령을 이용하면 로그인 시 로그가 남게되어 누가 언제 root권한을 이용했는지 알 수 있다. su(–)[username] • [username] 생략 시 root로 로그인 • – 추가 시해당 user의 설정 파일도 같이 실행

  4. Booting the System시스템 부팅하기 • 리눅스 부팅 과정 1. 부트로더(GRUB, LILO) 2. 커널 부팅 3. init 실행 4. runlevel에 맞는 프로세스 실행 5. 사용자 로그인

  5. 부트 플로피 이용 - 커널 이미지가 압축되어 들어있다 - 부팅 시 압축이 풀리면서 메모리에 적재 • GRUB 이용 - GRand Unified Bootloader - 대부분의 리눅스배포판의부트로더

  6. - grub.conf예시

  7. System Startup and Initialization시스템 시동과 초기화 • Kernel Boot Messages • init, inittab, and rc Files • rc Files

  8. - Kernel Boot Messages • dmesg명령 이용: 부팅 후 부팅 메시지 확인 Linux version 2.6.26-2-686 (Debian 2.6.26-22lenny1) (dannf@debian.org) (gcc version 4.1.3 20080704 (prerelease) (Debian 4.1.2-25)) #1 SMP Wed May 12 21:56:10 UTC 2010 • 커널 버전, 커널이 언제 어디에서 어떤 컴파일러로 컴파일 되었는지 보여줌

  9. Kernel command line: root=/dev/sda1 ro quiet • 어느 장치로 부팅되었는지 알 수 있다. Calibrating delay using timer specific routine.. 5894.30 BogoMIPS (lpj=11788608) • 프로세스의 속도를 대강 잰 값. 몇몇 장치 드라이버에서 사용할 최적의 지연 루프 성능을 알아내기 위해 사용

  10. PCI: PCI BIOS revision 3.00 entry at 0xf0031, last bus=4 PCI: Using configuration type 1 for base access … PCI: MCFG configuration 0: base e0000000 segment 0 buses 0 – 255 … • PCI 버스에 대한 정보 수집과 점검

  11. 다음 네트워킹, 마우스 포트, 시리얼 드라이버를 설정 serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A • 이후 리얼타임 클록, 플로피 드라이브등 기타 하드웨어의 인식 결과가 나온다.(만일 시스템에 존재 한다면)

  12. Adding 19599292k swap on /dev/sda3. Priority:-1 extents:1 across:19599292k • 위의 줄에서는 커널이 발견한 스왑 영역의 양을 보여준다. • 그 외 전형적인 부트 과정에는 병렬 포트 발견/설정, 네트워크 카드 인식/설정, USB 서브시스템 설정 등이 포함된다.

  13. - init, inittab, and rc파일 • 부팅되면서 장치 드라이버가 초기화되면, 커널은/etc (/bin 혹은 /sbin일 수 도 있다.)에 있는 init 프로그램 실행. init: 다목적 프로그램. 새로운 프로세스를 생성하거나 프로그램이 종료되었을 때 다시 시작. 예시: init은 getty프로세서를 실행시킨 뒤, 사용자를 기다린다. 사용자가 오면 getty는 login을 실행한 뒤 꺼진다. 이후 login이 완료되고 꺼지면 init에서 다시 getty프로세서를 실행한다.

  14. inittab파일은 init의 동작 제어를 위한 파일이다. /etc 에 존재한다. • 실행 레벨(run level)은 현재의 시스템 상태를 명시하는 숫자이다. 0: 종료, 1: 단일 사용자, 2~5: 다중사용자, 6: 재부팅 • 시스템의 실행 레벨이 3으로 변경되면 /etc/inittab에서 실행 레벨 3으로 되어있는 명령들을 실행한다.

  15. 실행레벨 1: 최소한의 설정 스크립트를 실행 실행레벨 2: 실행레벨 1+ 네트워크 설정을 실행 실행레벨 3: 실행레벨 1,2 + 전화 접속 로그인을 허용 … • 이런 식으로 실행레벨이 정의되어있다. • 레드햇과 수세 배포판에서는 실행레벨 5에서 X윈도우 시스템 그래픽 인터페이스 시작 • 데비안: 실행레벨 2~5 이용

  16. - rc파일

  17. rc파일에는 리눅스의 시동 명령의 집합 • 앞서 스샷에서 봤듯이 실행 레벨에 따라 구분되어 저장된다. K00xxxx: 기존의 서비스를 죽이는 스크립트 S00xxxx: 새로운 서비스를 시작하는 스크립트 • 00에는 숫자가 들어가며, 이 숫자가 작을수록 먼저 실행된다.

  18. Single-User Mode단일 사용자 모드 • 보통 ‘다중’ 사용자 모드로 이용. • 그러나 설치 중 문제가 발생하거나, 손상된 파일시스템을 점검하거나 할 때 ‘단일’ 사용자 모드 이용 • 아주 기본적인 설정만 되어있는 상태이며, 파일시스템은 언마운트 되어 있다. • 단일 사용자 모드에서 기본적으로 슈퍼유저(root)가 된다.

  19. Shutting Down the System시스템 셧다운하기 • 디스크 읽기/쓰기를 메모리에 버퍼. • 따라서 전원이 나가면 버퍼가 디스크에 쓰이지 않기에 자료 상실. • 커널에서 약 5초마다 더티버퍼를 디스크에 씀. • 그러나 정상적인 종료가 가장 안전하다. shutdown [옵션] [시간] [메시지] 옵션: -h(종료), -r(리부팅), -c(취소), -k(경고)

  20. The /proc Filesystem/proc 파일시스템

  21. Managing User Accounts사용자 계정 관리 • 사용자는 보통 사용자와 가상 사용자로구분 • 시스템 데몬에서 이용하는 것이 가상 유저. • 시스템 관리를 하려면 이러한 유저들을 추가, 수정, 삭제 등의 작업을 할 수 있어야 한다. • 유저정보, 그룹정보, 사용자의 추가, 삭제, 수정, 정지 등의 방법

  22. - passwd파일 • 모든 계정은 /etc/passwd파일에 기록되어있다. • 형식: username:password:uid:gid:gecos:homedir:shell • 예시: root:ZxPsI9ZjiVd9y:0:0:The root of all evil:/root:/bin/bash aclark:BjDf5hBysDsii:104:50:Anna Clark:/home/aclark:/bin/bash

  23. - passwd파일 예시 1

  24. - passwd파일 예시 2

  25. - 섀도우 패스워드 • 암호화된 패스워드를 일반 사용자에게 노출하는 것은 보안상 위험 • /etc/passwd의 패스워드 항목에 x나 *만 표시 • /etc/shadow에 암호화된 패스워드 저장 • pwconv와 같은 프로그램을 이용하여 구현할 수 있다. (보통의 배포판에서는 이미 사용) • 데비안의 경우: shadowconfig on

  26. - PAM과 기타 인증 방식 • 각자 원하는 보안에 대한 레벨이 다르다. • 커버로스등 다른 인증 방식들도 존재. • 그러나 다른 인증방법을 사용하기 위해서는 사용자 인증에 관련된 모든 프로그램을 새로 컴파일 해야 한다. • PAM(Pluggable Authentication Methods): 교체 가능 인증 방식

  27. - 그룹 파일 • –l 옵션을 통해 디렉토리의 파일을 살펴보면 아래 그림과 같이 파일 정보가 같이 보인다. • 여기서 녹색으로 동그라미 친 부분이 그룹에 관한 정보이다. • 이러한 그룹들은 /etc/group에 저장되어 있다. groupname:password:gid:members • 그룹 추가: /etc/group 수정 or gpasswd이용

  28. - 그룹 파일 예시 1

  29. - 그룹 파일 예시 2

  30. - 계정 만들기 Way 1 • /etc/passwd에 항목 추가. 사용자 홈 디렉토리 생성. 사용자 기본 설정 파일 복사 등등 Way 2 • adduser명령 사용(리눅스종류에 따라 useradd일 수도 있음)

  31. - 계정 삭제와 비활성화 • /etc/passwd에서 해당 항목 삭제. /etc/group에서 해당 유저 제거. 사용자의 홈 디렉토리 제거. or • userdel명령 이용. userdel[옵션] [username] 옵션: –r(홈 디렉토리도 같이 제거) • 사용자가 생성, 소유한 기타 파일 제거

  32. 보통 기타 파일(수동으로 지워야하는 파일)은 중요하지 않기에 나둬도 상관 없다. • 지우는 경우, 해당 사용자와 관련된 파일을 찾아야 하는데, 찾는 방법은 find 명령을 사용하면 쉽게 찾을 수 있다. find [디렉토리] [옵션] [옵션 값] –ls 옵션: –user[username], –uid[num] • 계정 정지: passwd파일의 암호란 앞에 *추가

  33. - 사용자 계정 수정 • 사용자 계정이나 그룹의 속성을 수정하려면 간단히 /etc/passwd, /etc/group 을 수정. • usermod혹은 groupmod명령 이용. • 사용자 ID 수정은 /etc/passwd파일에서 해당 부분 수정 후, chown명령 이용. chown–R[username] [homedir] • chown: 새로운 사용자 ID를 위해 사용자가 소유하던 파일의 소유권을 변경하는 명령

  34. - sudo명령 권한 • su, 혹은 sudo명령을 통해root와 같은 권한으로 명령을 실행 할 수 있다. • 그러나 일반 사용자에게 이런 명령을 사용하게 하는 것은 앞서 지적했던 여러 가지 문제가 발생할 수 있다. • 따라서 wheel 그룹을 생성하여, 여기에 속한 사람들만 sudo명령을 사용할 수 있게 한다. • 이를 이용할 수 있는 유저들이 /etc/sudoers에 기록되어 있다.

  35. 감사합니다.

More Related