導航:首頁 > 操作系統 > linux伺服器檢查

linux伺服器檢查

發布時間:2023-02-24 11:12:54

linux如何檢查遠程伺服器中埠是否打開

這個非常簡單,telnet、nc和nmap這3個命令就可以輕松實現,下面我簡單介紹一下實現過程,感興趣的朋友可以自己嘗試一下:
telnet
這是基於telnet協議實現的一個遠程登錄命令,可以直接用於測試遠程Linux伺服器是否開啟指定埠,安裝的話,輸入命令「yum install -y telnet」(或者「apt install -y telnet」)就行,使用方式「telnet 伺服器IP地址 埠號」,如下,這里以埠22為例,如果返回結果為Connected,則說明埠開啟,如果為refused,則說明埠關閉:

nc
也即netcat,一個簡單實用的Unix(Linux)工具,主要用來讀寫網路間連接的數據,可以很方便的查看遠程Linux伺服器是否開啟指定埠,如下,這里以3306埠為例,如果返回結果為Connected,則說明埠開啟,如果為timed out,則說明埠關閉:

更多參數和說明的話,可以使用命令「nc -h」進行查看,官方文檔解釋的非常清楚詳細,如下:

nmap
這是一個專門用於網路嗅探的工具,在滲透測試中經常會用到,也可以很方便的查看遠程Linux伺服器是否開啟指定埠,安裝的話,輸入命令「yum install -y nmap」(或者「apt install -y nmap」)就行,如下,這里以80,21,3306這3個埠為例,如果返回結果為open,則說明埠開啟,如果為filtered,則說明埠關閉:

更多參數和功能的話,可以使用幫助命令「nmap -h」進行查看,官方文檔解釋的非常詳細清楚,一目瞭然,如下:

至此,我們就介紹完了使用telnet、nc和nmap這3個命令來查看遠程Linux伺服器是否開啟指定埠。總的來說,這3種方式都非常簡單,只要你有一定的Linux基礎,熟悉一下相關參數和說明,很快就能掌握的,網上也有相關教程和資料,介紹的非常詳細,感興趣的話,可以搜一下,希望以上分享的內容能對你有所幫助吧,也歡迎大家評論、留言進行補充。

方法一,telnet host port

方法二,nc -t host port 其中-t代表tcp,-u是udp

方法三,任意語言,優先python,寫一段 socket程序,調用connect函數看看是否成功

ping一下ip地址加上你想要的埠,就知道埠打開沒有

㈡ Linux伺服器硬體情況的查看

1、首先是對於CPU的說明
伺服器CPU性能參數主要信息可以通過查看 /proc/cpuinfo 獲得。具體查看指令及效果如下:

顯示這台伺服器上有2個物理CPU

顯示這台伺服器的物理核數為16個

顯示運行模式為64位

顯示為Intel(R) Xeon(R) Gold 6226R CPU @ 2.90GHz

命令:

顯示此伺服器的線程數為64

top命令是Linux下常用的性能分析工具,能夠實時顯示系統中各個進程的資源佔用狀況,類似於Windows的任務管理器。下面詳細介紹它的使用方法。top是一個動態顯示過程,即可以通過用戶按鍵來不斷刷新當前狀態.如果在前台執行該命令,它將獨占前台,直到用戶終止該程序為止.比較准確的說,top命令提供了實時的對系統處理器的狀態監視.它將顯示系統中CPU最「敏感」的任務列表.該命令可以按CPU使用.內存使用和執行時間對任務進行排序;而且該命令的很多特性都可以通過互動式命令或者在個人定製文件中進行設定.

1.命令格式:

top [參數]

2.命令功能:

顯示當前系統正在執行的進程的相關信息,包括進程ID、內存佔用率、CPU佔用率等

3.命令參數:

-b 批處理

-c 顯示完整的治命令

-I 忽略失效過程

-s 保密模式

-S 累積模式

-i<時間> 設置間隔時間

-u<用戶名> 指定用戶名

-p<進程號> 指定進程

-n<次數> 循環顯示的次數

