본문으로 바로가기

iptables port 열기

category [ 서버 & DB 관련 ]/리눅스 2020. 9. 23. 12:55

전체 포트 확인

# netstat -nap

 

LISTEN 상태의 포트확인 

# netstat -nap | grep LISTEN

 

특정 포트 확인 

# netstat -nap | grep 포트번호

 

 

* 외부 -> 내부 (Inbound) TCP 포트 8081 1 방확벽 규칙으로 추가 

# iptables -I INPUT 1 -p tcp --dport 8081 -j ACCEPT

* 내부 -> 외부 (Outbound) TCP 포트 8081 1 방확벽 규칙으로 추가 

# iptables -I OUTPUT 1 -p tcp --sport 8081 -j ACCEPT

 

저장

# service iptables save

or 

# /usr/libexec/iptables/iptables.init save

 

 

 

 

 

* 규칙번호로 삭제 

# iptables -D INPUT 1 

 

* 추가한 규칙으로 삭제 

# iptables -D INPUT -p tcp --dport 8081 -j ACCEPT 

# iptables -D OUTPUT -p tcp --sport 8081 -j ACCEPT

 

 

옵션 1

-A (--append) : 새로운 규칙을 추가.

-D (--delete) : 규칙을 삭제.

-C (--check) : 패킷을 테스트.

-R (--replace) : 새로운 규칙으로 교체.

-I (--insert) : 새로운 규칙을 삽입.

-L (--list) : 규칙을 출력.

-F (--flush) : chain으로부터 규칙을 모두 삭제.

-Z (--zero) : 모든 chain의 패킷과 바이트 카운터 값을 0으로 만듬.

-N (--new) : 새로운 chain을 만듬.

-X (--delete-chain) : chain을 삭제.

-P (--policy) : 기본정책을 변경.

 

옵션 2

-p 프로토콜 타입 지정

-s 출발지 어드레스

-d 목적지 어드레스

-sport 출발지 포트 지정

-dport 목적지 포트 지정

-i 네트워크 인터페이스 지정

-j 타겟에 대한 규칙을 지정 (ACCEPT : 수용 / REJECT : 거부)

 

 

 

=============================================================

 

firewall 사용 할 경우

 

* 포트 상태 확인

# iptables -nL

 

포트 열기

# firewall-cmd --permanent --zone=public --add-port=포트/tcp 

# firewall-cmd --reload

 

포트 닫기

# firewall-cmd --permanent --zone=public --remove-port=포트/tcp

# firewall-cmd --reload

 

* firewall 파일 위치 (수동으로 적용할 경우)

/etc/firewalld/zones/public.xml

 

 

=============================================================

 

 

telnet을 이용해 외부 서버의 포트 상태 확인

# telnet [서버 주소] [포트]

 

telnet 설치 안되어있을 경우는 설치 필요

 

# telnet localhost 80

-bash: telnet: command not found

 

* yum으로 telnet client 설치

- 설치 패키지 정보 확인

# yum info telnet

 

- telnet 설치 (root 계정으로 설치)

# yum install telnet