Actions
UnixLinux 네트워크 보안¶
1) 보안 쉘(Secure Shell, SSH)¶
- 암호 통신을 이용해 네트워크상의 다른 컴퓨터에 접속해 원격으로 명령 실행, 파일을 조작할 수 있게 해주는 프로토콜
- 암호화된 원격 터미널 서비스, 암호화된 파일 송수신 서비스 제공
- TCP 22번 Port
2) 슈퍼서버(inetd 데몬)¶
- 클라이언트 요청을 슈퍼 데몬이 모두 받아 처리하고 개별 서비스를 호출해주는 데몬 프로세스
- Stand-Alone 방식 : 서비스 별로 데몬 프로세스가 동작되는 방식(속도가 빠르지만, 리소스 소모가 큼)
- inetd(xinetd) 방식 : 슈퍼 데몬을 이용해 개별 서비스를 실행시키는 방식(속도는 느리지만, 리소스 소모가 적음)
- inetd 데몬 최초 실행 시, /etc/inetd.conf 파일을 참조해 서비스 프로그램들에 대한 정보를 얻음
- TCP Wrapper와 연동해 서비스 별 호스트 접근 제어 기능을 사용할 수 있음
1. inetd.conf 파일¶
- 파일 형식 : <'service_name'> <'socket_type'> <'protocol'> <'wait_flag'> <'login_name'> <'server'> <'argument'>
- 서비스(service_name) : /etc/services 에 등록된 포트 번호를 참조해 서비스 별로 포트 부여
- 소켓 : TCP, UDP
- 프로토콜 : /etc/protocols 에 설정된 프로토콜 중 선택(/etc/services의 프로토콜과 일치해야 함)
- 플래그 : nowait(요청 이후 즉시 처리), wait(요청 완료를 기다린 후 처리)
2. 불필요한 서비스 비활성화¶
- Simple TCP 서비스(DoS 공격에 취약) : echo, discard, daytime, chargen
- R 계열 서비스(인증 없이 원격접속 가능) : rlogin, rsh, rexec
- 불필요한 RPC 서비스(다수 취약점 존재) : rpc, cmsd, rusersd
- 기타 : finger, tftp, talk 등
3. 접근 통제(TCP Wrapper)¶
- 외부에서 들어오는 클라이언트에 대한 접근 통제 기능
- /etc/hosts.allow와 /etc/hosts.deny파일 이용
- /etc/hosts.allow를 먼저 확인해 접근을 허용하고 이 목록에 없다면 /etc/hosts.deny를 확인해 이 목록에 있을 경우 접근 차단, 둘 다 정보가 없는 경우에는 default로 허용
- inetd.conf의 실행경로에 TCP Wrapper인 /usr/sbin/tcpd를 명시하면 외부 서비스 요청 시 tcpd를 호출해 hosts.wllow, hosts.deny를 확인해 접근을 통제
- shell_command : hosts.deny에 등록되어 있어 차단된 호스트에게 통보나 경고 메시지를 보내는 용도로 사용(twist.spawn)
- 서비스 : ip or domain 형식으로 되어 있음
이태훈이(가) 3년 이상 전에 변경 · 1 revisions