firewall이란?
방화벽 또는 파이어월(firewall)은 미리 정의된 보안 규칙에 기반한, 들어오고 나가는 네트워크 트래픽을 모니터링하고 제어하는 네트워크 보안 시스템이다. 리눅스에서는 firewall명령어로 설정할 수 있다.
설치 및 서비스 실행
yum install firewalld
systemctl start firewalld
firewalld config 파일 위치 (zone, mark, clean up, lockdown, IPv6_rpfilter, individualcalls, logDenied)
- /etc/firewalld/firewalld.conf
커스터마이징 zone확인
- /etc/firewalld/zones//[zone].xml
public zone확인
- /etc/firewalld/zones/public.xml
방화벽 설정파일 위치확인
which firewalld
사전 정의된 존 목록 출력
firewall-cmd --list-all-zones
서비스 재구동
firewall-cmd --reload
서전 정의된 존 목록 출력
firewall-cmd --get-zones
기본 존 출력
firewall-cmd --get-default-zone
활성화된 존 출력
firewall-cmd --get-active-zone
존삭제
firewall-cmd --permanent --delete-zone=webserver
사전에 정의된 서비스 목록 확인
firewall-cmd --get-services
dmz존에 영구적으로 등록된 서비스 목록 확인
firewall-cmd --permanent --list-all --zone=dmz
서비스 추가
firewall-cmd --permanent --zone=dmz --add-service=http
서비스 삭제
firewall-cmd --permanent --zone=dmz --remove-service=http
포트추가
firewall-cmd --permanent --zone=public --add-port=8080/tcp
firewall-cmd --permanent --zone=public --add-port=4000-4100/tcp
포트 삭제
firewall-cmd --permanent --zone=public --remove-port=8080/tcp
허용IP추가
firewall-cmd --permanent --zone=pbulic --add-source=192.168.1.0/24 --add-port22/tcp
firewall-cmd --reload
rich-rul 설정
- firewall-cmd에서 필요로 하는 옵션을 제공하지 않을 경우 rich rule언어를 사용하여 직접 방화벽 규칙을 설정할 수 있음.
firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="192.168.10.0/24" port protocol="tcp" port="9000" accept"
direct
- --direct 옵션을 사용하면 기존의 iptables 명령처럼 직접 방화벽 내부에 접근해서 설정할 수 있음
firewall-cmd --direct --get-all-rules
firewall-cmd --direct --add-rule ipv4 nat POSTROUTING 0 -o eth_ext -j MASQUERADE
웹서버 방화벽 설정
생성
firewall-cmd --permanent --new-zone=webserver
활성화
firewall-cmd --set-default-zone=webserver
방화벽에 포트 추가
firewall-cmd --permanent --zone=webserver --add-service=http
firewall-cmd --permanent --zone=webserver --add-service=https
정상 설정 여부 확인
firewall-cmd --list-services --zone=webserver
'IT > 리눅스' 카테고리의 다른 글
[명령어] sed (0) | 2020.07.02 |
---|---|
[명령어] echo (0) | 2020.07.02 |
[명령어] grep (0) | 2020.07.02 |
[명령어] 파이프라인(pipe) | (0) | 2020.07.02 |
[명령어] mv (0) | 2020.07.02 |