4.使用實例:

實例1:通過 Top 命令顯示進程信息

命令:

統計信息區:

前五行是當前系統情況整體的統計信息區。下面我們看每一行信息的具體意義。

第一行,任務隊列信息,同 uptime 命令的執行結果,具體參數說明情況如下:

10:38:58 — 當前系統時間

up 39 days, 19:47 — 系統已經運行了39天19小時47分鍾(在這期間系統沒有重啟過的吆!)

1 users — 當前有1個用戶登錄系統

load average: 0.00, 0.00, 0.00 — load average後面的三個數分別是1分鍾、5分鍾、15分鍾的負載情況。

load average數據是每隔5秒鍾檢查一次活躍的進程數,然後按特定演算法計算出的數值。如果這個數除以邏輯CPU的數量,結果高於5的時候就表明系統在超負荷運轉了。

第二行,Tasks — 任務(進程),具體信息說明如下:

系統現在共有769個進程,其中處於運行中的有1個,463個在休眠(sleep),stoped狀態的有0個,zombie狀態(僵屍)的有0個。

第三行,cpu狀態信息,具體屬性說明如下:

0.0%us — 用戶空間佔用CPU的百分比。

0.0% sy — 內核空間佔用CPU的百分比。

0.0% ni — 改變過優先順序的進程佔用CPU的百分比

100.0% id — 空閑CPU百分比

0.0% wa — IO等待佔用CPU的百分比

0.0% hi — 硬中斷(Hardware IRQ)佔用CPU的百分比

0.0% si — 軟中斷(Software Interrupts)佔用CPU的百分比

備註:在這里CPU的使用比率和windows概念不同,需要理解linux系統用戶空間和內核空間的相關知識!

第四行,內存狀態,具體信息如下:

65600012k total — 物理內存總量

1785256k used — 使用中的內存總量

62385920k free — 空閑內存總量

1428836k buffers — 緩存的內存量

第五行,swap交換分區信息,具體信息說明如下:

2097148k total — 交換區總量

918340k used — 使用的交換區總量

1178808k free — 空閑交換區總量

備註:

第四行中使用中的內存總量(used)指的是現在系統內核控制的內存數,空閑內存總量(free)是內核還未納入其管控范圍的數量。納入內核管理的內存不見得都在使用中,還包括過去使用過的現在可以被重復利用的內存,內核並不把這些可被重新使用的內存交還到free中去,因此在linux上free內存會越來越少,但不用為此擔心。

對於內存監控,在top里我們要時刻監控第五行swap交換分區的used,如果這個數值在不斷的變化,說明內核在不斷進行內存和swap的數據交換,這是真正的內存不夠用了。

第六行,空行。

第七行以下:各進程(任務)的狀態監控,項目列信息說明如下:

PID — 進程id

USER — 進程所有者

PR — 進程優先順序

NI — nice值。負值表示高優先順序,正值表示低優先順序

VIRT — 進程使用的虛擬內存總量,單位kb。VIRT=SWAP+RES

RES — 進程使用的、未被換出的物理內存大小,單位kb。RES=CODE+DATA

SHR — 共享內存大小,單位kb

S — 進程狀態。D=不可中斷的睡眠狀態 R=運行 S=睡眠 T=跟蹤/停止 Z=僵屍進程

%CPU — 上次更新到現在的CPU時間佔用百分比

%MEM — 進程使用的物理內存百分比

TIME+ — 進程使用的CPU時間總計,單位1/100秒

COMMAND — 進程名稱(命令名/命令行)

或者通過 free 命令顯示系統內存的使用情況,包括物理內存、交換內存(swap)和內核緩沖區內存。

命令:

顯示我當前的伺服器的物理內存是62G,其中交換內存是2個G,一共剩餘是60G的

三、查看Linux內核當前的系統版本號

命令:

顯示的當前的伺服器Linux內核是Ubuntu系統,版本號是18.04.6

㈢ 如何用命令檢查Linux伺服器性能

1、查看物理cpu個數:
cat /proc/cpuinfo |grep "physical id"|sort|uniq|wc -l

