1. 程式人生 > >13 款高逼格且實用的 Linux 運維必備工具

13 款高逼格且實用的 Linux 運維必備工具

13 款高逼格且實用的 Linux 運維必備工具

轉自:https://mp.weixin.qq.com/s?__biz=MzI0MDQ4MTM5NQ==&mid=2247487674&idx=1&sn=3bc9947cfd39342974f435efef643d37&chksm=e91b75a6de6cfcb0e7039f8e8df7a04afb2d2959ce3ecdf1dec0729a75235ec0c6a86f472270&mpshare=1&scene=23&srcid=1203LyPaQghSd6H3PO3zWqjl#rd

                  

本文介紹幾款 Linux 運維比較實用的工具,希望對 Linux 運維人員有所幫助。

 

 

 

1. 檢視程序佔用頻寬情況 - Nethogs

 

 

Nethogs 是一個終端下的網路流量監控工具可以直觀的顯示每個程序佔用的頻寬。

下載:http://sourceforge.net/projects/nethogs/files/nethogs/0.8/nethogs-0.8.0.tar.gz/download

 

  1. [[email protected] ~]#yum  -y install libpcap-devel  ncurses-devel

  2. [[email protected] ~]# tar zxvf nethogs-0.8.0.tar.gz

  3. [[email protected] ~]# cd nethogs

  4. [[email protected] nethogs]# make && make install

  5. [[email protected] nethogs]# nethogs eth0

 

 

 

2. 硬碟讀取效能測試 - IOZone

 

 

IOZone 是一款 Linux 檔案系統性能測試工具 可以測試不同的作業系統中檔案系統的讀寫效能。

下載:http://www.iozone.org/src/current/

 

  1. [[email protected] current]# tar xvf iozone3_420.tar

  2. [[email protected] ~]# cd iozone3_420/src/current/

  3. [[email protected] current]# make linux

  4. [[email protected] current]# ./iozone -a -n 512m -g 16g -i 0 -i 1 -i 5 -f /mnt/iozone -Rb ./iozone.xls

 

-a 使用全自動模式

-n 為自動模式設定最小檔案大小 (Kbytes)。

-g 設定自動模式可使用的最大檔案大小 Kbytes。

-i 用來指定執行哪個測試。

-f 指定測試檔案的名字完成後自動刪除

-R 產生 Excel 到標準輸出

-b 指定輸出到指定檔案上

 

 

3.實時監控磁碟 IO-IOTop

 

 

IOTop 命令是專門顯示硬碟 IO 的命令, 介面風格類似 top 命令。

 

  1. [[email protected] ~]# yum -y install iotop

 

 

 

 

 

4. 網路流量監控 - IPtraf

 

 

IPtraf 是一個執行在 Linux 下的簡單的網路狀況分析工具。

 

  1. [[email protected] ~]# yum -y install iptraf

 

 

 

5.網路流量監控 - IFTop

 

 

iftop 是類似於 linux 下面 top 的實時流量監控工具。比 iptraf 直觀些。

下載:http://www.ex-parrot.com/~pdw/iftop/

 

  1. [[email protected] ~]# tar zxvf iftop-0.17.tar.gz

  2. [[email protected] ~]# cd iftop-0.17

  3. [[email protected] iftop-0.17]# ./configure

  4. [[email protected] iftop-0.17]# make && make install

  5. [[email protected] iftop-0.17]# iftop

  6. [[email protected] iftop-0.17]# iftop -i eth0  # 指定監控網絡卡介面

 

TX:傳送流量

RX:接收流量

TOTAL:總流量

Cumm:執行 iftop 到目前時間的總流量

peak:流量峰值

rates:分別表示過去 2s 10s 40s 的平均流量

 

 

6. 程序實時監控 - HTop

 

 

HTop 是一個 Linux 下的互動式的程序瀏覽器可以用來替換 Linux 下的 top 命令。

rpm -ivh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm(安裝第三方 YUM 源)

 

  1. [[email protected] ~]# yum -y install htop

 

 

 

 

 

7. 系統資源監控 - NMON

 

 

NMON 是一種在 AIX 與各種 Linux 作業系統上廣泛使用的監控與分析工具

下載:http://sourceforge.jp/projects/sfnet_nmon/releases/

 

  1. [[email protected] ~]# chmod +x nmon_x86_64_rhel6

  2. [[email protected] ~]# mv nmon_x86_64_rhel6 /usr/sbin/nmon

  3. [[email protected] ~]# nmon

 

 

 

8. 監控多個日誌 - MultiTail

 

 

MultiTail 是在控制檯開啟多個視窗用來實現同時監控多個日誌文件、類似 tail 命令的功能的軟體。

rpm -ivh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm (安裝第三方 YUM 源)

 

  1. [[email protected] ~]# yum -y install  multitail

  2. [[email protected] ~]# multitail -e "fail" /var/log/secure   #篩選關鍵字進行監控

  3. [[email protected] ~]# multitail -l "ping baidu.com"   #監控後面的命令 - l 將要執行的命令

  4. [[email protected] ~]# multitail -i /var/log/messages -i /var/log/secure #-i 指定一個檔名

 

 

 

 

 

9. SSH 暴力破解防護 - Fail2ban

 

 

Fail2ban 可以監視你的系統日誌然後匹配日誌的錯誤資訊正則式匹配執行相應的遮蔽動作一般情況下是呼叫防火牆遮蔽

