Netcat은 NC의 약자로 네트워크 업계의 Swiss Army Knife로 알려진 강력한 네트워크 도구입니다. 실제로 Linux 시스템의 명령은 ncat입니다. nc 명령은 ncat에 대한 소프트 링크일 뿐입니다. nc 명령의 주요 기능은 다음과 같습니다:
모든 TCP/UDP 포트 수신을 실현합니다. nc는 TCP 또는 UDP 모드에서 지정된 포트의 스캔을 수신하는 서버로 사용할 수 있습니다. 머신 간 파일 전송을 위해 TCP 또는 UDP 연결을 시작하는 클라이언트. 머신 간 네트워크 속도 테스트
nc nc 명령을 찾을 수 없으면 yum install -y nc를 사용하여 centos6 시스템을 설치할 수 있습니다. 24.el6.x86_64, centos7 시스템은 nmap-ncat-6.40-19를 설치합니다.
172.16.7.78 서버의 포트 80이 열려 있고 포트 81이 열려 있는지 확인합니다.
먼저 파일 수신 터미널 test2 머신에서 nc 모니터링을 활성화합니다.
그런 다음 파일 전송 터미널 test1 머신에서 파일을 보냅니다.
파일이 복사되었는지 확인합니다. test2 수신 성공
test1 호스트에서 NC 모니터링을 시작하고 Ctrl+C를 누르면 통신이 중단됩니다.
테스트2에서 모니터에 연결하고 Ctrl+C를 누르면 통신이 중단됩니다.
포트 스캔, 연결된 포트는 성공하고, 차단된 포트는 거부됩니다. 이 스캔은 nc-1.84-24.el6.x86_64를 기반으로 합니다.
[root@test1 /]# nc -v -w 1 172.16.7.78 -z 22-81
172.16.7.78 22 포트 [tcp/ssh]에 연결 성공!
nc: 172.16.7.78 포트 23(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 24(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 25(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 26(tcp)에 연결 ) 실패: 연결 거부
nc: 172.16.7.78 포트 27(tcp)에 연결 실패: 연결 거부
nc: 172.16.7.78 포트 28(tcp)에 연결 실패: 연결 거부
nc: 172.16.7.78 포트 29에 연결( tcp) 실패: 연결 거부됨
nc: 172.16.7.78 포트 30(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 31(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 32에 연결 (tcp) 실패: 연결 거부됨
nc: 172.16.7.78 포트 33에 연결(tcp) 실패: 연결 거부됨
nc: 172.16.7.78 포트 34에 연결(tcp) 실패: 연결 거부됨
nc: 172.16.7.78 포트에 연결 35(tcp) 실패: 연결 거부됨
nc: 172.16.7.78 포트 36(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 37(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78에 연결 포트 38(tcp) 실패: 연결 거부됨
nc: 172.16.7.78 포트 39(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 40(tcp)에 연결 실패: 연결 거부됨
nc: 172.16에 연결. 7.78 포트 41(tcp) 실패: 연결 거부됨
nc: 172.16.7.78 포트 42(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 43(tcp)에 연결 실패: 연결 거부됨
nc: 172.16에 연결 .7.78 포트 44(tcp) 실패: 연결 거부됨
nc: 172.16.7.78 포트 45(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 46(tcp)에 연결 실패: 연결 거부됨
nc: 연결 대상 172.16.7.78 포트 47(tcp) 실패: 연결 거부됨
nc: 172.16.7.78 포트 48(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 49(tcp)에 연결 실패: 연결 거부됨
nc: 연결 172.16.7.78 포트 50(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 51(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 52(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 53(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 54(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 55(tcp)에 연결 실패: 연결 거부됨
nc : 172.16.7.78 포트 56(tcp)에 연결 실패: 연결 거부
nc: 172.16.7.78 포트 57(tcp)에 연결 실패: 연결 거부
nc: 172.16.7.78 포트 58(tcp)에 연결 실패: 연결 거부
nc: 172.16.7.78 포트 59(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 60(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 61(tcp)에 연결 실패: 연결이 거부됨
nc: 172.16.7.78 포트 62(tcp)에 연결 실패: 연결 거부
nc: 172.16.7.78 포트 63(tcp)에 연결 실패: 연결 거부
nc: 172.16.7.78 포트 64(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 65(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 66(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 67(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 68(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 69(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 70(tcp)에 연결 실패 : 연결이 거부되었습니다
nc: 172.16.7.78 포트 71(tcp)에 연결 실패: 연결이 거부되었습니다
nc: 172.16.7.78 포트 72(tcp)에 연결 실패: 연결이 거부되었습니다
nc: 172.16.7.78 포트 73(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 74(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 75(tcp)에 연결 실패: 연결 거부됨
nc: 172.16.7.78 포트 76(tcp)에 연결 ) 실패: 연결 거부
nc: 172.16.7.78 포트 77(tcp)에 연결 실패: 연결 거부
nc: 172.16.7.78 포트 78(tcp)에 연결 실패: 연결 거부
nc: 172.16.7.78 포트 79에 연결( tcp) 실패: 연결 거부
172.16.7.78 80 포트 [tcp/http] 연결 성공!
nc: 172.16.7.78 포트 81(tcp) 연결 실패: 연결 거부
[ root@test1 ~]# nc -uvz 192.168.0.125 111
Ncat: 버전 7.50 ( https://nmap.org/ncat )
Ncat: 192.168.0.125:111.
Ncat: UDP 패킷 전송 성공
Ncat: 2.04초 만에 1바이트 전송, 0바이트 수신.
네트워크 속도 측정은 dstat 명령으로 확인해야 합니다.
dstat 명령 설치
[root@test1 ~]# yum install -y dstat
[root@test2 ~]# yum install -y dstat
test1 호스트의 포트 수신 대기
[root@test1 ~]# nc -l 33333 > ;/dev/null
test2 호스트가 데이터를 보냅니다. 모두 0개의 데이터입니다
[root@test2 ~]# nc 192.168.0.124 33333 /zero
트래픽 보기
[root@test1 ~ ]# dstat
[root@test2 ~]# dstat
사용법: ncat [옵션] [호스트 이름] [포트]
매개변수 | 매개변수 설명 |
---|---|
-4 | IPv4만 사용 |
-6 | IPv6만 사용 |
-유, --unixsock | Unix 도메인 소켓만 사용 |
-C, --crlf | EOL 시퀀스에 crlf 사용 |
-c, --sh-exec |
/bin/sh를 통해 실행 주어진 명령 |
-e, --exec |
주어진 명령을 실행합니다 |
–lua-exec |
주어진 루아 스크립트를 실행 |
-g hop1[,hop2 ,…] | 느슨한 소스 경로 홉(최대 8개) |
-G |
느슨한 소스 경로 홉 포인터(4, 8, 12, …) |
-m, - -max-conns |
최대 동시 연결 수 |
-h, --help | Help 이 도움말 화면 표시 |
-d, --delay < ;time> | 대기 시간 읽기/쓰기 |
-o, --output |
세션 데이터를 파일로 덤프 |
-x, --hex-dump 세션 데이터를 16진수 파일로 덤프 | |
-i, --idle-timeout | idle 읽기/쓰기 시간 초과 |
-p, --source-port port | 사용할 소스 포트를 지정 |
-s, --source addr | 사용할 소스 주소 지정(-l에는 영향을 주지 않음) |
-l, --listen | Bind 및 감지 들어오는 연결 듣기 |
-k, --keep-open | 듣기 모드에서 다중 연결 허용 |
-n, --nodns | DNS를 통해 호스트 이름을 확인하지 마세요 |
-t, --telnet | 텔넷 협상에 응답 |
-u, -- udp | 기본 TCP 대신 udp를 사용 |
– sctp | 기본 TCP 대신 sctp를 사용 |
-v , --verbose | 상세 수준 설정(여러 번 사용할 수 있음) |
-w, --wait | 연결 시간 초과(초) |
-z | 연결 상태만 보고 |
–append-output | 지정된 출력 파일을 누르는 대신 추가 |
–send-only | 수신을 무시하고 EOF를 종료합니다 |
–recv-only | 아무 것도 보내지 마세요. |
–allow | 주어진 호스트가 Ncat에 연결됩니다 |
– allowfile | 호스트가 Ncat에 연결하도록 허용하는 파일 |
–deny | 주어진 호스트가 Ncat에 연결 |
–denyfile | Ncat의 호스트 파일에 연결을 거부 |
–broker | Ncat의 연결 브로커 모드 활성화 |
–chat | 간단한 Ncat 채팅 서버 시작 |
&ndash ;proxy |
프록시를 통해 전달될 호스트 주소를 지정하세요 |
–proxy-type |
프록시 유형 지정("http", "socks4" 또는 "socks5") |
–proxy-auth |
HTTP 또는 SOCKS를 통해 인증 프록시 서버 |
–ssl | Ssl을 사용하여 연결 또는 수신 |
–ssl-cert | 수신에 사용되는 SSL 인증서 파일(PEM) 지정 |
–ssl-key | 수신에 사용되는 SSL 개인 키(PEM)를 지정하세요. |
–ssl-verify | 인증서 및 도메인 이름 신뢰 |
–ssl-trustfile | 신뢰할 수 있는 SSL 인증서가 포함된 PEM 파일 |
–ssl-ciphers | 사용할 SSL 암호가 포함된 암호 목록 |
–version | 명령 버전 보기 |
위 내용은 Linux nc 명령을 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!