Linux에서 열린 포트를 보는 방법.

용도 프로그램  (또는 무엇 프로그램  용도 항구)는 일반적으로 트로이 프로그램에 의한 감염 혐의의 경우에 발생합니다. 의심스러운 것을 발견하면 그것을여십시오. 명령 행: "시작"- "모든 프로그램"- "표준"- "명령 행".

명령 프롬프트에서 tasklist를 입력하고 Enter 키를 누릅니다. 시스템에서 실행중인 모든 프로세스에 대한 정보를 얻을 수 있습니다. 프로세스 ID 인 PID에주의하십시오. 어떤 결정을 내리는 데 도움이 될 것입니다. 프로그램  특정 포트를 사용합니다.

명령 프롬프트에서 netstat -aon을 입력하고 Enter 키를 누릅니다. 현재 연결 목록이 표시됩니다. 칼럼에서 " 지역 주소"포트 x 호는 각 행의 끝에 지정됩니다. PID 열은 프로세스 ID를 식별합니다. 포트 번호와 해당 PID를 확인한 후 프로세스 목록으로 이동하여 포트가 ID 번호를 사용하는 프로세스를 결정합니다.

어떤 프로그램이 속한 프로세스의 이름으로 알 수없는 경우이 경우 적절한 프로그램 중 하나를 사용하십시오. 예를 들어, Everrest 프로그램은 Aida64입니다. 프로그램을 실행하고 " 운영 체제","프로세스 "를 선택하십시오. 프로세스 목록에서 필요한 것을 찾아 실행을위한 행을 봅니다. 이는 프로세스가 속한 프로그램을 판별하는 데 도움이됩니다.

같은 목적으로 프로그램 AnVir 작업 관리자를 사용하십시오. 이 도구를 사용하면 인터넷에 연결된 프로그램의 프로세스를 비롯하여 모든 의심스러운 프로세스를 모니터링 할 수 있습니다. 의심스러운 프로세스는 모두 빨간색으로 프로그램 목록에서 강조 표시됩니다.

알 수없는 프로그램에서 포트를 사용하는 것으로 확인되면 "외부 주소"열 (netstat -aon 명령)에 현재 연결이있는 경우 연결이 설정된 컴퓨터의 IP 주소가 표시됩니다. "Status"열에는 ESTABLISHED 값이 있습니다 - 연결이 현재 존재하는 경우; 연결이 닫힌 경우 CLOSE_WAIT. 듣기, if 프로그램  연결을 기다리는 중입니다. 후자는 트로이 목마 프로그램 유형 중 하나 인 백도어에서 일반적입니다.

소프트웨어 포트는 1에서 65535 사이의 조건부 번호로 데이터 패킷이 어느 응용 프로그램에 보내지는지 나타냅니다. 프로그램과 함께 작동하는 포트를 개방이라고합니다. 현재 모든 포트가 하나의 프로그램에서만 작동 할 수 있음을 명심해야합니다.

포트가 열린 경우 이는 프로그램 (예 : 서비스)이이를 사용하여 인터넷을 통해 다른 프로그램과 통신하거나 로컬 시스템. Linux 시스템에서 열려있는 포트를 보려면 netstat 명령을 사용할 수 있습니다. 출력에는 모든 서비스와 수신 대기 포트 및 IP 주소가 표시됩니다.

sudo netstat -ntulp 활성 인터넷 연결 (서버 만 해당)
  Proto Recv-Q Send-Q 로컬 주소 외부 주소 상태 PID / 프로그램 이름
  tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 2392 / smbd
  tcp 0 0 0.0.0.0:9518 0.0.0.0:* LISTEN 2894 / skype
  tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 2896 / vlc
  tcp 0 0 127.0.0.1:3493 0.0.0.0:* LISTEN 2467 / upsd
...

  • -l 또는 -listening - 청취 가능한 포트만보기
  • -p 또는 -program - 프로그램 이름과 해당 PID를 표시합니다.
  • -t 또는 -tcp show tcp ports
  • -u 또는 -udp show udp ports
  • -n 또는 -numeric 숫자 형식의 IP 주소 표시

방법 2 lsof

lsof 유틸리티를 사용하면 i 옵션을 사용하여 네트워크 연결을 포함하여 시스템에서 열려있는 모든 연결을 볼 수 있습니다.

