|
正文 ) e; j9 t& u `* W8 G: [
Linux默认是允许Ping响应的,系统是否允许Ping由2个因素决定的 : ( f) m `& |( R4 h- I: l
1. 内核参数 2. 防火墙 % b8 z) C$ k8 |2 q" M9 s1 {
需要2个因素同时允许才能允许Ping,2个因素有任意一个禁Ping就无法Ping。 G) \& M! y- C; ]' h8 i4 s
内核参数设置
& A) `2 {- x1 n, S禁止ping设置:
4 _1 v2 V) U0 \* p g1)临时禁止ping命令如下所示: - & U, a+ j& e' r( z+ R
- # 如果想要临时允许的话只需要把下面的1换成0即可
' u& x2 }( D0 Y0 Z2 {2 B - echo 1 >/proc/sys/net/ipv4/icmp_echo_ignore_all
复制代码 1 D" I6 I* d3 a. H" a
' H. y3 t$ r- M* i2)永久禁止ping命令如下所示(如果想要永久允许的话只需要把下面的1换成0即可) - ( [0 Z) J" N5 n
- 在 /etc/sysctl.conf 文件中增加一行
+ [& {# ^4 X, T- ]7 O: M( R - net.ipv4.icmp_echo_ignore_all=1
复制代码
4 M) E& a$ l+ T" t$ H4 `2 v4 j ) p5 G' M: y) H$ ~6 e
修改完成后执行 sysctl -p 使新的配置生效。
, p6 ~! Z ]# H
$ c$ s; Y0 w5 _: E防火墙设置 9 ^) B3 g6 C. z
(注意:此处的方法的前提是内核配置是默认值,也就是没有禁止ping) 这里以iptables防火墙为例: , s8 p4 m4 t) A1 P/ O
1)允许ping设置
5 l2 ]/ ^6 r' A7 @1 D7 E- iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT t$ `& V4 v$ q9 E- L0 Z+ E3 P
- iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT
复制代码 + V- \2 v. ?9 o5 J
; v& K6 X( u( k
或者可以临时停止防火墙操作: - 7 ^3 Z3 w5 N& ]6 T+ a/ |% z6 q* D2 R! k+ C
- service iptables stop
复制代码 # h9 g/ ?/ Y+ K1 |5 Q
- o- M1 o* ?# ~' {: t
2)禁止ping设置 - ! ]7 P% ?( Q) H
- iptables -A INPUT -p icmp --icmp-type 8 -s 0/0 -j DROP
复制代码 2 i% }5 m' O& t; L; |- p
|