2、查看每個物理cpu中的core個數:
cat /proc/cpuinfo |grep "cpu cores"|wc -l

3、邏輯cpu的個數:
cat /proc/cpuinfo |grep "processor"|wc -l

物理cpu個數*核數=邏輯cpu個數(不支持超線程技術的情況下)

㈣ 如何用九條命令在一分鍾內檢查Linux伺服器性能

一、uptime命令

這個命令可以快速查看機器的負載情況。在Linux系統中,這些數據表示等待CPU資源的進程和阻塞在不可中斷IO進程(進程狀態為D)的數量。這些數據可以讓我們對系統資源使用有一個宏觀的了解。

命令的輸出分別表示1分鍾、5分鍾、15分鍾的平均負載情況。通過這三個數據,可以了解伺服器負載是在趨於緊張還是趨於緩解。如果1分鍾平均負載很高,而15分鍾平均負載很低,說明伺服器正在命令高負載情況,需要進一步排查CPU資源都消耗在了哪裡。反之,如果15分鍾平均負載很高,1分鍾平均負載較低,則有可能是CPU資源緊張時刻已經過去。

上面例子中的輸出,可以看見最近1分鍾的平均負載非常高,且遠高於最近15分鍾負載,因此我們需要繼續排查當前系統中有什麼進程消耗了大量的資源。可以通過下文將會介紹的vmstat、mpstat等命令進一步排查。

二、dmesg命令

該命令會輸出系統日誌的最後10行。示例中的輸出,可以看見一次內核的oom kill和一次TCP丟包。這些日誌可以幫助排查性能問題。千萬不要忘了這一步。

三、vmstat命令

vmstat(8) 命令,每行會輸出一些系統核心指標,這些指標可以讓我們更詳細的了解系統狀態。後面跟的參數1,表示每秒輸出一次統計信息,表頭提示了每一列的含義,這幾介紹一些和性能調優相關的列:

r:等待在CPU資源的進程數。這個數據比平均負載更加能夠體現CPU負載情況,數據中不包含等待IO的進程。如果這個數值大於機器CPU核數,那麼機器的CPU資源已經飽和。

free:系統可用內存數(以千位元組為單位),如果剩餘內存不足,也會導致系統性能問題。下文介紹到的free命令,可以更詳細的了解系統內存的使用情況。

si,so:交換區寫入和讀取的數量。如果這個數據不為0,說明系統已經在使用交換區(swap),機器物理內存已經不足。

us, sy, id, wa, st:這些都代表了CPU時間的消耗,它們分別表示用戶時間(user)、系統(內核)時間(sys)、空閑時間(idle)、IO等待時間(wait)和被偷走的時間(stolen,一般被其他虛擬機消耗)。

上述這些CPU時間,可以讓我們很快了解CPU是否出於繁忙狀態。一般情況下,如果用戶時間和系統時間相加非常大,CPU出於忙於執行指令。如果IO等待時間很長,那麼系統的瓶頸可能在磁碟IO。

示例命令的輸出可以看見,大量CPU時間消耗在用戶態,也就是用戶應用程序消耗了CPU時間。這不一定是性能問題,需要結合r隊列,一起分析。

四、mpstat命令

該命令可以顯示每個CPU的佔用情況,如果有一個CPU佔用率特別高,那麼有可能是一個單線程應用程序引起的。

五、pidstat命令

pidstat命令輸出進程的CPU佔用率,該命令會持續輸出,並且不會覆蓋之前的數據,可以方便觀察系統動態。如上的輸出,可以看見兩個JAVA進程佔用了將近1600%的CPU時間,既消耗了大約16個CPU核心的運算資源。

六、iostat命令

r/s, w/s, rkB/s, wkB/s:分別表示每秒讀寫次數和每秒讀寫數據量(千位元組)。讀寫量過大,可能會引起性能問題。

await:IO操作的平均等待時間,單位是毫秒。這是應用程序在和磁碟交互時,需要消耗的時間,包括IO等待和實際操作的耗時。如果這個數值過大,可能是硬體設備遇到了瓶頸或者出現故障。

