출처: http://webdir.tistory.com/170


기본 설정된 상태의 CentOS에서 실제로 웹서비스를 하기 위해서는 

iptables의 설정 변경을 통해 외부 접속을 위한 포트를 설정해주어야 한다.


기본 httpd 사용을 위한 80번 포트 개방과 

node.js 실습을 위한 8080번 포트를  개방 해주기 위해서

/etc/sysconfig/iptables 를 열어서 아래와 같이 입력한다.


-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT

-A OUTPUT -p tcp -m tcp --dport 80 -j ACCEPT

-A INPUT -p tcp -m tcp --dport 8080 -j ACCEPT 

-A OUTPUT -p tcp -m tcp --dport 8080 -j ACCEPT 

-A INPUT -j REJECT --reject-with icmp-host-prohibited


이 때 주의해야 할 것은 위의 4개 코드가 빨간 색의 코드보다 반드시 위에 적혀 있어야 한다.

Because,

iptables 규칙을 만들 때는 순서가 매우 중요하다.
예를 들어 만일 chain에서 로컬 192.168.100.0/24 서브넷에서 들어오는 모든 패킷을 drop하도록 지정한 후 (drop 하도록 지정된 서브넷에 포함되는) 192.168.100.13에서 들어오는 패킷을 모드 허용하는 chain (-A)을 그 후에 추가하면 뒤에 추가된 추가 규칙이 무시된다.
먼저 192.168.100.13를 허용하는 규칙을 설정한 후 서브넷을 drop하는 규칙을 설정해야한다.


이후에 

> service iptables restart

명령어를 실행해주면 2개의 포트가 열러서 정상적으로 외부접속이 가능해지는 것을 확인할 수 있다.



'프로그래밍 > LINUX' 카테고리의 다른 글

서버에서 한글이 깨질 때  (0) 2013.11.18
2개의 파일 column 합치기  (0) 2013.11.06
.bash_profile 설정 변경 후 bash reload  (0) 2013.07.29
C++ 파일과 mysql++을 이용한 컴파일  (0) 2012.09.14
mysql++ 설치하기  (0) 2012.09.14
Posted by halloRa
,