linux 通過哪個命令可以檢視某個服務及其埠、程序號
阿新 • • 發佈:2019-02-16
netstat/lsof netstat命令用於顯示與IP、TCP、UDP和ICMP協議相關的統計資料,一般用於檢驗本機各埠的網路連線情況 -a 顯示一個所有的有效連線資訊列表(包括已建立的連線,也包括監聽連線請求的那些連線) -n 顯示所有已建立的有效連線 -t tcp協議 -u udp協議 -l 查詢正在監聽的程式 -p 顯示正在使用socket的程式識別碼和程式名稱 例如:netstat -ntupl|grep processname 如何只查詢tomcat的連線? netstat -na|grep ESTAB |grep 80 |wc-l netstat -na|grep ESTAB |grep 8080 |wc-l 常用埠介紹: 埠:21 服務:FTP伺服器所開放的埠,用於上傳、下載。 埠: 22 服務:ssh 埠: 80 服務:HTTP 用於網頁瀏覽 埠:389 服務:LDAP ILS 輕型目錄訪問協議和NetMeetingInternet Locator Server 埠:443 服務:網頁瀏覽埠 能提供加密和通過安全埠傳輸的另一種HTTP 埠:8080 服務:代理埠 開啟終端,執行如下命令,檢視各程序佔用埠情況: # ps -ef|wc -l //檢視後臺執行的程序總數 # ps -fu csvn //檢視csvn程序 # netstat -lntp //檢視開啟了哪些埠 # netstat -r //本選項可以顯示關於路由表的資訊 # netstat -a //本選項顯示一個所有的有效連線資訊列表 # netstat -an|grep 8080 # netstat -na|grep -i listen //可以看到目前系統偵聽的埠號 # netstat -antup //檢視已建立的連線程序,所佔用的埠。 netstat -anp|grep1487 lsof -i:1487 檢視哪些程序打開了指定埠1487 關閉埠實際上是關閉其對應的服務,比如80埠是HTTPD 關閉80埠可以通過關閉httpd服務來實現 每個埠都有一個守護程序,kill掉這個守護程序就可以了 主機的埠分為監聽埠與隨機可用的高階埠 監聽埠:監聽埠就是主機開啟了哪些服務,這個服務會在linux系統裡啟用一個埠來監聽客戶端的請求 隨機可用的高階埠: linux要向某個主機請求服務時,linux主機需要啟用一個埠來對外連線linux會隨機去用一個未被使用且埠號大於1024的埠進行連線 只有root使用者可以開啟1-1024埠表明擁有root許可權 netstat-n 顯示連線狀態 netstat-tl 顯示當前正在監聽的服務名稱 linux是一個列出當前系統開啟檔案的工具,在linux環境下,任何事物都以檔案的形式存在。 lsof輸出資訊 即可顯示系統開啟的檔案預設顯示所有程序開啟的所有檔案 lsof filename 顯示開啟指定檔案的所有程序 lsof -c string 顯示command列中包含指定字元的程序所有開啟的檔案 lsof -u username 顯示所屬user程序開啟的檔案 lsof -g gid 顯示歸屬gid的程序情況 lsof -i 顯示符合條件的程序情況 lsof -d 顯示指定檔案描述符的程序 lsof -a 標示兩個引數都必須滿足時才顯示結果 例如: lsof-i:1487 檢視所屬root使用者程序所開啟的檔案型別為txt的檔案: lsof -a -u root -d txt lsof使用例項 1.查詢使用檔案系統 解除安裝檔案系統時,如果檔案系統中有任何開啟的檔案,就會出錯。可以通過lsof可以找出那些程序在使用當前解除安裝的檔案系統 # lsof /GTES11/ COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME bash 4208 root cwd DIR 3,1 40962 /GTES11/ vim 4230 root cwd DIR 3,1 40962 /GTES11/ 2.恢復刪除的檔案 當linux計算機受到入侵時,常見的情況是日誌檔案被刪除,管理錯誤也會導致意外刪除重要的檔案。 當程序打開了某個檔案時,只要該程序保持開啟該檔案時,即使刪除,依然存在於磁碟上。這意味著,程序並不知道檔案已被刪除,在/proc目錄下,其中包含了反映核心和程序樹的各種檔案。 當系統中的某個檔案被意外地刪除了,只要這個時候系統中還有程序正在訪問檔案,可以通過lsof從/proc目錄下恢復該檔案 使用lsof來檢視當前是否有程序開啟/var/logmessages檔案 # lsof |grep /var/log/messages syslogd 1283 root 2w REG 3,3 5381017 1773647 /var/log/messages (deleted) 從/proc/1283/fd/2 對於許多應用程式,尤其是日誌檔案和資料庫,這種恢復刪除檔案的方法非常有用