首页 > 代码库 > 简述sysctl和利用sysctl禁用ipv6模块
简述sysctl和利用sysctl禁用ipv6模块
目前在大部分的实际生产环境中ipv6并没有被大规模使用,所以在很多的服务器上ipv6的模块的开启往往会带来很多安全隐患和麻烦,那么我们就需要禁用掉ipv6的模块,以前只是利用ip6tables来关闭ipv6的进出策略(可参看http://jim123.blog.51cto.com/4763600/1844094),但是在内核上常常还会有ipv6的影响,这个才平时分析日志的时候还是会发现,这个时候就可以利用sysctl命令来修改用于在内核运行时动态地修改内核的运行参数,不得不说sysctl是一个很强大的工具,它可以修改上百个系统变量,当然使用的系统版本不一样支持修改的系统变量的个数也不一样,而sysctl使用参数也很简单:
variable:要读取的系统变量的名称 variable=value:设置内核参数对应的变量值,通常是0和1,其中1 来表示‘yes‘,用 0 来表示‘no‘,即布尔型 -n:打印值时不打印关键字; -e:忽略未知关键字错误; -N:仅打印名称; -w:当改变sysctl设置时使用此项; -p:从配置文件“/etc/sysctl.conf”加载内核参数设置; -a:打印当前所有可用的内核参数变量和值; -A:以表格方式打印当前所有可用的内核参数变量和值。
系统中关于ipv6的变量有200多个:
[root@bogon ~]# sysctl -a|grep -i ‘ipv6‘|wc -l 209
查找ipv6的disable的变量,全部开启就可以了
[root@bogon ~]# sysctl -a|grep -i ‘ipv6‘|grep ‘disable‘ net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 net.ipv6.conf.lo.disable_ipv6 = 1 net.ipv6.conf.eth0.disable_ipv6 = 1 net.ipv6.conf.pan0.disable_ipv6 = 1 #事实上只要修改net.ipv6.conf.all.disable_ipv6和net.ipv6.conf.default.disable_ipv6就可以了,其他都是相关联的变量
可以通过编辑/etc/sysctl.conf然后再 sysctl -p使变量生效
本文出自 “技术随笔” 博客,请务必保留此出处http://jim123.blog.51cto.com/4763600/1881556
简述sysctl和利用sysctl禁用ipv6模块
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。