Centos 6、7 操作系统中,如何开启或关闭ICMP协议
【摘要】 说起ICMP这个协议,可能有些小伙伴对此有点陌生,不知道这个协议有什么作用,什么时候会用到? 但是如果说起ping ,和Tracert 这些检查网络连通性的命令,相信搞运维或者IT的大部分人会对这个比较熟悉。其实,ping以及Tracert这两个命令就是基于ICMP协议实现的。
极客潇,科技公司工程师,专注分享新鲜科技与知识,欢迎关注!
说在前面
说起ICMP这个协议,可能有些小伙伴对此有点陌生,不知道这个协议有什么作用,什么时候会用到? 但是如果说起ping ,和Tracert 这些检查网络连通性的命令,相信搞运维或者IT的大部分人会对这个比较熟悉。其实,ping以及Tracert这两个命令就是基于ICMP协议实现的。
ICMP的全称是 Internet Control Message Protocol ,从技术的角度来看,ICMP就是一个“错误侦测与回报机制”,这个协议在网络安全和网络连接健康状态的判断有着非常重要意义。今天我们的主要内容是说下,在在Centos 6和Centos 7 中,ICMP协议的开启与关闭的方法。对于ICMP安全方面的知识,例如ICMP网络攻击方面,本文不做讨论。
说明
影响ping的主要有两方面因素:一个是内核参数,一个是防火墙规则配置。只有两个参数同时允许,才可以ping通,任意一个因素配置不被允许则不允许ping通。在centos 6 或者7中修改其实是没有什么差异的。
内核参数开启方法
# cat /proc/sys/net/ipv4/icmp_echo_ignore_all 回显两种结果,0表示允许,1代表禁止。此处为1,继续执行下一步
1.临时开启ping,则执行如下命令
# echo 0 >/proc/sys/net/ipv4/icmp_echo_ignore_all
2.永久开启,执行命令:
# vim /etc/sysctl.conf net.ipv4.icmp_echo_ignore_all=0 //增加这一行内容(如果此行已经存在,则确认后面参数为0) :wq 保存退出配置文件 # sysctl -p //执行此命令使配置生效
内核参数关闭ping方法
临时关闭执行:
# echo 1 >/proc/sys/net/ipv4/icmp_echo_ignore_all
永久关闭:
# vim /etc/sysctl.conf net.ipv4.icmp_echo_ignore_all=1 # sysctl -p
防火墙规则
允许ping:
# iptables -I INPUT -i eth0 -p icmp -s 0/0 -d 0/0 -j ACCEPT
禁止ping
# iptables -I INPUT -i eth0 -p icmp -s 0/0 -d 0/0 -j DROP
最后测试,就可以ping通目标主机了
极客潇,科技公司工程师,专注分享新鲜科技与知识,欢迎关注!
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)