dhcpcd 2136 루트 6u IPv4 4986 0t0 UDP * : bootpc
  hamachid 2323 root 8u IPv4 5587 0t0 TCP 192.168.1.2:35445-\u003e 212.118.234.65:https (ESTABLISHED)
  smbd 2392 루트 27u IPv6 5624 0t0 TCP * : microsoft-ds (LISTEN)
  sshd 2421 루트 3u IPv4 6196 0t0 TCP * : ssh (LISTEN)
  upsd 2467 너트 4u IPv4 6235 0t0 TCP comm-app.local : 너트 (LISTEN)

또 다른 예는 어떤 프로세스가 포트 80에서 작동하는지 확인하십시오.

sudo lsof -i | grep 80

ntpd 2213 루트 23u IPv6 5422 0t0 UDP : ntp
  ntpd 2213 루트 27u IPv6 5598 0t0 UDP : ntp
skype 2894 serigy 87u IPv4 7080 0t0 TCP * : 9518 (듣기)
  IPv4의 122U 크롬 3114 세르지 31904 0t0 TCP 192.168.1.2:47804-\u003esrv118-131-240-87.vk.com:https (설립)

방법 3 nmap

Nmap은 원격 사이트를 스캐닝하고 연결하는 강력한 네트워크 스캐너이지만 로컬 컴퓨터로 전송하는 데 방해가되는 요소는 없습니다.

