자격증/리눅스마스터

리눅스마스터 1급 2차 - 2102회 기출문제 풀이 (15/16)

로이제로 2023. 11. 20. 22:00
반응형

15. iptables 기반으로 하나의 공인 IP 주소를 공유해서 다수의 컴퓨터를 사용하는 환경을 구축하려고 한다. 조건에 맞게 ( 괄호 ) 안에 알맞은 내용을 적으시오.

# iptables -t ①                  -A ②                  ③                  eth0 -j                   --to 200.100.50.10

 

◼︎ 조건

- 해당 시스템에는 이더넷 카드가 두 개가 장착되어 있는데, 외부망과 연결된 첫 번째 이더넷 카드의 공인 IP 주소는 200.100.50.10이다.


더보기

 

번호 정답
nat
POSTROUTING
-o
SNAT

 

  iptables

 방화벽 관리 도구로 네트워크 트래픽을 필터링하고 제어할 수 있습니다. iptables는 네트워크 보안을 강화하고 네트워크 서비스에 대한 액세스를 제한하는 데 사용됩니다.

 iptables는 규칙 기반 방화벽 시스템으로 작동합니다. 이 규칙은 패킷의 소스, 대상, 포트 번호, 프로토콜 유형과 같은 속성을 기반으로 트래픽을 분류하고 처리 방법을 결정합니다. 예를 들어, 특정 IP 주소에서 오는 트래픽을 차단하거나 특정 포트 번호로 들어오는 트래픽을 허용하는 등의 작업을 수행할 수 있습니다.

IPTABLES Chains

 

NAT (Network Address Translation)

 네트워크 주소 변환 서비스

  • SNAT(Source NAT) : 내부 사설IP에서 외부로 나갈 때 공인IP로 변환
  • DNAT(Destination NAT) : 외부에서 방화벽(외부IP)으로 요청되는 주소로 내부 사설 IP로 변환

 

iptables

iptables --help 결과
기본 명령어
내용
-A --append 새로운 정책을 마지막에 추가합니다.
-C --check 패킷을 테스트합니다.
-D --delete 기존 정책을 삭제합니다.
-I --insert 새로운 정책을 특정 번호로 지정합니다.
(지정되지 않은 경우 맨 처음에 추가됩니다.)
-R --replace 새로운 규칙으로 교체합니다.
-L --list 적용되어 있는 정책 목록을 출력합니다.
-F --flush 적용된 모든 정책을 삭제합니다.
-N --new 새로운 사용자 정의 체인을 생성합니다.
-X --delete-chain 사용자 정의 체인을 삭제합니다.
-P --policy 대상의 체인의 기본 정책을 설정합니다.
ACCEPT, DROP, REJECT 등의 정책을 설정 할 수 있습니다.

 

제어 옵션 명령어 내용
-p --protocol 프로토콜을 지정합니다.
tcp, udp, icmp 등의 프로토콜을 지정할 수 있습니다.
-s --source 특정 IP 주소 또는 네트워크 범위의 소스를 지정합니다.
-d --destination 특정 IP 주소 또는 네트워크 범위의 목록지를 지정합니다.
-i --in-interface 패킷이 들어오는 네트워크 인터페이스 (inbound interface)
-j --jump 방화벽을 지난 후 패킷의 상태 제어
-o --out-interface 패킷이 나가는 네트워크 인터페이스 (outbound interface)

 

사용 예시

▶︎ 적용시킨 정책 목록을 출력합니다.

$> iptables -L
iptables -L 결과

 

▶︎ 현재 iptables 규칙을 초기화합니다.

$> iptables -F

 

▶︎ 192.168.100.150에서 오는 모든 패킷을 차단합니다.

$> iptables -A INPUT -s 192.168.100.150 -j DROP

 

▶︎ TCP 프로토콜 패킷을 모두 허용합니다.

$> iptables -A INPUT -p TCP -j ACCEPT

 

▶︎ 20~30번 포트로 가는 모든 패킷을 허용합니다.

$> iptables -A INPUT -p TCP --dport 20:30 -j ACCEPT

 

▶︎ 80번 포트로 1초에 10번 이상 SYN이 들어오면 응답하지 않도록 합니다.

$> iptables -A INPUT -p TCP --dport 80 -m recent --update --seconds 1 --hitcount 10 --name HTTP -j DROP

 

▶︎ 수신지 포트 번호가 1000보다 작은 모든 포트 번호의 TCP 프로토콜의 경우 차단합니다.

$> iptables -A INPUT -p TCP --dport :1000 -j DROP

 

반응형