SERVER

iptables / centOS7 / 방화벽 설정 / 공유기 포트포워딩 세팅

girin_dev 2022. 4. 24. 23:44
728x90
반응형

 

 

원격 개발용 서버에 접속했을 때 갑자기 404가 떠있는 상황이 있다.

 

 

 

위와같이 나온다면 접속은 된다는 이야기.

 

 

순서는 다음과 같다. 

 

1. 서버에 내가 원하는 배포가 잘 이루어졌지만 원격에서 안들어가진다.

 

 

내가 

서버로 쓸 컴퓨터의 공유기 정보를 확인한다. 

 

 

 

 

해당 작업을 할 server의 사양은 centOS 7이다.

 

2. 로컬에서 포트가 접속되는지 확인한다. 

 

$ telnet 127.0.0.1 8080

 

또는 

 

$ ping 192.168.1.1 

열려있네

 

만약 위 과정에서 접속이 안된다면 서버의 포트가 열려있는지 체크한다. 

 

$ netstat -nap | grep 8080 ( port )

 

 

위 과정에서 안열려있다면 서버의 포트를 여는 작업을 해야 한다. 

 

 

현재 서버의 iptables 정보를 체크한다. 

 

 

😒 iptables는 리눅스 상에서 방화벽을 설정하는 도구이다.

커널 2.4 이전 버전에서 사용하던 ipchains를 대신하고있음. 

 

 

커널상에서의 netfilter 패킷필터링 기능을 사용자 공간에서 제어하는 수준으로 사용할 수 있다. 

 

https://linuxstory1.tistory.com/entry/iptables-%EA%B8%B0%EB%B3%B8-%EB%AA%85%EB%A0%B9%EC%96%B4-%EB%B0%8F-%EC%98%B5%EC%85%98-%EB%AA%85%EB%A0%B9%EC%96%B4

 

 패킷 헤더의 출발지 IP / 도착지 IP / checksum / 프로토콜 옵션으로 걸러낸다.

 

 

 * 기본 출력 

$ iptables -L 

 * 상세한 네트워크 정보 모두 출력.

$ iptables -nL

 

 

 

TCP 포트를 연다. 

 

 

* 규칙 삽입  

$ iptables -l INPUT -p tcp -dport 8080 -j ACCEPT 

외부에서 tcp 프로토콜로 포트 8080에 ACCEPT 매칭 ( 접근을 허용) 규칙을 삽입합니다.  

 

 * 그 외 예시.

$ iptables -A INPUT -s 222.111.222.111 -d 192.168.10.10 -p tcp –dport 53 -j ACCEPT

222.111.222.111 출발지 에서 내부 192.168.10.10 목적지 서버의 tcp/53번 포트로의 접근을 허용합니다.

 

 

* 삭제가 필요하다면, 

$ iptables -D INPUT -p –dport 443 -j ACCEPT
INPUT 체인에 내부 모든 서버의 tcp/443을 허용한 정책을 삭제합니다.

 

 

 

열었다면 제대로 열려있는지 체크한다. 

 

$ iptables -nL --line-number

 

 

 

 

외부에서 접속도 잘 되는지 체크한다. 

 

 

나같은 경우 올려둔 서버의 swagger-ui 페이지를 주로 체크한다. 

 

 

 

 

 

320x100
반응형