Starting Nmap 6.47 (http://nmap.org) at 2015-08-02 17:27 EEST
  로컬 호스트에 대한 Nmap 스캔 보고서 (127.0.0.1)
  호스트가 작동 중입니다 (대기 시간 0.00036 초).
  localhost의 다른 주소 (스캔되지 않음) : 127.0.0.1 127.0.0.1 127.0.0.1 127.0.0.1 127.0.0.1 127.0.0.1
  127.0.0.1에 대한 rDNS 레코드 : comm-app.local
  표시되지 않음 : 995 개의 닫힌 포트
  주정부 서비스
  22 / tcp open ssh
  139 / tcp netbios-ssn 열기
  445 / tcp open microsoft-ds
  3493 / tcp 개방 너트
  8080 / tcp는 HTTP 프록시를 엽니 다.

Nmap 완료 : 1 초 IP 주소 (1 호스트 최대)가 0.10 초 안에 스캔 됨

컴퓨터에서 외부에서 액세스 할 수있는 포트를 보려면 Nmap도 유용합니다. 컴퓨터가 공용 서버 인 경우 결과는 로컬 검색과 다를 가능성이 없지만 가정용 컴퓨터에서는 모든 것이 약간 다릅니다. 첫 번째 옵션은 라우터를 사용하는 것이며 라우터의 포트만 네트워크에 표시되며 다른 NAT는 공급자의 NAT 서버가 될 수 있습니다. NAT 기술을 사용하면 여러 사용자가 하나의 외부 IP 주소를 사용할 수 있습니다. 오픈 된 외부 포트를 보려면 처음에는 외부 IP 주소를 알아야합니다. 안정성을 위해 온라인 서비스를 사용합니다.

nmap 178.93.149.50

결과적으로 우리는 열린 항구  우리가 설치하지 않은 80 ​​개의 웹 서버 또는 심지어 21 개의 파일 서버,이 포트는 라우터에 의해 열리고, 80은 웹 인터페이스 용이고, 21은 펌웨어를 업데이트하는 데 사용할 수 있습니다. 결과를 전혀 얻을 수 없으면 모든 포트가 닫혔거나 IDS 침입 방지 시스템이 서버에 설치되어 있음을 의미합니다.

컴퓨터 포트는 작업의 원칙에 따라 개발 된 물 운송 인프라가있는 도시에서 볼 수있는 일반 포트와 매우 유사합니다.

이 두 단어가 동음 이의어라는 것은 놀랄 일이 아닙니다.

법원에 의해 유용한 또는 위험한 제품 (여기 모든 일이)와 - 이러한 관점에서, 컴퓨터가 인터넷에 액세스 할 수 포트, 프로그램의 다양한 도시에 불과, 또는 더 나은 국가를 보인다.

컴퓨터와 사실의 명시 적 목적뿐만 아니라 해변에서 장소로 포트의 포트 크기가 허용 할 경우 법원은, 다른 포트를 포함 할 수 있지만이 프로그램은 특정 포트에 연결합니다.



예를 들어 많은 브라우저는 포트 번호 80을 사용하지만 두 개의 포트를 사용할 수 있습니다. 즉, 메일 전송에 25, 수신에 110을 사용합니다.

따라서 사용자가 어떤 포트가 어떤 프로그램을 사용하고 있는지 알아야하는 경우가 있습니다. 그리고 이것을 배우는 것은 아주 쉽습니다. 이러한 목적을 위해 유형의 특수 유틸리티를 사용할 수 있습니다 TCPView  또는 가장 일반적인 명령 행. 관리자로 콘솔을 시작하고 다음 명령을 실행하십시오.
netstat /?





그러면 명령에 대한 간단한 설명과 사용 가능한 옵션 목록이 열립니다. 예를 들어, netstat 사용  열쇠가있는 -a  모든 연결 및 수신 대기 포트 목록을 표시합니다. -o  각 프로세스의 ID에 대한 액세스 권한을 열 것이며 -b 스위치는 실제로 필요한 연결 만들기에 관련된 실행 파일을 표시합니다. 주소와 포트 번호를 보려면 키를 사용할 수도 있습니다 -N.

따라서 명령을 실행하십시오. netstat -a -n -o그리고 무슨 일이 일어 났는지보십시오. 우리는 프로토콜, 로컬 및 외부 주소, 상태 및 식별자를 사용하여 활성 연결 목록을 얻었습니다. 예를 들어 어떤 파일이 ID 2248에 속해 있는지 어떻게 알 수 있습니까? 명령을 확장하여 키를 추가 할 수 있습니다 -b  다른 명령을 즉시 실행 작업 목록 | "2248"을 찾으십시오.. 그렇게 간단합니다.

컴퓨터 포트 란 무엇입니까? 운영 원칙에 따르면 컴퓨터 포트는 물과 운송 인프라가있는 대부분의 도시에있는 실제 포트와 비슷합니다. 이 관점에서 본 컴퓨터는 많은 항구가있는 도시와 비교 될 수 있습니다. 소프트웨어  - 배송 또는화물 (때로는 위험). 물과 직접 매우 목적을 제외하고 컴퓨터 포트의 차이, 배송, 크기를 허용, 다른 포트에 포함될 수 있다는 사실, 그리고 프로그램으로 - 그냥 포트에 연결하고 특정는.

받을 수 - 110 번째, 이메일을 보낼 - 예를 들어, 브라우저는 전자 메일 클라이언트가 동시에 두 포트에 연결 할 수있는 반면 항상, 25가, 80 m 번호의 포트를 사용하는 경향이있다.

어떤 포트가 사용 중인지와 어떤 프로그램인지를 독립적으로 확인할 수 있습니다. 쉽습니다. 에서 윈도우  이를 위해 TCPView와 같은 특수 소프트웨어 나 시스템의 내장 기능 (모든 강력한 명령 행)을 사용할 수 있습니다. 후자의 경우 관리자 권한으로 콘솔을 시작하고 창에 다음 명령을 입력해야합니다.

netstat /?

그러면 명령에 대한 일반적인 설명과 사용 가능한 매개 변수 목록이 표시됩니다. 그래서, 모든 연결의 이름 목록을 열 것입니다, 키 -a 보충 netstat 명령을 사용, -o 키가 각 프로세스의 식별자에 대한 액세스를 제공합니다, -b 스위치는 사실, 우리의 작업이 무엇인지 연결 조직에 포함 된 실행 파일을 표시합니다. 또한 포트 번호와 주소를 보려면 netstat -N을 입력 할 수 있습니다. 포트에 대해 자세히 알아야 할 경우 키를 결합 할 수 있습니다.



예를 들어 활성 연결, 소스, 로컬 및 외부 주소, ID 및 상태 목록을 보려면 netstat -a -n -o를 입력해야합니다. ID 2248과 같이 어떤 파일이 속해 있는지 알아 내려면 -b 스위치를 추가하여 입력 명령을 확장하면됩니다. 또는 다른 명령을 사용할 수도 있습니다.

작업 목록 | "2248"을 찾으십시오.

그게 다야. 이제 Windows에서 어떤 포트가 사용중인 응용 프로그램인지 찾는 방법을 알았습니다.

관련 기사 :