반응형

 

RHEL (Red Hat Enteprise Linux) 7 부터 방화벽 관리는 firewalld로 변경되었고

iptables 명령어 대신 firewall-cmd(콘솔), firewall-config(X-Windows) 명령어를 권장합니다.

 

 

설치

 

firewalld 설치

 

$ yum update
$ yum install firewalld

 

 

firewalld 서비스

 

firewalld 서비스 시작 중지

 

-- firewalld 서비스 시작
$ systemctl start firewalld

-- firewalld 서비스 중지
$ systemctl start firewalld

-- firewalld 영구 시작
$ systemctl enable firewalld

-- firewalld 영구 중지
$ systemctl disable fireewalld

 

 

firewalld 서비스 재구동

 

$ firewalld-cmd --reload

 

 

서비스 목록

 

▼ 사전에 정의된 서비스의 목록은 --get-services로 확인

$ firewall-cmd --get-services

 

 

permanent로 등록된 서비스 목록

 

▼ 영구적으로 등록된 서비스 목록 확인

$ firewall-cmd --permanent --list-all

 

 

서비스 추가 / 삭제

 

-- 서비스 추가 : -add-service=SERVICE_NAME

$ firewall-cmd --permanent --zone=dmz --add-service=http

-- 서비스 삭제 : -remove-service=SERVICE_NAME

$ firewall-cmd --permanent --zone=dmz --remove-service=http

 

 

 

 

 

포트 설정

 

 

포트 추가 / 삭제

 

▼ 포트 추가 : --add-port=<portid>[-<portid>]/<protocol> 옵션 사용

$ firewall-cmd --permanent --zone=public --add-port=8080/tcp

-- 포트를 범위로 지정하여 추가
$ firewall-cmd --permanent --zone=public --add-port=8000-9000/tcp

-- 서비스 재기동
$ firewall-cmd --reload

 

▼ 포트 삭제 : --remove-port=[-]/ 옵션 사용--add-port=[-]/ 옵션 사용

$ firewall-cmd --permanent --zone=public --remove-port=8080/tcp

 

 

허용 IP 추가

 

▼ --add-source=<source range>/netmask 옵션을 사용하여 IP 추가

-- 192.168.1. 대역에서 ssh 접근 허용
$ firewall-cmd --permanent --zone=public --add-source=192.168.1.0/24 --add-port=22/tcp

-- 서비스 재기동
$ firewall-cmd --reload

 

 

서비스 설정

 

웹 서버 방화벽 설정

 

-- 새로운 zone 생성
$ 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

-- firewalld 재시작
$ firewall-cmd --reload

-- 정상 여부 확인
$ firewall-cmd --list-services   --zone=webserver
$ dhcpv6-client http https ssh

 

 

apache 웹서버 설정

 

-- 서비스 활성화
$ systemctl enable httpd

-- 서비스 시작
$ systemctl start httpd

 

 

nginx 설정

 

-- 기존에 아파치 httpd 가 설치되어 있으면 비활성화
$ systemctl stop httpd
$ systemctl disable httpd

-- 서비스 활성화
$ systemctl enable nginx.service

-- 서비스 시작
$ systemctl start nginx.service
반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기