[centos] firewalld --direct

2019. 4. 22. 23:14study/centos 7 server & network

firewalld에 대한 전반적인 설명은 다음 글에 설명되어있습니다. 



이번 글에서는 firewalld 설정 중 --direct 옵션에 대해 설명하고자 합니다.


firewalld --direct

: 직접 방화벽 내부에 접근하여 규칙을 적용하기 위해 사용한다.


why?

1. 단순히 서비스를 추가하고 제거할 수 있는 것보다 더 강력한 규칙을 설정하고 싶을 때

2. 특정 호스트나 네트워크에 대한 규칙을 지정하고 싶을 때

3. 그동안 iptables을 사용해왔을 때



1. 형식

firewall-cmd --direct --add-rule [ipv] [table] [chain] [priority] [rule]


* direct 옵션은 [network] iptables 포스팅을 먼저 보고 오시면 더 이해하기 쉽습니다.

또한, table과 chain에 대한 개념도 함께 설명되어 있으니 참고하시길 바랍니다.


1.1 ipv

: ip version을 설정한다.

ex)  ipv4 | ipv6 | eb | etc.



1.2 table

: iptables에는 기본적으로 filter, nat, mangle이 있으며, 이와 같은 table을 지정하는 부분이다.

ex)  filter | nat | mangle | etc.



1.3 chain

: table에 대한 chain을 설정하는 부분이다.

ex)  INPUT | OUTPUT | FORWARD | POSTROUTING | etc.



1.4 priority

: 규칙의 우선순위를 지정한다.

: 더 낮은 값일 수록 우선순위가 높다.

즉, 우선순위가 4인 규칙보다 0인 규칙이 우선순위가 더 높다.



1.5 rule

: iptables에서 규칙을 설정하는 방법과 같다.


iptables ?

[centos] iptables 포스팅에 더 자세히 설명되어 있습니다. 



ex 1) 

 firewall-cmd --direct --add-rule ipv4 filter INPUT 0 -s 10.1.1.0/24 -j ACCEPT

: 10.1.1.0 대역에서 방화벽으로의 패킷을 허용한다.


ex2)

firewall-cmd --direct --add-rule ipv4 filter INPUT 0 -s 10.1.1.0/24  -i ens37 -m state --state NEW,ESTABLISHED -j ACCEPT

: 10.1.1.0 네트워크 대역에서 방화벽 ens37 인터페이스로 들어오는 패킷을 허용한다. 

이때,  state 모듈과 매치되는 연결 상태가 NEW, ESTABLISHED인 패킷을 허용한다.


NEW, ESTABLISHED ?

[network] tcp 연결 상태 포스팅에 더 자세히 설명되어 있습니다.


'study > centos 7 server & network' 카테고리의 다른 글

[centos] firewalld  (0) 2019.04.22
[centos] iptables  (0) 2019.04.15
[centos] 방화벽  (0) 2019.04.11
[centos] ftp  (0) 2019.04.09
[centos] ssh  (0) 2019.04.09