13 款 Linux 运维必备的实用工具

1. 查看进程占用带宽状况 - Nethogs

 

Nethogs 是一个终端下的网络流量监控工具能够直观的显示每一个进程占用的带宽。php

下载:http://sourceforge.net/projects/nethogs/files/nethogs/0.8/nethogs-0.8.0.tar.gz/downloadhtml

[root@localhost ~]#yum  -y install libpcap-devel  ncurses-devel

[root@localhost ~]# tar zxvf nethogs-0.8.0.tar.gz

[root@localhost ~]# cd nethogs

[root@localhost nethogs]# make && make install

[root@localhost nethogs]# nethogs eth0

 

 

2. 硬盘读取性能测试 - IOZone

 

IOZone 是一款 Linux 文件系统性能测试工具 能够测试不一样的操做系统中文件系统的读写性能。python

下载:http://www.iozone.org/src/current/linux

[root@localhost current]# tar xvf iozone3_420.tar

[root@localhost ~]# cd iozone3_420/src/current/

[root@localhost current]# make linux

[root@localhost current]# ./iozone -a -n 512m -g 16g -i 0 -i 1 -i 5 -f /mnt/iozone -Rb ./iozone.xls

 

-a 使用全自动模式web

-n 为自动模式设置最小文件大小 (Kbytes)。浏览器

-g 设置自动模式可以使用的最大文件大小 Kbytes。安全

-i 用来指定运行哪一个测试。网络

-f 指定测试文件的名字完成后自动删除ssh

-R 产生 Excel 到标准输出tcp

-b 指定输出到指定文件上

 

3.实时监控磁盘 IO-IOTop

 

IOTop 命令是专门显示硬盘 IO 的命令, 界面风格相似 top 命令。

[root@localhost ~]# yum -y install iotop

 

4. 网络流量监控 - IPtraf

 

IPtraf 是一个运行在 Linux 下的简单的网络情况分析工具。

[root@localhost ~]# yum -y install iptraf

 

5.网络流量监控 - IFTop

 

iftop 是相似于 linux 下面 top 的实时流量监控工具。比 iptraf 直观些。

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

[root@localhost ~]# tar zxvf iftop-0.17.tar.gz

[root@localhost ~]# cd iftop-0.17

[root@localhost iftop-0.17]# ./configure

[root@localhost iftop-0.17]# make && make install

[root@localhost iftop-0.17]# iftop
 
[root@localhost 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 源)

 

[root@localhost ~]# yum -y install htop

 

7. 系统资源监控 - NMON

 

NMON 是一种在 AIX 与各类 Linux 操做系统上普遍使用的监控与分析工具

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

 

,​​​[root@localhost ~]# chmod +x nmon_x86_64_rhel6[root@localhost ~]# mv nmon_x86_64_rhel6 /usr/sbin/nmon[root@localhost ~]# 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 源)

[root@localhost ~]# yum -y install  multitail

[root@localhost ~]# multitail -e "fail" /var/log/secure      #筛选关键字进行监控
    
[root@localhost ~]# multitail -l "ping baidu.com"        #监控后面的命令 - l 将要执行的命令

[root@localhost ~]# multitail -i /var/log/messages -i /var/log/secure     #-i 指定一个文件名

 

 

9. SSH 暴力破解防御 - Fail2ban

 

Fail2ban 能够监视你的系统日志而后匹配日志的错误信息正则式匹配执行相应的屏蔽动做通常状况下是调用防火墙屏蔽

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

[root@localhost ~]# cd fail2ban-0.8.11

[root@localhost fail2ban-0.8.11]# python setup.py install

[root@localhost fail2ban-0.8.11]# cd files/

[root@localhost files]# cp ./redhat-initd /etc/init.d/fail2ban

[root@localhost files]# service fail2ban start

[root@localhost files]# chkconfig --add fail2ban

[root@localhost files]# chkconfig fail2ban on


注:须要配置 iptables 实用,若是重启 iptables 了也要重启 fail2ban,由于 fail2ban 的原理是调用 iptables 实时阻挡外界的攻击。

[root@localhost ~]# grep -v "^#" /etc/fail2ban/jail.conf | grep -v "^$"

[DEFAULT]

ignoreip = 127.0.0.1/8     # 忽略本机 IP

bantime  = 600            #符合规则后封锁时间

findtime  = 600          # 在多长时间内符合规则执行封锁如 600 秒达到 3 次则执行

maxretry = 3             # 最大尝试次数

backend = auto          #日志修改检测日志 gamin、polling 和 auto 这三种

usedns = warn

[ssh-iptables]

enabled  = true          # 默认是禁用 false

filter   = sshd

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

# sendmail-whois[name=SSH,dest = 收件人邮箱, sender = 发件人邮箱, sendername="Fail2Ban"]

logpath  = /var/log/sshd.log          # 响应的错误日志通常在 / var/log/secure

maxretry = 5            # 尝试错误次数覆盖全局中的 maxretry

 

注:默认全部的应用防御都是关闭的,须要咱们手动开启。fail2ban.conf 文件是日志信息,jail.conf 文件是保护的具体服务和动做配置信息。

[root@localhost ~]# touch /var/log/sshd.log

[root@localhost ~]# service fail2ban restart

[root@localhost ~]# fail2ban-client status           # 查看监控已经开启

Status

|- Number of jail:      1

`- Jail list:           ssh-iptables

[root@localhost ~]# iptables -L         #iptables 过滤表有 fail2ban 一条规则

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/

 

[root@localhost ~]# tar zxvf agedu-r9723.tar.gz

[root@localhost ~]# cd agedu-r9723

[root@localhost ~]# ./configure

[root@localhost ~]# make && make install

[root@localhost ~]# agedu -s /           #-s 扫描

[root@localhost ~]# agedu -w --address 192.168.0.10:80      #-w 输入一个网页连接 

[root@localhost ~]# agedu -w --address 192.168.0.108080 --auth none     
   #--auth 关闭认证若是不加端口号会生成一个随机的用浏览器访问

 

 

12. 安全扫描工具 - NMap

 

NMap 是 Linux 下的网络链接扫描和嗅探工具包用来扫描网上电脑开放的网络链接端。

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

[root@localhost ~]# tar jxvf nmap-6.40.tar.bz2

[root@localhost nmap-6.40]# ./configure

[root@localhost nmap-6.40]# make && make install

[root@localhost ~]# nmap 192.168.0.10          #获取基本信息

[root@localhost ~]# nmap -O 192.168.0.10       #获取系统版本信息

[root@localhost ~]# nmap -A 192.168.0.10       #获取系统综合信息

[root@localhost ~]# nmap 192.168.0.0/24        # 获取一个网段工做设备基本信息

 

-sSTCP 扫描

-sV 系统版本检测

 

13.Web 压力测试 - Httperf

 

Httperf 比 ab 更强大,能测试出 web 服务能承载的最大服务量及发现潜在问题;好比:内存使用、稳定性。最大优点:能够指定规律进行压力测试,模拟真实环境。

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

[root@localhost ~]# tar zxvf httperf-0.9.0.tar.gz

[root@localhost ~]# cd httperf-0.9.0

[root@localhost httperf-0.9.0]# ./configure

[root@localhost httperf-0.9.0]# make && make install

[root@localhost ~]# 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

相关文章
相关标签/搜索