리눅스 관련

centos 리눅스 방화벽 설정

의그 2021. 11. 16. 14:23

http://hwangji.kr/sub/dev_leader/link/os/default.aspx?NHBBSID=NHBoardWebTip&NHBBSIDX=77 

 

[CentOS] 7으로 버전업된 방화벽관리(firewall-cmd)

 

hwangji.kr

 

* 1234 포트 허용 정책 추가

# firewall-cmd --permanent --zone=public --add-port=1234/tcp

# firewall-cmd --permanent --zone=public --add-port=80-90/tcp (포트 대역 오픈)
# firewall-cmd --reload

 

* 설정하고 나면 리로드해야 변경된 상태를 확인할 수 있다.
# firewall-cmd --reload

 

# 방화벽 켜기 : systemctl start firewalld

# 방화벽 끄기 : systemctl stop firewalld

 

# 방화벽 실행 여부 확인 : firewall-cmd --state

 

# 포트 제거 : firewall-cmd --permanent --zone=public --remove-port=80/tcp

# 방화벽 리스트 확인 : ​​firewall-cmd --list-all

 

- 특정 IP에 대한 방화벽 허용

[root@localhost ~]# firewall-cmd --permanent --add-source=192.168.0.100

success

- 특정 IP 대역에 대한 방화벽 허용

[root@localhost ~]# firewall-cmd --permanent --add-source=192.168.0.0/24

success​

- 특정 IP에 대해 특정 Port 접근 허용

[root@localhost ~]# firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address=192.168.0.100 port port="22" protocol="tcp" accept'

- 특정 IP에 대해 특정 Port 접근 허용 제거

[root@localhost ~]# firewall-cmd --permanent --remove-rich-rule='rule family="ipv4" source address=192.168.0.100 port port="8000" protocol="tcp" accept'

- 특정 IP 대역에 대해 특정 Port 접근 허용

[root@localhost ~]# firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address=192.168.0.0/24 port port="8000" protocol="tcp" accept'

- 특정 IP 대역에 대해 특정 Port 접근 허용 제거

[root@localhost ~]# firewall-cmd --permanent --remove-rich-rule='rule family="ipv4" source address=192.168.0.0/24 port port="8000" protocol="tcp" accept'

10. 변경된 firewall 구성 적용

[root@localhost ~]# firewall-cmd --reload

11. 방화벽 리스트 확인

[root@localhost ~]# firewall-cmd --list-all

 

 

zone 설정 관련

# 현재 zone 목록 : firewall-cmd --get-zones

# default zone 확인 : firewall-cmd --get-default-zone

# default zone 변경 : firewall-cmd --set-default-zone=dmz //dmz zone을 기본 zone으로 지정

# 특정 zone에 대한 정보 출력 : firewall-cmd --info-zone=public // public zone에 대한 정보 출력

                                  또는 firewall-cmd --zone=public --list all

# 모든 zone에 대한 정보 출력 : firewall-cmd --list-all-zone

# 현재 활성화된 zone 확인 : firewall-cmd --get-active-zone // 안되나?

# zone에 할당된 인터페이스 변경

* 서버 내 여러개의 NIC마다 다른 zone을 설정할 수 있다. 하나의 zone을 여러 인터페이스에 적용할 수 있지만, 하나의 interface에는 하나의 zone만 설정 가능하다. 이미 zone이 할당된 인터페이스를 다른 zone에 추가하는 경우 오류 발생.

# zone의 기본 정책 설정

* default, ACCEPT, REJECT, DROP 중에서 설정 가능

* default는 reject와 유사하게 동작하나(기본적으로 all포트 차단) 일부 패킷처리에 있어서 차이가 있음.

firewall-cmd --permanent --zone=internal --get-target // internal zone의 기본 정책 확인.

firewall-cmd --permanent --zone=internal --set-target=DROP // internal zone의 기본정책을 DROP으로 설정.

'리눅스 관련' 카테고리의 다른 글

윈도우/리눅스 시간 동기화(NTP) 설정 방법  (0) 2021.11.16