今天用nmap扫描了局域网的主机,发现几个主机开着好多危险端口,做linux的,对这些安全知识有一点了解.遂用nmap扫描了自己的主机是否存在可利用端口.发现每次nmap都能成功的检测我的主机是alive状态.nmap功能强大,作为一个小小的个人主机,咱是无能为力禁止nmap发现主机了.但是咱可以禁止ping.让手段不高的人发现不了主机.

1.首先,linux没有禁止ping的情况下,能够平通自己的主机:

  1. localhost:~$ ping 8.8.8.2
  2. PING 8.8.8.1 (8.8.8.2) () bytes of data.
  3. bytes from 8.8.8.2: icmp_seq= ttl= time=0.079 ms
  4. bytes from 8.8.8.2: icmp_seq= ttl= time=0.080 ms
  1. localhost:~$ sudo tcpdump -i any -nn icmp tcpdump 检测的效果
  2. tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
  3. listening on any, link-type LINUX_SLL (Linux cooked), capture size bytes
  4. ::43.651510 IP 8.8.8.2 > 8.8.8.2: ICMP echo request, id , seq , length
  5. ::43.651535 IP 8.8.8.2 > 8.8.8.2: ICMP echo reply, id , seq , length
  6. ::44.675532 IP 8.8.8.2 > 8.8.8.2: ICMP echo request, id , seq , length
  7. ::44.675557 IP 8.8.8.2 > 8.8.8.2: ICMP echo reply, id , seq , length
  8. ::45.703558 IP 8.8.8.2 > 8.8.8.2: ICMP echo request, id , seq , length
  9. ::45.703581 IP 8.8.8.2 > 8.8.8.2: ICMP echo reply, id , seq , length
  10. ::46.723521 IP 8.8.8.2 > 8.8.8.2: ICMP echo request, id , seq , length
  11. ::46.723552 IP 8.8.8.2 > 8.8.8.2: ICMP echo reply, id , seq , length
  12. ::47.747520 IP 8.8.8.2 > 8.8.8.2: ICMP echo request, id , seq , length
  13. ::47.747551 IP 8.8.8.2 > 8.8.8.2: ICMP echo reply, id , seq , length
  14. ::48.771511 IP 8.8.8.2 > 8.8.8.2: ICMP echo request, id , seq , length
  15. ::48.771538 IP 8.8.8.2 > 8.8.8.2: ICMP echo reply, id , seq , length

2.linux系统运行起来后,用参数控制主机是否接收icmp协议(ping通过icmp协议来进行主机发现),这些参数加载到内存中,linux系统的/proc 目录就是内存的镜像,可以从/proc系统通过查找 /proc/sys/net/ipv4/icmp_echo_ignore_all 查看目前的主机是否禁用icmp协议,0表示没有禁用,就是说其他主机ping当前主机的时候,当前主机作出回应.1表示禁用ping,其他主机ping当前主机的时候,当前主机不回应.

  1. localhost:~$ cat /proc/sys/net/ipv4/icmp_echo_ignore_all

3.之后,用root权限修改 /etc/sysctl.conf文件,添加一行

  1. localhost:$ sudo vi /etc/sysctl.conf
  2. .......
  3. ......
  4. net.ipv4.icmp_echo_ignore_all = 1 #添加该行
  5.  
  6. :wq #保存退出
  7.  
  8. localhost:~$ sudo sysctl -p #执行着一条命令,使刚才的修改生效
  9. net.ipv4.icmp_echo_ignore_all = 1 #sysctl.conf 文件中生效的配置
  10.  
  11. localhost:~$ cat /proc/sys/net/ipv4/icmp_echo_ignore_all #再次查看该配置,现在已经禁用icmp协议回复ping了

4.在ping自己的主机看看,看到无法回复ping了.

  1. localhost:~$ ping 8.8.8.2
  2. PING 8.8.8.2 (8.8.8.2) () bytes of data.
  3. ^C
  4. --- 8.8.8.2 ping statistics ---
  5. packets transmitted, received, % packet loss, time 2047ms
  1. localhost:~$ sudo tcpdump -i any -nn icmp #可以看到只有request,没有replay了.
  2. tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
  3. listening on any, link-type LINUX_SLL (Linux cooked), capture size bytes
  4. ::32.054412 IP 8.8.8.2 > 8.8.8.2: ICMP echo request, id , seq , length
  5. ::33.059607 IP 8.8.8.2 > 8.8.8.2: ICMP echo request, id , seq , length
  6. ::34.083520 IP 8.8.8.2 > 8.8.8.2: ICMP echo request, id , seq , length
  7. ::35.107526 IP 8.8.8.2 > 8.8.8.2: ICMP echo request, id , seq , length
  8. ::36.131524 IP 8.8.8.2 > 8.8.8.2: ICMP echo request, id , seq , length
  9. ::37.155536 IP 8.8.8.2 > 8.8.8.2: ICMP echo request, id , seq , length
  10. ::38.179573 IP 8.8.8.2 > 8.8.8.2: ICMP echo request, id , seq , length
  11. ::39.203568 IP 8.8.8.2 > 8.8.8.2: ICMP echo request, id , seq , length
  12. ::40.227618 IP 8.8.8.2 > 8.8.8.2: ICMP echo request, id , seq , length

