레드헷 계열의 Linux에서 방화벽을 설정하는 것과 데비안 계열에서 방화벽을 설정하는 방법은 조금 차이가 있다.
우선 레드헷 계열에서 방화벽을 설정하는 방법에 대해 알아보자.
참고로 setup이나 직접적인 설정은 관리자 계정 혹은 권한이 있어야 가능하다. 참고.
1) 설정방법
/etc/sysconfig/iptables 를 보게 되면 아래와 같은 내용들이 있다.
------------------------------------------------------------------------------------------
# Firewall configuration written by system-config-securitylevel
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Firewall-1-INPUT - [0:0]
-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -p 50 -j ACCEPT
-A RH-Firewall-1-INPUT -p 51 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 23 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 25 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 137 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 138 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 1414 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
COMMIT
------------------------------------------------------------------------------------------
뭔가 복잡해 보이지만 사용법은 의외로 간단하다.
알아놓을 것은 INPUT/OUPUT 을 조정할 수 있으며 ACCEPT/REJECT를 조정할 수 있다는 것이다.
방화벽에서 열고자 하는 특정 포트가 있다면 아래 한줄을 복사한 뒤 포트 번호만 바꿔서 추가해주면 되겠다. 나머지는 설정임.
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport
포트번호 -j ACCEPT
만약에 15000번 포트를 열고 싶다면
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport
15000 -j ACCEPT
이라고 추가한 뒤 :wq 치고 나오면 되겠다.
2) 방화벽 start/stop/restart
설정한 방화벽내용을 적용하여 구동하기 위해서는 방화벽을 다시 시작해야 한다.
RedHat 계열에서는 /etc/init.d/iptables 에 구동 쉘파일이 있다.
$] iptables restart
를 해주게 되면 위에서 설정한 포트를 열고 재시작을 하게 된다. (자세한 사용법은 직접 파일을 열고 쉘을 보시면 되겠다)
사용법: ./iptables {start|stop|restart|condrestart|status|panic|save}
아래 중에 한가지 옵션을 사용하도록.
또 다른 방법은 명령 프롬프트 창에서 setup 이라고 치면 아래와 같은 설정 화면이 나온다.
저곳에서 방화벽 설정 메뉴에 들어가 방화벽 해제를 하고 다시 시작할 수 있다. 전체적인 방화벽 해제나 설정시 해당 방법을 이용하자.