예전것/시스템 보안2009. 5. 28. 21:34
문제:
 회사의 홈페이지 서버로 사용하기 위한 용도로 Linux시스템을 인스톨 하였다.
하지만, 인스톨하는 과정에서 일부 네트웍서비스가 같이 인스톨되었다.
이중, named 같은 네트웍서비스는 불필요한 것이므로 disable시켜야 된다.
시스템 설정을 변경시켜서 이 서비스가 영구적으로 제공되지 않도록 하시오.
(단, 나중에 다시 이 네트웍서비스가 필요하게 될지 확실치 않기 때문에
서비스 관련 파일들을 완전히 삭제해서는 안된다.)

#ps
#pkill named

#cd /etc/rc.d/rc3.d/   ( default run level이 3이므로 여기서 변경)

#mv S45named B45named (K로 해줘도 됨.)

S는 부팅시에 시작하기 위한것이다. 그뒤에 나오는 숫자는 우선순위를 의미합니다. 즉, 어떤것을 먼저 시작하는가에 대한 것이다. 그리고, K로 시작하는 것은 서버를 종료할때에 종료할 스크립트들이다. 즉, K로 시작하는 모든 파일들은 종료를 위한 스크립트이다. 뒤에 나오는 숫자는 종료시의 우선순위를 의미한다.


-- 리눅스는 부팅시에 런레벨에 따라 /etc/rc.d/rc?.d/로 들어가고 여기서 실행할것을 /etc/init.d에서 스크립트를 실행한다.
예전것/시스템 보안2009. 5. 28. 19:32
TTY란?
- The name of the program comes from teletypewriter, abbreviated "TTY"

TTY는 프로세스가 실행된 터미널 포트를 가리킨다.
TTY와 PTS로 표시가 되는데 의미는 다음과 같다

-로컬 시스템 로그인시 : tty + 가상터미널 수
-원격 시스템 로그인시 : pts/번호

가) netstat
시스템이 사용중인 프로토콜과 소켓에 대한 정보를 보여주는 명령으로 주요 사용법은 다음과 같다.

netstat -na
LISTEN - 연결대기
ESTABLISHED - 연결됨

lsof ('List Open File')에 관한 글.
http://www.superuser.co.kr/security/certcc/secu_certcc_15.htm



문제: 리눅스 시스템 커널버전2.4에서 제공하는 방화벽 (iptables)을 이용하여
호스트기반 방화벽을 구축하려한다. 이때에 보안정책은 모든 들어오는 패킷에
대해서 drop시키는 것을 원칙으로하고, 일부 허용된 패킷에 대해서만
통과시키는 것이다. 이에 필요한 /etc/sysconfig/iptables의 설정을 완성시키시오.
현재 허용되는 패킷은 IP주소에 관계없이 destination port 가 22/tcp (ssh) 인
것으로 한정되어 있으며, 여기에 80/tcp (www)를 추가하시오.

http://unix.co.kr/HOWTO/Packet_Filtering-KLDP/Packet_Filtering-KLDP-6.html 참조 함.
                     _____
                     /           \
   -->[ 라우팅 ]--->|포워딩 |------->
       [ 판  정 ]         \_____/        ^
           |                        |
           v                       ____
          ___                     /    \
         /   \                   | 출력 |
        |입력 |                   \____/
         \___/                      ^
           |                        |
            ----> Local Process ----

  1. 패킷이 커널에 도탁하면 그 패킷의 목적지를 확인한다. 이것은 '라우팅' 이라고 한다.
  2. 이것의 목적지가 이곳이면, 패킷은 위 그림에서 아래쪽 방향으로 전달 되어 입력 체인에 도달한다. 이것이 이 체인을 통과하면 패킷을 기다리 고있던 어떤 프로세서도 그것을 받게 된다.
  3. 그렇지 않으면, 커널이 포워딩 불능으로 되어있던가, 패킷을 어떻게 포 워딩해야 하는가를 알지 못하면, 그 패킷은 DROP 된다. 포워딩이 가능하 게 되어있고 다른 곳이 목적지이면 패킷은 그림의 오른쪽 방향으로 전달 되어 포워딩 체인으로 간다. 이 체인이 ACCEPT 하게 되면 이것은 포워딩 할 네트워크로 보내진다.
  4. 마지막으로, 이곳에서 돌아가던 프로그램은 네트워크 패킷을 전송할 수 있 게 된다. 이 패킷은 즉시 출력 체인에 보내진다. 이 체인이 ACCEPT 하게 되면 이 패킷은 그 목적지가 어디든지 보내진다.

 풀이 :
#vi /etc/sysconfig/iptables
여기에 22번 포트 만 허용해 놓았는데
-A INPUT -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 -p tcp -m tcp --dport 80 -j ACCEPT
라고 적어주자

iptables의 사용법에 대해서는 좀더 공부가 필요한듯..