1. 서론

Linux는 오픈된 운영체제이기때문에 누구나 접근이 가능하다.
물론 사용자의 권한등을 부여하여 어느정도는 접근을 막을수있지만,
그것으로는 모든 접근을 막을수는 없다.
우리는 서비스를 하는 입장이기에 이 운영체제의 보안을 배워야한다.
서비스를 제공하지 않는다면 리눅스를 왜 배우겠는가?

2. dmesg (1)

위치:/var/log/dmesg
하드웨어에대한 메시지를 보여준다.
파이프를 이용한 grep으로 쉽게 원하는정보를 찾을수있다.
ex)dmesg | grep cpu (-i를 붙이면 대소문자를 구분하지않는다.)

3. 로그인 메시지.

etc/issue 파일을 열어 수정할수있다.
단, 주석이 없으므로 주석으로 처리해도 읽힌다.
/etc/motd 는 로그인후의 메시지를 띄워준다.

4. 간단한 백도어 탐지

find /-perm +2000 을 백업해둔 파일과비교하면,
백도어 프로그램의 설치 유무를 확인할수있다.
백도어 프로그램의 경우 perm이 2000,4000이므로,
find를 이용하여 2000이상의 것들을 잡아낸다.

5. 가장 간단한 파일 비교

diff는 두개의 파일을 비교할수있다.
rpm -qa로 설치프로그램의 목록을 볼수있다.
백업파일과 비교시 프로그램의 삭제, 추가등의 유무를
확인할수있다. 만약 자신이 한 일이 아니라면,
누군가의 침입이 있었는지도 모른다.

6. 접속기록 확인

현재 접속자의 확인 : w
나는 누구인가? : whoami

7. last

last로 과거의 접속기록을 볼수있으며,
last log로 가장최근의 정보를 확인할수있다.
last b로는 접속에 실패한 기록을 볼수있는데,
이것은 무차별 대입공격을 잡아내는데에 용이하다.

8. /etc/passwd

passwd 안에 저장되어있는 암호는 누구나 읽을수있을수있다.
passwd 안으로 접근하여 모든 계정의 경로를 x로 설정해주어
shadow와 연결시키자. (shadow는 root관리자만 읽을수있다.)

pwunconv는 shadow정책에서 일반정책으로 바꾸는것이고
pwconv는 그 역이다.

passwd등의 파일수정뒤에는 두 명령어를 실행시켜준다.

9. 정리

  • 두개의 파일을 비교 : diff [old] [new]
  • 설치파일 확인 : rpm -qa
  • 백도어 설치유무를 확인할때, set uid 확인 : find / -perm +2000
  • 누가접속 : who
  • 나는누구 : whoami , who am i
  • 너뭐함? : w
  • 과거~현재까지 접속기록 : last
  • 제일 최근 로그인기록 : lastlog
  • 로그인 실패기록 : lastb
  • shadow 생성 : pwconv
  • shadow 삭제 : pwunconv
  • default 사용자 파일 : /etc/skel/
  • 로그인 환경설정 : /etc/profile (사용자별은 .bash_profile)
    HISTSIZE : 0 <- 기록 삭제 (history : 보는것, history -c : 삭제)
    TIMEOUT : 3600 <- 로그아웃. (초단위)