리눅스에서 포트를 여는 쉬운 단계 렐/센토스 7/8

목차

광고

이 글에서 나는 포트 상태를 확인하고 리눅스에서 포트를 열 예제를 공유합니다. 이 문서는 센 토스 8 을 사용하는 동안 작성되었습니다,그래서 그것은 또한 완전히 센 토스/렐 7/8,페도라,오라클 엔터프라이즈 리눅스와 운영 체제의 일반적으로 전체 레드햇 제품군 아마도 노벨의 슬레스와 오픈 수세를 포함 말할 안전합니다.

리눅스에서 포트를 열기 위해 예제를 살펴보기 전에,우리는 그 요구사항을 명확히 이해해야 한다. 내 마음에 오는 아주 기본적인 질문

  1. 서비스 용 포트를 열 필요가 있습니까? 아파치 서비스에 대한 사용자 정의 포트 5555 와 같은?
  2. 포트가 이미 수신 대기 중이지만 방화벽에 의해 차단되어 방화벽에서 포트를 열려는 것입니까?
  3. 이 포트를 사용하여 파일 전송 및 수신과 같은 사용자 지정 임시 작업에 대한 포트를 연 다음 포트를 닫습니다.

이 기사에서 이러한 모든 시나리오를 다룰 것입니다.

포트 상태 확인

열려 있는 기존 포트 목록을 확인하려면nmap을 사용하여 포트 상태를 확인합니다:

# nmap localhost
Starting Nmap 7.70 ( https://nmap.org ) at 2020-03-22 12:08 IST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000024s latency).
Other addresses for localhost (not scanned): ::1
Not shown: 998 closed ports
PORT STATE SERVICE
22/tcp open ssh
111/tcp open rpcbind
Nmap done: 1 IP address (1 host up) scanned in 1.71 seconds

현재 우리는 내 센터 8 노드에서 두 개의 포트 만 열려 있습니다.

수신 대기 포트 점검 목록

총 포트 수는 엔맵 출력에 비해 더 많습니다.

# netstat -ntlp Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN 1627/dnsmasq tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 26893/sshd tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1/systemd tcp6 0 0 :::22 :::* LISTEN 26893/sshd tcp6 0 0 :::111 :::* LISTEN 1/systemd

일부 서비스에 대한 포트를 엽니 다

이것이 요구 사항 인 경우 잘못된 질문을 찾고 있습니다. 기본적으로 그것은 다른 방법 라운드 즉,서비스가 포트를 열 것입니다. 이 응용 프로그램은 당신에게 아름다운 욕실 꾸미기의 갤러리를 보여줍니다.

광고

우리가 예에서 이것을 관찰하자,우리는 포트 22 가 내 센터 토스 8 노드에 열려 있다는 것을 알고 있습니다. 7772>

# systemctl stop sshd

포트 22 가 더 이상 열려 있지 않은 것을 볼 수 있습니다.

# netstat -ntlp Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN 1627/dnsmasq tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1/systemd tcp6 0 0 :::111 :::* LISTEN 1/systemd

기본 포트를 변경하려면 각 서비스의 구성 파일을 사용해야 합니다. 일단 당신이 서비스를 다시 시작할 수 있습니다 수행하고 자동으로 리눅스 노드에 각각의 포트를 열어야합니다.

힌트:

서비스에 일부 사용자 지정 포트를 사용하려는 경우 해당 포트를 추가해야 합니다/etc/services

이 첫 번째 시나리오를 다룹니다.

파이어 월드 오픈 포트

방화벽에서 포트를 비활성화 할 수도 있습니다. 포트가nmap에 나열되어 있지 않으면 방화벽에 의해 차단될 가능성이 큽니다.

우리는 파이어월드를 사용하여 포트를 열게 될 것인데,이것은 오늘날 렐/센토스 7 과 8 에서 가장 많이 사용되는 인터페이스이기 때문이다. 시스템의 네트워크 인터페이스가 어느 영역에 있는지 확인합니다. 다음 예제에서는 0 과 1 인터페이스가’공용’영역에 있습니다:

# firewall-cmd --get-active-zones
libvirt
interfaces: virbr0
public
interfaces: eth0 eth1

영역에서 열린 포트를 영구적으로 파이어월드하려면--add-port옵션을 사용합니다. 아래 예제에서는’공용’영역에 1234 포트를 영구적으로 엽니다. 영구 변경 사항은 파이어월드 서비스가 다시 로드될 때까지 적용되지 않습니다.

# firewall-cmd --zone=public --add-port=1234/tcp --permanentsuccess# firewall-cmd --reloadsuccess
참고:

비영구적인 변경을 하려면--permanent옵션 집합 없이 동일한 명령을 실행합니다. 영구적이지 않은 변경 사항은 즉시 적용되며 방화벽을 다시 로드할 때까지 유지됩니다.

포트가 열리면 다음 포트 상태를 확인하기 위해 넷 스테이트를 사용하십시오.:

광고

# netstat -ntlpActive Internet connections (only servers)Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program nametcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN 1627/dnsmasqtcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 28188/sshdtcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1/systemdtcp6 0 0 :::22 :::* LISTEN 28188/sshdtcp6 0 0 :::111 :::* LISTEN 1/systemd

우리는 여전히 포트 1234 를 보지 못합니다. 이는 현재 포트 1234 가 어떤 서비스에도 바인딩되지 않기 때문입니다. 그래서 우리의 항구는 열려 있지만 듣지 않습니다. 요청 또는 서비스가 포트 1234 를 사용하려고 시도하자마자 수신 대기 상태가됩니다.이 이론을 검증해봅시다.nc또는ncat를 사용하여 리눅스에서 포트를 엽니다.nc또는ncat --listen--port을 사용하여nc명령을 사용하여 포트를 엽니다. 아래 예에서 우리는 포트를 엽니 다 1234

# nc --listen --source-port 1234

이 서버의 다른 터미널을 열고 포트 상태

# netstat -ntlp | grep 1234tcp 0 0 0.0.0.0:1234 0.0.0.0:* LISTEN 28983/nctcp6 0 0 :::1234 :::* LISTEN 28983/nc

를 확인하십시오. 위의 명령

# nc --listen --source-port 1234 -4

다음으로 다른 터미널에서 포트의 포트 상태를 확인할 수 있습니다 1234

# netstat -ntlp | grep 1234tcp 0 0 0.0.0.0:1234 0.0.0.0:* LISTEN 29329/nc

우리는 또한 다른 호스트로 하나의 호스트에서 파일을 전송하는nc를 사용할 수 있습니다. 여기서”inputfile“를centos-8에서rhel-8로 전송할 것입니다. 화면

# ncat --verbose --listen 9899 > outputfileNcat: Version 7.70 ( https://nmap.org/ncat )Ncat: Listening on :::9899Ncat: Listening on 0.0.0.0:9899Ncat: Connection from 192.168.43.250.Ncat: Connection from 192.168.43.250:40242.

에 대한 자세한 내용을 볼 수 있도록 자세한 내용을 사용할 수 있습니다 다음 전송을 시작,아래 명령을 사용

# ncat --verbose 192.168.43.157 9899 < inputfileNcat: Version 7.70 ( https://nmap.org/ncat )Ncat: Connected to 192.168.43.157:9899.Ncat: 19 bytes sent, 0 bytes received in 0.01 seconds.

당신이 어떤 문제에 직면하면 당신은 당신의 서버와 클라이언트 사이의 방화벽을 확인할 수 있습니다. 각 포트가 차단될 수 있으며

를 사용해야 합니다.

답글 남기기

이메일 주소는 공개되지 않습니다.