Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Warning

포트 추가/변경, IP 추가/변경은 --reload 옵션으로 firewalld 를 재실행해야 반영됩니다.


특정 source IP 에 대해 포트 접근 허용



특정 IP(예: 1.2.3.4) 만 특정 포트(9090)에 접근 가능하도록 하기 위해 아래와 같은 명령어를 생각할 수 있습니다.


Code Block
$ firewall-cmd --permanent --zone=dmz --add-source=1.2.3.4/32 --add-port=9090/tcp

하지만 위 명령어를 실행하면 다음과 같은 에러가 발생합니다.

Code Block
firewall-cmd: error: argument --add-port: not allowed with argument --add-source

firewall-cmd 로는 source ip 와 port 를 동시에 지정할 수 없으며 이럴 경우 아래에 설명할 rich rule 를 사용해야 합니다.


인터페이스 변경 및 ssh 서비스 추가

이제 웹 서버 존은 eth0 이더넷을 사용하도록 설정하고 eth1 이더넷은 내부 망에서 ssh로 연결 가능하도록 dmz 존으로 만들기 위해 각 존이 사용하는 NIC를 --change-interface 옵션으로 변경해 봅시다.

...

예제에서는 --zone=dmz 명령으로 적용할 zone 을 지정했지만 하나의 zone 만 있다면 지정할 필요가 없으며 --permanent 옵션을 제외해서 즉시 반영되지만 방화벽 정책 재구동이나 시스템 재부팅시 정책이 유지되지 않으므로 지속해야 할 정책이라면 --permanent 옵션을 주어서 정책을 만들고 --reload 옵션으로 정책을 지속적으로 반영하는 것이 필요합니다.


특정 Source IP 만 특정 Port 접근 허용


source ip 가 1.2.3.4 일 경우 9090 포트에 대해 접속을 허용합니다.

Code Block
firewall-cmd --permanent --zone=dmz --add-rich-rule='rule family="ipv4" source address="1.2.3.4/32" port protocol="tcp" port="9090" accept'



IPSec 의 ah 프로토콜 허용

IPSec 의 authentication 헤더를 허용하며 family 를 지정하지 않았으므로 ipv4, ipv6 모두 허용됩니다.

...