通过/etc/sysctl.conf控制和配置Linux内核及网络设置。 #忽略icmp ping广播包,应开启,避免放大攻击 net.ipv4.icmp_echo_ignore_broadcasts = 1 # 开启恶意icmp错误消息保护 net.ipv4.icmp_ignore_bogus_error_responses = 1 # 开启SYN洪水攻击保护,表示开启SYN Cookies。当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭 net.ipv4.tcp_syncookies = 1 # 开启并记录欺骗,源路由和重定向包 net.ipv4.conf.all.log_martians = 1 net.ipv4.conf.default.log_martians = 1 # 处理无源路由的包 net.ipv4.conf.all.accept_source_route = 0 net.ipv4.conf.default.accept_source_route = 0 # reverse-pathfiltering 反向路径过滤,系统收到一个ip包后,会反查该ip包的ip是否与它们到达的网络接口匹配,若不匹配则丢弃。是防ip包欺骗策略。 # The rp_filter can reject incoming packets if their sourceaddress doesn’t match the network interface that they’re arrivingon, which helps to prevent IP spoofing. Turning this on, however,has its consequences: If your host has several IP addresses ondifferent interfaces, or if your single interface has multiple IPaddresses on it, you’ll find that your kernel may end up rejectingvalid traffic. It’s also important to note that even if you do notenable the rp_filter, protection against broadcast spoofing isalways on. Also, the protection it provides is only against spoofedinternal addresses; external addresses can still be spoofed.. Bydefault, it is disabled. net.ipv4.conf.all.rp_filter = 1 net.ipv4.conf.default.rp_filter = 1 #关闭重定向。如果主机所在的网络有多个路由器,你将其中一个设为缺省网关,但该网关在收到你的ip包时,发现该ip包必须经过另外一个路由器,于是该网关就給你的主机发一个“重定向”的icmp包,告诉主机把包转发到另外一个路由器。1表示主机接受这样的重定向包,0表示忽略;linux默认是1,可以设位0以消除隐患。 net.ipv4.conf.all.accept_redirects = 0 net.ipv4.conf.default.accept_redirects = 0 net.ipv4.conf.all.secure_redirects = 0 net.ipv4.conf.default.secure_redirects = 0 #禁止数据包转发,不做路由器功能。所谓转发即当主机拥有多网卡时,其中一块收到数据包,根据数据包的目的ip地址将包发往本机另一网卡,该网卡根据路由表继续发送数据包。这通常就是路由器所要实现的功能。 #对比网关:内网主机向公网发送数据包时,由于目的主机跟源主机不在同一网段,所以数据包暂时发往内网默认网关处理,而本网段的主机对此数据包不做任何回应。由于源主机ip是私有的,禁止在公网使用,所以必须将数据包的源发送地址修改成公网上的可用ip,这就是网关收到数据包之后首先要做的工作--ip转换。然后网关再把数据包发往目的主机。目的主机收到数据包之后,只认为这是网关发送的请求,并不知道内网主机的存在,也没必要知道,目的主机处理完请求,把回应信息发还给网关。网关收到后,将目的主机发还的数据包的目的ip地址修改为发出请求的内网主机的ip地址,并将其发给内网主机。这就是网关的第二个工作--数据包的路由转发。内网的主机只要查看数据包的目的ip与发送请求的源主机ip地址相同,就会回应,这就完成了一次请求。 net.ipv4.ip_forward = 0 net.ipv4.conf.all.send_redirects = 0 net.ipv4.conf.default.send_redirects = 0 # 开启execshield,execshield 主要用于随机化堆栈地址,避免被exploit 程序修改恶意地址,而导致执行攻击程序。 kernel.exec-shield = 1 kernel.randomize_va_space = 1 # IPv6设置 net.ipv6.conf.default.router_solicitations = 0 net.ipv6.conf.default.accept_ra_rtr_pref = 0 net.ipv6.conf.default.accept_ra_pinfo = 0 net.ipv6.conf.default.accept_ra_defrtr = 0 net.ipv6.conf.default.autoconf = 0 net.ipv6.conf.default.dad_transmits = 0 net.ipv6.conf.default.max_addresses = 1 # 增加系统文件描述符限制 fs.file-max = 65535 # 允许更多的PIDs (减少滚动翻转问题); may break some programs 32768 kernel.pid_max = 65536 # 增加系统IP端口限制 net.ipv4.ip_local_port_range = 2000 65000 # 增加TCP最大缓冲区大小 net.ipv4.tcp_rmem = 4096 87380 8388608 net.ipv4.tcp_wmem = 4096 87380 8388608 # 增加Linux自动调整TCP缓冲区限制 # 最小,默认和最大可使用的字节数 # 最大值不低于4MB,如果你使用非常高的BDP路径可以设置得更高 # Tcp窗口等 net.core.rmem_max = 8388608 net.core.wmem_max = 8388608 net.core.netdev_max_backlog = 5000 net.ipv4.tcp_window_scaling = 1
- 浏览: 379967 次
文章分类
最新评论
-
fishermen:
使用 <%@ page session="fa ...
Tomcat 的session管理 -
xinyiwust:
楼主你好!你总结的第一点:对于stateless的data s ...
Tomcat 的session管理 -
hujintao:
好像换成JDK目录后还是不行,比如HashMap这些类都不可以 ...
eclipse 调试 跟进 jdk -
顾小五:
是不是一般重写的方法,都有子类继承父类,就是 A extend ...
JAVA方法重载和方法重写 -
jhq986:
好用一定好评
lomboz插件下载
参考:
http://bbs.chinaunix.net/thread-2208198-1-1.html
http://soft.chinabyte.com/os/3/11851003.shtml
http://wenku.baidu.com/link?url=VCgeTBbyHrRdCw0AM8IC51qn17cjut4JI8wDAIReQgkVC4vOP7KA-8ULkV0IcQd-Y23o4WfBt8aDB1tBQo3nVQJKlqBaBHz1VgNbm6cKB27
...
发表评论
-
十个最值得阅读的C开源项目(转)
2016-08-02 18:25 6161. Webbench Webbench是一个在l ... -
NOSQL 压测工具
2016-04-11 11:35 13661 memtier_benchmark me ... -
当Transparent hugepage 遇到fork
2016-04-06 18:31 1374线上计数系统遇到一个奇怪的问题,进程在做备 ... -
关于nagle及tcp_nodelay的一些小结
2015-12-22 17:37 1121一 准备知识点 1.1 mss max seg ... -
IP地址分类
2015-12-22 17:35 692注:整理本地资料,有点杂,所以逐步把比较老的资料搬过来,然 ... -
wget 下载jdk
2015-08-14 15:39 878按照之前的做法,直接通过wget 下载jdk:wg ... -
fb的开源分析
2014-09-22 16:32 7851 mcrouter https://code.faceb ... -
redis 的那些事
2014-09-22 15:23 827素材汇集: 1 redis with ssd? ant ... -
nginx 源码分析
2014-06-27 15:42 988近期准备研究一下nginx源码,此处记录一下。 ... -
redis 源码分析
2014-06-27 15:41 906近期准备梳理一下redis代码,此处记录一下。 ... -
linux 常见问题及解决
2014-02-10 11:12 773平时开发中需要连接到虚拟机linux(cent ... -
对Linux 网卡软中断做负载均衡
2013-12-26 16:25 18585测试中发现服务器整体负载较低,但有cpu负 ... -
vim插件YouCompleteMe
2013-10-20 07:34 8073vim开发中代码补全插件太弱(OmniCppComplet ... -
ssh连入远程centos环境下IDE开发
2013-08-20 11:57 1277先在在测试机centos下装eclips ... -
vi 开发快捷键备忘
2013-08-14 16:03 807一 复制 1 复制单行:移动光标到需要复制的行, ... -
使用tc模拟网络慢或异常
2013-07-23 17:04 1547上线前,需要模拟一下网络异常的情况:慢、丢 ... -
mac 使用点滴
2011-12-31 16:24 2217一 快捷方式 1.1 ... -
linux的文件目录
2011-11-30 17:18 999linux 下目录众多,baidu后汇总如下: 1. /bi ... -
手边常用的 linux命令及shell脚本
2009-08-04 22:28 20391 netstat -nltp 开放的端口 2 nets ... -
经典收藏----URL的长度限制,以及get post区别[转载]
2007-06-29 12:00 9285这个是官方的解释:http://support.microso ...
相关推荐
sysctl-interface 是一个命令行工具,用于设置和获取 Linux 内核参数。通过调整 Linux 内核参数,可以提高系统的性能、安全性和稳定性。 二、/proc/sys/kernel/ /proc/sys/kernel/ 是 Linux 内核参数的目录之一,...
4. **Linux内核源码追踪**: - `socket`函数:在用户空间创建套接字,是应用程序与TCP/IP协议栈交互的起点。 - `bind`:将套接字与本地地址关联,准备监听或连接。 - `listen`:将服务器套接字设置为监听模式,...
Sysctl syscall support(不需要重启就能修改内核的某些参数和变量)是 Linux 内核编译过程中的一个选项。该选项控制着内核的 Sysctl 功能,用于不需要重启就能修改内核的某些参数和变量。 Load all symbols for ...
《边干边学-Linux内核指导》是一本旨在帮助读者深入理解Linux内核操作的实践性书籍。书中涵盖了一系列的实验,旨在让学习者通过实际操作来掌握Linux内核的相关知识。以下是对实验内容的详细说明: 1. **重新编译...
接下来,我们将对 Linux 内核配置中的各个选项进行详细的解释和分析。 Code Maturity Level Options 在 Linux 内核配置中,Code Maturity Level Options 是一个非常重要的选项。这个选项主要用于选择是否启用开发...
5. 网络协议栈:Linux内核实现了TCP/IP协议栈,支持网络通信和数据传输。 三、内核编译与配置 Linux内核的编译与配置是一个自定义化的过程,用户可以根据自己的需求选择内核支持的功能。通过运行`make menuconfig`...
`Sysctl`是一种强大的工具,用于调整Linux内核的各种参数,包括网络、内存管理和其他关键系统配置。通过对`/etc/sysctl.conf`文件进行适当的配置,可以显著提升Linux系统的性能和安全性。 #### Sysctl的工作原理 `...
Linux内核编译配置选项是Linux操作系统中非常重要的一个部分,它决定了Linux内核在编译时将包含哪些功能。对于想要深入理解和定制Linux内核的用户来说,掌握这些配置选项是必不可少的。本文将详细介绍Linux 2.6.19.x...
通过这些选项,用户可以对Linux内核进行深层次的定制和优化,从而达到最佳的系统性能和硬件支持。了解这些配置选项的含义及其对系统性能和稳定性可能带来的影响,对于任何希望深入掌握Linux系统配置的用户来说都是至...
接下来,我们关注TCP网络设置。在`/etc/sysctl.conf`文件中,可以通过修改以下参数来优化TCP网络性能: 1. `net.ipv4.tcp_syncookies = 1`:开启SYN Cookies,用于防止SYN攻击,当SYN等待队列溢出时,系统会发送一...
Linux内核优化主要是指通过对Linux内核的参数进行调整和设置,从而提升系统的性能与效率的过程。这种优化可以通过动态或手动的方式来实现。 1. **动态优化**:系统会根据实时监测到的数据自动调整各项设置,比如CPU...
在Linux系统中,`sysctl`命令可以用来查看当前的内核设置,并立即应用新的设置。在BSD系统中,`sysctl`操作通常需要重启系统才能生效,但在某些情况下,也可以使用`kern.sysctls`加载新设置。 **网络安全强化**: 1...
`sysctl`是Linux内核提供的一种机制,允许用户空间程序动态调整内核参数,从而对系统行为进行微调。在了解`sysctl`之前,我们先要明白Linux内核和用户空间的关系。 Linux内核是操作系统的核心,负责管理硬件资源、...
在Linux内核中,buff/cache是一种内存使用策略,用于提升系统的整体性能。Buffer(缓冲区)主要存储的是磁盘I/O操作的数据,目的是减少磁盘和内存之间的数据交换次数,提高读写速度。Cache(缓存)则是用于存储经常...
这些参数控制着Linux内核的许多方面,包括内存管理、进程调度、网络配置等。通过合理的调整,可以在不重启系统的情况下改善系统的性能和稳定性。 ### 二、Sysctl参数分类 根据描述中的提示,我们将重点关注以下几...
sysctl 命令是 Linux 系统中一个非常重要的命令,它允许管理员动态地修改内核参数,从而提高系统性能。今天我们将深入探讨 sysctl 命令的使用方法和选项。 什么是 sysctl 命令? ------------------- sysctl 命令...
Linux 系统下内核与应用进行数据交换的各种方式包括内核启动参数、模块参数与 sysfs、sysctl、系统调用、netlink、procfs、seq_file、debugfs 和 relayfs 等。 一、内核启动参数 Linux 提供了一种通过 bootloader...