判斷方法:1、利用netstat命令查看指定端口是否開啟,語法為“netstat -an | grep '22'”;2、利用ps命令查看進(jìn)程信息,若顯示進(jìn)程信息表示sftp已經(jīng)開啟,語法為“ps -ef | grep sftp”。
本教程操作環(huán)境:linux7.3系統(tǒng)、Dell G3電腦。
linux怎么判斷是否開啟了sftp
rpm 指令能夠檢測到的只有通過 rpm 或者 yum 進(jìn)行安裝的軟件包,如果是通過其他方式安裝的軟件,是查不到的。
通過 rpm 指令檢測 vsftpd 是否安裝:rpm -qa | grep vsftpd
。
因?yàn)榉?wù)器拿到之后就可以用 sftp 上傳文件了,所以肯定是存在這樣一個(gè) sftp 服務(wù)的,且該服務(wù)已開啟。在確認(rèn)不是通過包管理器安裝的情況下,可以通過查詢進(jìn)程或端口來查看服務(wù)。
具體操作
1、查看下端口是不是開啟
netstat -an | grep '22'
22 端口其實(shí)查的是 ssh 服務(wù),所以也可以用 netstat -an | grep 'ssh' 查詢。
2、查看進(jìn)程:
ps -ef | grep sftp
值得注意的是,這兩種方法都需要在開啟一個(gè) sftp 客戶端并已經(jīng)連接了服務(wù)器的情況下才能查出來。除非是以 vsftpd 形式運(yùn)行。
[notice]vsftpd 以 daemon 形式運(yùn)行,可以通過 service 進(jìn)行控制,所以可以直接通過進(jìn)程或端口查到。[/notice]
ps -ef 是用標(biāo)準(zhǔn)的格式顯示進(jìn)程的、其格式如下
其中各列的內(nèi)容意思如下
UID //用戶ID、但輸出的是用戶名
PID //進(jìn)程的ID
PPID //父進(jìn)程ID
C //進(jìn)程占用CPU的百分比
STIME //進(jìn)程啟動(dòng)到現(xiàn)在的時(shí)間
TTY //該進(jìn)程在那個(gè)終端上運(yùn)行,若與終端無關(guān),則顯示? 若為pts/0等,則表示由網(wǎng)絡(luò)連接主機(jī)進(jìn)程。
CMD //命令的名稱和參數(shù)
推薦學(xué)習(xí):Linux視頻教程