none
一、sar命令
#
# sar 1 10 监控CPU,每秒监控一次,共监控10次
# sar -P ALL 1 5 监控所有CPU
# sar -S 1 10 监控交换分区
# sar -d 1 10 监控磁盘IO
# sar -b 1 10 监控磁盘IO和速率
# sar -r 1 10 监控内存使用
# sar -n DEV 1 10 监控网络接口卡的数据传输
二、mpstat
#
# mpstat -P ALL 1 10
三、iostat
#
# iostat -c 2
# iostat -d 1 100
# iostat 1 20
# iostat -p /dev/sda2 1 10
四、vmstat
#
#vmstat -d 1 20
输出信息
r 运行队列中的进程数,不要长时间超过CPU核心总数
b 等待IO的进程数
si 每秒从交换分区写到内存的数据大小
so 每秒写入交换分区的数据大小
#vmstat -a 1 10
五、其它常用监控命令
#
(1) top (2) free (3) iptraf
...none
一、使用脚本
#
wget http://www.inetbase.com/scripts/ddos/install.sh 安装脚本
wget http://www.inetbase.com/scripts/ddos/uninstall.sh 卸载脚本
二、内核优化
#
net.ipv4.tcp_max_syn_backlog = 1024 #设定syn队列长度
net.ipv4.tcp_syncookies = 1 #设定是否启用cookies
net.ipv4.tcp_synack_retries = 3 #设定synack重试次数
net.ipv4.tcp_syn_retries = 2 #设定syn重试次数
net.ipv4.icmp_echo_ignore_all = 1 #不回应ping
net.ipv4.icmp_echo_ignore_broadcast = 1 #不回应广播ping
三、防火墙配置
#
1、基于数据包进行限制
#
#iptables -A INPUT -p tcp --tcp-flags syn,ack,fin syn -m limit --limit 5/s --limit-burst 8 -j ACCEPT
#iptables -A INPUT -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT
2、基于连接数进行限制
#
#iptables -A INPUT -s 192.168.0.0/24 -p tcp --dport 23 -m connlimit --connlimit-above 2 -j DROP
3、基于地址列表进行限制
#
#iptables -A INPUT -p tcp --dport 80 --tcp-flags syn,ack,fin syn -m recent --name webpool --rcheck --seconds 120 --hitcount 10 -j LOG --log-prefix="ddos:" --log-ip-options
#iptables -A INPUT -p tcp --dport 80 --syn -m recent --name webpool --rcheck --seconds 120 --hitcount 10 -j DROP
#iptables -A INPUT -p tcp --dport 80 --syn -m recent --name webpool --set -j ACCEPT
none
一、默认syn配置
#
sysctl -a | grep _syn
net.ipv4.tcp_max_syn_backlog = 1024
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_synack_retries = 5
net.ipv4.tcp_syn_retries = 5
tcp_max_syn_backlog 是SYN队列的长度,加大SYN队列长度可以容纳更多等待连接的网络连接数。
tcp_syncookies是一个开关,是否打开SYN Cookie 功能,该功能可以防止部分SYN攻击。
...none
详细说明
#
可选值:0、1、2。
0, 表示内核将检查是否有足够的可用内存供应用进程使用;如果有足够的可用内存,内存申请允许;否则,内存申请失败,并把错误返回给应用进程。
...none
错误描述
#
任何需要使用http服务的程序都会存在假死或超时,包括wget、cur、yum等等。
初步发现
#
使用sudo 可是正常访问。
例如:
sudo yum install wget
然后发现
#
[root@jn6 tmp]# wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
--2018-03-08 14:13:53-- http://mirrors.163.com/.help/CentOS6-Base-163.repo
Connecting to 10.1.205.242:3128...
根据上面的提示发现了
...none
命令
#
sync
echo 1 > /proc/sys/vm/drop_caches
echo 2 > /proc/sys/vm/drop_caches
echo 3 > /proc/sys/vm/drop_caches
解释
#
cache释放:
To free pagecache:
echo 1 > /proc/sys/vm/drop_caches
To free dentries and inodes:
echo 2 > /proc/sys/vm/drop_caches
To free pagecache, dentries and inodes:
echo 3 > /proc/sys/vm/drop_caches
说明
#
释放前最好sync一下,防止丢数据。
如何在 Linux 中清除缓存(Cache)?
#
每个 Linux 系统有三种选项来清除缓存而不需要中断任何进程或服务。
(LCTT 译注:Cache,译作“缓存”,指 CPU
...none
解决思路
#
yum search pxelinux
通过上面的方法我们找到了syslinux包
然后安装syslinux
yum install syslinux
最后找到pxelinux.0文件
ls /usr/share/syslinux/pxelinux.0
Linux传统清除方式并没能解决
history -c
我用的iterm2 + zsh
常用history命令:
查看历史命令纪录:
history…
Linux传统清除方式并没能解决
history -c
我用的iterm2 + zsh
...安装第三方软件必备技能
打开终端 ( 终端在 应用程序 - 实用工具内 )
输入以下命令并回车
sudo spctl --master-disable
然后查看问题是否解决, 偏好设置->安全性与隐私->通用->任何来源
...