avgqu-sz:向設備發出的請求平均數量。如果這個數值大於1,可能是硬體設備已經飽和(部分前端硬體設備支持並行寫入)。

%util:設備利用率。這個數值表示設備的繁忙程度,經驗值是如果超過60,可能會影響IO性能(可以參照IO操作平均等待時間)。如果到達100%,說明硬體設備已經飽和。

如果顯示的是邏輯設備的數據,那麼設備利用率不代表後端實際的硬體設備已經飽和。值得注意的是,即使IO性能不理想,也不一定意味這應用程序性能會不好,可以利用諸如預讀取、寫緩存等策略提升應用性能。

七、free命令

free命令可以查看系統內存的使用情況,-m參數表示按照兆位元組展示。最後兩列分別表示用於IO緩存的內存數,和用於文件系統頁緩存的內存數。需要注意的是,第二行-/+ buffers/cache,看上去緩存佔用了大量內存空間。

這是Linux系統的內存使用策略,盡可能的利用內存,如果應用程序需要內存,這部分內存會立即被回收並分配給應用程序。因此,這部分內存一般也被當成是可用內存。

如果可用內存非常少,系統可能會動用交換區(如果配置了的話),這樣會增加IO開銷(可以在iostat命令中提現),降低系統性能。

八、sar命令

sar命令在這里可以查看網路設備的吞吐率。在排查性能問題時,可以通過網路設備的吞吐量,判斷網路設備是否已經飽和。如示例輸出中,eth0網卡設備,吞吐率大概在22 Mbytes/s,既176 Mbits/sec,沒有達到1Gbit/sec的硬體上限。

sar命令在這里用於查看TCP連接狀態,其中包括:

active/s:每秒本地發起的TCP連接數,既通過connect調用創建的TCP連接;

passive/s:每秒遠程發起的TCP連接數,即通過accept調用創建的TCP連接;

retrans/s:每秒TCP重傳數量;

TCP連接數可以用來判斷性能問題是否由於建立了過多的連接,進一步可以判斷是主動發起的連接,還是被動接受的連接。TCP重傳可能是因為網路環境惡劣,或者伺服器壓

九、top命令

top命令包含了前面好幾個命令的檢查的內容。比如系統負載情況(uptime)、系統內存使用情況(free)、系統CPU使用情況(vmstat)等。因此通過這個命令,可以相對全面的查看系統負載的來源。同時,top命令支持排序,可以按照不同的列排序,方便查找出諸如內存佔用最多的進程、CPU佔用率最高的進程等。

但是,top命令相對於前面一些命令,輸出是一個瞬間值,如果不持續盯著,可能會錯過一些線索。這時可能需要暫停top命令刷新,來記錄和比對數據。

㈤ 如何查看linux伺服器運行狀態

Linux系統如何查看服務的運行狀態?
1. 前言
本文主要講解如何在Linux系統上查看服務的運行狀態。

Linux系統提供各種系統服務(如進程管理、登錄服務、日誌、計劃任務等)和網路服務(如遠程登錄、電子郵件、列印機、web主機、數據存儲、文件傳輸、域名解析(使用DNS)、動態IP地址分配(使用DHCP)等等)。

Linux系統如何查看服務的運行狀態

從技術上講,服務是一個進程或一組進程(通常稱為守護進程),在後台連續運行,等待請求(特別是來自客戶機的請求)。

Linux支持不同的方式來管理服務,比如啟動、停止、重啟、開機自啟動等,大多數最新的Linux發行版在使用相同的進程管理器-systemd。

systemd是Linux系統和服務管理器init進程的一個替代品,它與SysV和LSB init腳本兼容,systemctl命令是管理systemd的主要工具。

systemd的組件

systemd的組件

在本教程中,我們將演示如何查看Linux系統中systemd可管理的所有服務。

2. 如何查看Linux系統中systemd可管理的所有服務
當您不帶任何參數運行systemctl命令時,它將列印所有已載入的systemd單元的列表(請閱讀systemd文檔以獲得有關systemd單元的更多信息)。顯示各服務單元的狀態(無論是活動的還是非活動的)。

