Search
Duplicate

TCP Port 개방 확인

문서번호 : 52-285394

Document Information

최초 작성일 : 2022.05.09
최종 수정일 : 2022.05.09

Goal

두 IP의 지정 Port 간 TCP connection 가능 여부를 검증하고, 필요시 firewall 의 port를 개방한다.

Solution

통신을 원하는 <IP/Port> 사이에는 firewall / NAT / Switch / VPC 등 다양한 레이어가 존재한다. 이로인해 OS 설정만으로 두 Port 사이 통신을 장담할 수 없다. configuration 점검이 아닌 실제 접속을 통해 port 접속 가능 여부를 파악할 수 있다.

Linux

nc 명령어를 이용해 특정 port를 listen 하고 다른 곳에서 접속을 시도한다.
Destination (free2)
[opc@free2 ~]$ nc -v -l 7755 Ncat: Version 7.50 ( https://nmap.org/ncat ) Ncat: Listening on :::7755 Ncat: Listening on 0.0.0.0:7755 Ncat: Connection from 10.0.0.110. <-- 실제 접속이 발생하면 출력됨. Ncat: Connection from 10.0.0.110:54450.
Plain Text
복사
Source (free1)
[opc@free1 WebDAV]$ nc -z -v free2 7755 Ncat: Version 7.50 ( https://nmap.org/ncat ) Ncat: Connected to 10.0.0.228:7755. <--- 접속 성공시 Ncat: 0 bytes sent, 0 bytes received in 0.01 seconds.
Plain Text
복사
source에서 target으로 접속 불가할 경우 다음과 같이 출력된다.
[opc@free1 WebDAV]$ nc -z -v free2 7755 Ncat: Version 7.50 ( https://nmap.org/ncat ) Ncat: No route to host. <--- IP 오류 또는 target Firewall 미개방 등... [opc@free1 WebDAV]$ nc -z -v free2 7755 Ncat: Version 7.50 ( https://nmap.org/ncat ) Ncat: Connection refused. <-- target에서 listen하지 않고 있을 경우 [opc@free1 WebDAV]$ nc -z -v free2 7756 Ncat: Version 7.50 ( https://nmap.org/ncat ) Ncat: Connection timed out. <-- VPC/switch security 설정 또는 target의 port 미개방 경우
Plain Text
복사

Windows

windows는 source에서 target을 시험할 때 nc를 대신해 powershell의 test-netconnection (tnc)를 사용한다.
PS C:\Users\tlswo> tnc google.com -port 443 ComputerName : google.com RemoteAddress : 172.217.24.110 RemotePort : 443 InterfaceAlias : Wi-Fi SourceAddress : 192.168.123.123 TcpTestSucceeded : True
Plain Text
복사

Linux - firewalld 지정 포트 허용하기

firewall 관련 설정은 root 계정에서 실행한다.
기본영역이며, 일반적으로 active되어 있는 zone은 public이다. 그렇지만, 검증을 위해 다음 명령으로 public zone이 활성화 되어 있고, 테스트 하고자 하는 port가 포함되어 있는지 확인한다.
[root@free1 ~]# firewall-cmd --get-active-zones public interfaces: ens3 [root@free1 ~]# firewall-cmd --zone=public --list-ports 5959/tcp
Plain Text
복사
public zone이 ens3 device에 설정되어 있으며, 해당 zone에는 5959 TCP port가 개방되어 있다.
포트 추가 개방하기
다음과 같은 절차로 7755/TCP port를 영구 개방한다.
[root@free1 ~]# firewall-cmd --zone=public --add-port=7755/tcp --permanent success [root@free1 ~]# firewall-cmd --reload success [root@free1 ~]# firewall-cmd --zone=public --list-ports 7755/tcp
Plain Text
복사

References

History

일자
작성자
비고
2022/05/09
jnshin
최초작성