linux 禁ping的更多相关文章

  1. linux 禁ping本机方法

    linux 禁ping本机方法 禁ping执行:echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all 恢复ping 执行:echo 0 > /p ...

  2. linux 禁ping和开启ping方法

    Linux 禁ping和开启ping操作# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all如果要恢复,只要:# echo 0 > /pro ...

  3. linux禁ping与限制ip登录

    以root进入linux系统,然后编辑文件icmp_echo_ignore_allvi /proc/sys/net/ipv4/icmp_echo_ignore_all将其值改为1后为禁止PING将其值 ...

  4. Linux 禁ping和开启ping操作

    方法一:     # echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all 如果要恢复,只要: # echo 0 > /proc/sys/net ...

  5. linux禁ping和允许ping的方法

    一.系统禁止ping [root@linuxzgf ~]# echo 1 >/proc/sys/net/ipv4/icmp_echo_ignore_all 二.系统允许ping [root@li ...

  6. Linux禁ping

    A.临时允许PING操作的命令为:# >/proc/sys/net/ipv4/icmp_echo_ignore_all B.永久允许PING配置方法. /etc/sysctl.conf 中增加一 ...

  7. Linux禁止ping服务

    ping是一个通信协议,是ip协议的一部分,tcp/ip 协议的一部分.利用它可以检查网络是否能够连通,用好它可以很好地帮助我们分析判定网络故障.应用格式为:Ping IP地址.但服务启用ping有时 ...

  8. Linux禁止ping、开启ping设置

    Linux默认是允许Ping响应的,系统是否允许Ping由2个因素决定的:A.内核参数,B.防火墙,需要2个因素同时允许才能允许Ping,2个因素有任意一个禁Ping就无法Ping. 具体的配置方法如 ...

  9. centos禁ping

    Linux默认是允许Ping响应的,系统是否允许Ping由2个因素决定的:A.内核参数,B.防火墙,需要2个因素同时允许才能允许Ping,2个因素有任意一个禁Ping就无法Ping. 具体的配置方法如 ...

随机推荐

  1. shell中sed的简单使用

    sed命令行格式为:         sed [-nefri]  ‘command’  输入文本/文件        常用选项:        -n∶取消默认的输出,使用安静(silent)模式.在一 ...

  2. Perl数据类型

    Perl 是一种弱类型语言,所以变量不需要指定类型,Perl 解释器会根据上下文自动选择匹配类型. Perl 有三个基本的数据类型:标量.数组.哈希.以下是这三种数据类型的说明: 标量 标量是Perl ...

  3. linux wireless 基础知识 MAC80211 CFG80211

    转:http://blog.csdn.net/liuxd3000/article/details/23761663 1. 基本概念   • cfg80211:  用于对无线设备进行配置管理.与Full ...

  4. 《python解释器源码剖析》第9章--python虚拟机框架

    9.0 序 下面我们就来剖析python运行字节码的原理,我们知道python虚拟机是python的核心,在源代码被编译成字节码序列之后,就将有python的虚拟机接手整个工作.python虚拟机会从 ...

  5. SQL语句复习【专题九】

    SQL语句复习[专题九] 视图:View视图的概念:视图是从若干基本表或其他视图构造出来的表.在创建一个视图时,只是存放的视图的定义,也即是动态检索数据的查询语句,而并不存放视图对应的数据在用户使用视 ...

  6. idea中添加mybatis mapper 样例

    代码: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC &quo ...

  7. Web的了解和servlet的初次见面

    web 相信大家都不陌生,平常我们浏览网页用的都是web服务.互联网起初的web就是非常简单的页面,但是随着客户需求越来越复杂,需要的功能越来越多,我们的服务器端需要处理的请求越来越多,需要区分不同的 ...

  8. string::append

    string (1) string& append (const string& str); substring (2) string& append (const strin ...

  9. Tomcat管理页面

    下面就是 Manager的界面: Server Status 上面个两个配置任意一个配置好了后,都可以启用Server Status的GUI界面:

  10. BZOJ4353 Play with tree[树剖]

    复习几乎考不到的树剖.维护min以及min个数,打set和add标记即可,注意set优先级优于add. #include<iostream> #include<cstdio> ...