systemctl

如何查看Linux系統中systemd可管理的所有服務

列出系統上所有已載入的服務,查看它們活動狀態,是否正在運行、是否關閉、是否啟動失敗。

systemctl list-units --type=service
或者

systemctl --type=service

列出系統上所有已載入的服務,查看它們活動狀態

要列出所有已載入但已經設置開機自啟動的服務

systemctl list-units --type=service --state=active
systemctl --type=service --state=active

要列出所有已載入但已經設置開機自啟動的服務

查看所有正在運行的服務:

systemctl list-units --type=service --state=running
systemctl --type=service --state=running

查看所有正在運行的服務

如果經常使用前面的命令,可以在創建別名命令,編輯bashrc文件

vim ~/.bashrc
添加以下內容,創建別名命令running_services。

alias running_services='systemctl list-units --type=service --state=running'
保存文件並退出。使用running_services命令查看伺服器上所有已載入、正在運行的服務的列表。

running_services
此外,服務的一個重要方面是它們使用的埠。要確定守護進程監聽的埠,可以使用netstat或ss工具,如下所示。

其中-l選項表示列印所有監聽的套接字,-t顯示所有TCP連接,-u顯示所有UDP連接,-n表示列印數字埠號(而不是應用程序名稱),-p表示顯示應用程序名稱。

netstat -ltup | grep sshd
或者

ss -ltup | grep sshd
第五列顯示套接字:本地地址:埠。在本例中,進程sshd正在埠22上監聽。

查看守護進程監聽的埠

此外,如果您的伺服器防火牆服務運行的狀態,使用以下命令查看已經允許或者阻塞的埠或者服務

查看防火牆服務運行的狀態

firewall-cmd --list-services
firewall-cmd --list-ports
Ubuntu 用戶

sudo ufw status
3. 總結
在本教程中,我們演示了如何在Linux中查看systemd下運行的服務及這些服務的運行狀態。我們還介紹了如何檢查服務正在監聽的埠,以及如何查看在防火牆服務已經允許或者阻塞的服務和埠號。

㈥ 如何檢測linux系統下ftp伺服器是否開啟

檢測linux系統下ftp伺服器是否開啟的方法如下:

1、第一步,打開一台Linux的電腦,進入到輸入shell指令的命令行狀態下,如下圖所示。

㈦ 如何看Linux伺服器是否被攻擊

