歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux Netcat 命令——網絡工具中的瑞士軍刀

Linux Netcat 命令——網絡工具中的瑞士軍刀

日期:2017/2/28 14:50:20   编辑:Linux教程

netcat是網絡工具中的瑞士軍刀,它能通過TCP和UDP在網絡中讀寫數據。通過與其他工具結合和重定向,你可以在腳本中以多種方式使用它。使用netcat命令所能完成的事情令人驚訝。

netcat所做的就是在兩台電腦之間建立鏈接並返回兩個數據流,在這之後所能做的事就看你的想像力了。你能建立一個服務器,傳輸文件,與朋友聊天,傳輸流媒體或者用它作為其它協議的獨立客戶端。

下面是一些使用netcat的例子.

[A(172.31.100.7) B(172.31.100.23)]

Linux netcat 命令實例:

1,端口掃描

端口掃描經常被系統管理員和黑客用來發現在一些機器上開放的端口,幫助他們識別系統中的漏洞。

$nc -z -v -n 172.31.100.7 21-25

可以運行在TCP或者UDP模式,默認是TCP,-u參數調整為udp.

z 參數告訴netcat使用0 IO,連接成功後立即關閉連接, 不進行數據交換(謝謝@jxing 指點)

v 參數指使用冗余選項(譯者注:即詳細輸出)

n 參數告訴netcat 不要使用DNS反向查詢IP地址的域名

這個命令會打印21到25 所有開放的端口。Banner是一個文本,Banner是一個你連接的服務發送給你的文本信息。當你試圖鑒別漏洞或者服務的類型和版本的時候,Banner信息是非常有用的。但是,並不是所有的服務都會發送banner。

一旦你發現開放的端口,你可以容易的使用netcat 連接服務抓取他們的banner。

$ nc -v 172.31.100.7 21

netcat 命令會連接開放端口21並且打印運行在這個端口上服務的banner信息。

2,Chat Server

假如你想和你的朋友聊聊,有很多的軟件和信息服務可以供你使用。但是,如果你沒有這麼奢侈的配置,比如你在計算機實驗室,所有的對外的連接都是被限制的,你怎樣和整天坐在隔壁房間的朋友溝通那?不要郁悶了,netcat提供了這樣一種方法,你只需要創建一個Chat服務器,一個預先確定好的端口,這樣子他就可以聯系到你了。

Server

$nc -l 1567

netcat 命令在1567端口啟動了一個tcp 服務器,所有的標准輸出和輸入會輸出到該端口。輸出和輸入都在此shell中展示。

Client

$nc 172.31.100.7 1567

不管你在機器B上鍵入什麼都會出現在機器A上。

Copyright © Linux教程網 All Rights Reserved