시스템 보안과 운영체제 학습 요약
1. 시스템 동작과 이해
하이퍼바이저 및 가상화
- 하이퍼바이저(Hypervisor): 물리적 시스템에 여러 가상 시스템을 운영.
- Type 1 (Baremetal): Xen, Hyper-V, VMware ESXI.
- Type 2 (Hosted): VirtualBox, VMware Workstation.
- 가상화의 장점:
- 리소스 절약 및 비용 감소.
- 시스템 리소스 추상화.
운영체제의 역할
- 하드웨어와 사용자 간의 인터페이스.
- 장치 관리 및 응용 프로그램 서비스 제공.
- 대표적인 운영체제:
- Windows, Unix, Linux, macOS 등.
2. Unix와 Linux
Unix
- 개발 배경:
- 1969년, 켄 톰슨과 데니스 리치에 의해 개발.
- 간단하고 효과적인 운영체제를 목표로 함.
- 특징:
Linux
- 개발 배경:
- 1991년 리누스 토발즈가 Minix를 바탕으로 개발.
- 특징:
- 오픈소스 및 GPL 라이선스.
- Ubuntu, CentOS 등 다양한 배포판 제공.
- 임베디드 시스템(Android, Tizen)에서도 사용 가능.
3. 리눅스 파일 및 디렉토리 관리
주요 명령어
- 디렉토리 확인:
ls
옵션:
-a: 숨김 파일 포함.
-l: 상세 정보.
-h: 사람 읽기 쉬운 형식.
- 디렉토리 이동:
cd
- 디렉토리 생성 및 삭제:
- 생성:
mkdir [디렉토리명]
- 삭제:
rmdir [디렉토리명]
- 파일 복사, 이동, 삭제:
- 복사:
cp [원본] [대상]
- 이동:
mv [원본] [대상]
- 삭제:
rm [파일명]
파일 권한 관리
- 권한 변경:
chmod
chmod 754 file: 파일 권한 rwxr-xr--으로 설정.
- 소유자 변경:
chown
chown user file: 파일 소유자를 user로 변경.
- 그룹 변경:
chgrp
chgrp group file: 파일 그룹을 group으로 변경.
4. 로그 관리
주요 로그 파일
- 시스템 로그:
/var/log/syslog: 시스템 이벤트.
/var/log/kern.log: 커널 메시지.
/var/log/auth.log: 인증 관련 이벤트.
- 서비스 로그:
/var/log/apache2/access.log: Apache 웹 서버 요청 기록.
/var/log/apache2/error.log: Apache 웹 서버 에러 기록.
로그 확인 명령어
- 로그 실시간 확인:
tail -f [로그파일명]
- 특정 패턴 검색:
grep [패턴] [로그파일명]
5. 텍스트 편집기 및 쉘 명령어
텍스트 편집기
vi, vim, nano 사용.
- 주요 명령어:
- 저장:
:w
- 종료:
:q
- 저장 후 종료:
:wq
쉘 명령어
man: 명령어 도움말.
echo: 텍스트 출력.
cat: 파일 내용 출력.
wc: 단어, 줄 수 계산.
6. 기타 유용한 기능
파이프와 리다이렉션
- 파이프:
|
예: ls | wc -l → 디렉토리 내 파일 개수 출력.
- 리다이렉션:
> (덮어쓰기), >> (추가쓰기).
백그라운드 작업
- 명령어 끝에
&를 붙여 실행:./script.sh &
7. 로그의 활용
로그의 목적
- 성능 모니터링: 시스템 상태 분석.
- 보안 감사: 무단 접근 추적.
- 오류 진단: 문제 해결 정보 제공.
- 규정 준수: 법적 요구사항 충족.
- 책임 추적성: 사용자의 활동 기록.