以下幾種方法檢測linux伺服器是否被攻擊:x0dx0a1、檢查系統密碼文件 x0dx0a首先從明顯的入手,查看一下passwd文件,ls _l /etc/passwd查看文件修改的日期。 x0dx0a2、查看一下進程,看看有沒有奇怪的進程 x0dx0ax0dx0a重點查看進程:ps _aef | grep inetd inetd是UNIX系統的守護進程,正常的inetd的pid都比較靠前,如果看到輸出了一個類似inetd _s x0dx0a/tmp/.xxx之類的進程,著重看inetd x0dx0a_s後面的內容。在正常情況下,LINUX系統中的inetd服務後面是沒有-s參數的,當然也沒有用inetd去啟動某個文件;而solaris系統中x0dx0a也僅僅是inetd x0dx0a_s,同樣沒有用inetd去啟動某個特定的文件;如果使用ps命令看到inetd啟動了某個文件,而自己又沒有用inetd啟動這個文件,那就說明已經有人入侵了系統,並且以root許可權起了一個簡單的後門。x0dx0a3、檢查系統守護進程 x0dx0a檢查/etc/inetd.conf文件,輸入:cat /etc/inetd.conf | grep _v 「^#」,輸出的信息就是這台機器所開啟的遠程服務。 x0dx0a一般入侵者可以通過直接替換in.xxx程序來創建一個後門,比如用/bin/sh 替換掉in.telnetd,然後重新啟動inetd服務,那麼telnet到伺服器上的所有用戶將不用輸入用戶名和密碼而直接獲得一個rootshell。x0dx0a4、檢查網路連接和監聽埠 x0dx0a輸入netstat -an,列出本機所有的連接和監聽的埠,查看有沒有非法連接。 x0dx0a輸入netstat _rn,查看本機的路由、網關設置是否正確。 x0dx0a輸入 ifconfig _a,查看網卡設置。 x0dx0a5、檢查系統日誌 x0dx0a命令last | x0dx0amore查看在正常情況下登錄到本機的所有用戶的歷史記錄。但last命令依賴於syslog進程,這已經成為入侵者攻擊的重要目標。入侵者通常會停止系x0dx0a統的syslog,查看系統syslog進程的情況,判斷syslog上次啟動的時間是否正常,因為syslog是以root身份執行的,如果發現x0dx0asyslog被非法動過,那說明有重大的入侵事件。 x0dx0a在linux下輸入ls _al /var/log x0dx0a檢查wtmp utmp,包括messgae等文件的完整性和修改時間是否正常,這也是手工擦除入侵痕跡的一種方法。 x0dx0a6、檢查系統中的core文件 x0dx0a通過發送畸形請求來攻擊伺服器的某一服務來入侵系統是一種常規的入侵方法,典型的RPC攻擊就是通過這種方式。這種方式有一定的成功率,也就是說並不能x0dx0a100%保證成功入侵系統,而且通常會在伺服器相應目錄下產生core文件,全局查找系統中的core文件,輸入find / -name core x0dx0a_exec ls _l {} \; 依據core所在的目錄、查詢core文件來判斷是否有入侵行為。x0dx0a7、檢查系統文件完整性 x0dx0a檢查文件的完整性有多種方法,通常通過輸入ls _l x0dx0a文件名來查詢和比較文件,這種方法雖然簡單,但還是有一定的實用性。但是如果ls文件都已經被替換了就比較麻煩。在LINUX下可以用rpm _V x0dx0a`rpm _qf 文件名` x0dx0a來查詢,查詢的結果是否正常來判斷文件是否完整。在LINUX下使用rpm來檢查文件的完整性的方法也很多,這里不一一贅述,可以man x0dx0arpm來獲得更多的格式。

㈧ 如何查看linux伺服器運行狀態

1、ps aux 或netstat -tlunp
ps是進程查看命令,netstat是埠查看命令,在Linux系統中,服務一定是有進程的,所以使用ps命令可以查看服務運行情況,另外,Linux服務多數是網路服務,所以通過netstat命令也可以查看服務運行狀態。

2、service 服務名 status
比如查看httpd的Web服務的運行狀態,執行service httpd status,如下圖所示:

3、/sbin/service --status-all |grep "服務名"
比如查看httpd的web服務,執行 /sbin/service --status-all |grep "httpd"即可。如下圖所示。

4、chkconfig --list
比如查看httpd的web服務,執行 chkconfig --list |grep "httpd"即可。如下圖所示。

閱讀全文

與linux伺服器檢查相關的資料

熱點內容
怎麼把安卓視頻傳到蘋果上面 瀏覽:79
手機拍鬼片用什麼app 瀏覽:640
爬山虎app是干什麼用的 瀏覽:505
有哪些寫給程序員的歌 瀏覽:49
成都市命令 瀏覽:993
建立系列文件夾 瀏覽:983
蘋果開機白屏帶文件夾問號 瀏覽:733
體驗服為什麼伺服器會關閉 瀏覽:41
酒店命令 瀏覽:750
中走絲線切割編程視頻 瀏覽:80
衣服壓縮袋手泵原理 瀏覽:714
通達信編程書籍 瀏覽:981
車用壓縮天然氣瓶閥 瀏覽:971
鞋的程序員 瀏覽:259
車的壓縮比是什麼意思 瀏覽:202
網站源碼怎麼傳到文件夾 瀏覽:914
海南壓縮機在哪裡 瀏覽:491
電腦文件夾清晰的文件結構 瀏覽:839
如何把蘋果手機的app轉到安卓 瀏覽:305
java同步並發 瀏覽:249