下載:http://www.fail2ban.org/wiki/index.php/Downloads

 

  1. [[email protected] ~]# cd fail2ban-0.8.11

  2. [[email protected] fail2ban-0.8.11]# python setup.py install

  3. [[email protected] fail2ban-0.8.11]# cd files/

  4. [[email protected] files]# cp ./redhat-initd /etc/init.d/fail2ban

  5. [[email protected] files]# service fail2ban start

  6. [[email protected] files]# chkconfig --add fail2ban

  7. [[email protected] files]# chkconfig fail2ban on

 

注:需要配置 iptables 實用,如果重啟 iptables 了也要重啟 fail2ban,因為 fail2ban 的原理是呼叫 iptables 實時阻擋外界的攻擊。

 

  1. [[email protected] ~]# grep -v "^#" /etc/fail2ban/jail.conf | grep -v "^$"

  2. [DEFAULT]

  3. ignoreip = 127.0.0.1/8# 忽略本機 IP

  4. bantime  = 600   #符合規則後封鎖時間

  5. findtime  = 600  # 在多長時間內符合規則執行封鎖如 600 秒達到 3 次則執行

  6. maxretry = 3    # 最大嘗試次數

  7. backend = auto   #日誌修改檢測日誌 gamin、polling 和 auto 這三種

  8. usedns = warn

  9. [ssh-iptables]

  10. enabled  = true# 預設是禁用 false

  11. filter   = sshd

  12. action   = iptables[name=SSH, port=ssh, protocol=tcp]

  13. # sendmail-whois[name=SSH,dest = 收件人郵箱, sender = 發件人郵箱, sendername="Fail2Ban"]

  14. logpath  = /var/log/sshd.log  # 響應的錯誤日誌一般在 / var/log/secure

  15. maxretry = 5    # 嘗試錯誤次數覆蓋全域性中的 maxretry

 

注:預設所有的應用防護都是關閉的,需要我們手動開啟。fail2ban.conf 檔案是日誌資訊,jail.conf 檔案是保護的具體服務和動作配置資訊。

 

  1. [[email protected] ~]# touch /var/log/sshd.log

  2. [[email protected] ~]# service fail2ban restart

  3. [[email protected] ~]# fail2ban-client status    # 檢視監控已經開啟

  4. Status

  5. |- Number of jail:      1

  6. `- Jail list:           ssh-iptables

  7. [[email protected] ~]# iptables -L  #iptables 過濾表有 fail2ban 一條規則

  8. fail2ban-SSH  tcp  --  anywhere             anywhere            tcp dpt:ssh

 

 

10. 連線會話終端持續化 - Tmux

 

 

Tmux 是一個優秀的終端複用軟體類似 GNU Screen 比 Screen 更加方面、靈活和高效。為了確保連線 SSH 時掉線不影響任務執行。

 

rpm -ivh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm(安裝第三方 YUM 源)

 

 

 

11. 頁面顯示磁碟空間使用情況 - Agedu

 

 

下載:http://www.chiark.greenend.org.uk/~sgtatham/agedu/

 

  1. [[email protected] ~]# tar zxvf agedu-r9723.tar.gz

  2. [[email protected] ~]# cd agedu-r9723

  3. [[email protected] ~]# ./configure

  4. [[email protected] ~]# make && make install

  5. [[email protected] ~]# agedu -s /    #-s 掃描

  6. [[email protected] ~]# agedu -w --address 192.168.0.10:80  #-w 輸入一個網頁連結

  7. [[email protected] ~]# agedu -w --address 192.168.0.108080 --auth none  #--auth 關閉認證如果不加埠號會生成一個隨機的用瀏覽器訪問

 

 

 

 

12. 安全掃描工具 - NMap

 

 

NMap 是 Linux 下的網路連線掃描和嗅探工具包用來掃描網上電腦開放的網路連線端。

下載:http://nmap.org/download.html

 

  1. [[email protected] ~]# tar jxvf nmap-6.40.tar.bz2

  2. [[email protected] nmap-6.40]# ./configure

  3. [[email protected] nmap-6.40]# make && make install

  4. [[email protected] ~]# nmap 192.168.0.10   #獲取基本資訊

  5. [[email protected]alhost ~]# nmap -O 192.168.0.10 #獲取系統版本資訊

  6. [[email protected] ~]# nmap -A 192.168.0.10 #獲取系統綜合資訊

  7. [[email protected] ~]# nmap 192.168.0.0/24  # 獲取一個網段工作裝置基本資訊

 

-sSTCP 掃描

-sV 系統版本檢測

  •  

 

 

13.Web 壓力測試 - Httperf

 

 

Httperf 比 ab 更強大,能測試出 web 服務能承載的最大服務量及發現潛在問題;比如:記憶體使用、穩定性。最大優勢:可以指定規律進行壓力測試,模擬真實環境。

下載:http://code.google.com/p/httperf/downloads/list

 

  1. [[email protected] ~]# tar zxvf httperf-0.9.0.tar.gz

  2. [[email protected] ~]# cd httperf-0.9.0

  3. [[email protected] httperf-0.9.0]# ./configure

  4. [[email protected] httperf-0.9.0]# make && make install

  5. [[email protected] ~]# httperf --hog --server=192.168.0.202 --uri=/index.html --num-conns=10000 --wsess=10,10,0.1

 

引數說明:

--hog:讓 httperf 儘可能多產生連線,httperf 會根據硬體配置,有規律的產生訪問連線

--num-conns:連線數量,總髮起 10000 請求

--wsess: 使用者開啟網頁時間規律模擬,第一個 10 表示產生 10 個會話連線,第二個 10 表示每個會話連線進行 10 次請求,0.1 表示每個會話連線請求之間的間隔時間 / s

本文出自 “求知無坦途,學問無捷徑!” 部落格