(文章来自:http://www.cnblogs.com/seasonzone/p/3526296.html

我们可以通过调整系统参数来提高系统内存、CPU、内核资源的占用,通过禁用不必要的服务、端口,来提高系统的安全性,更好的发挥系统的可用性。通过自己对Linux了解,对系统调优做了如下小结。

AD:2013云计算架构师峰会课程资料下载

说明:经常玩Linux系统的朋友多多少少也知道些系统参数优化和怎样增强系统安全性,系统默认的一些参数都是比较保守的,所以我们可以通过调整系统参数来提高系统内存、CPU、内核资源的占用,通过禁用不必要的服务、端口,来提高系统的安全性,更好的发挥系统的可用性。通过自己对Linux了解,对系统调优做了如下小结:

操作系统:CentOS 6.5_x64最小化安装

1、主机名设置

  1. [root@localhost~]# vi /etc/sysconfig/network
  2. HOSTNAME=test.com
  3. [root@localhost~]# hostname test.com  #临时生效

2、关闭SELinux

  1. [root@localhost~]# vi /etc/selinux/config
  2. SELINUX=disabled
  3. [root@localhost~]# setenforce #临时生效
  4. [root@localhost~]# getenforce #查看selinux状态

3、清空防火墙并设置规则

  1. [root@localhost~]# iptables -F   #清楚防火墙规则
  2. [root@localhost~]# iptables -L   #查看防火墙规则
  3. [root@localhost~]# iptables -A INPUT -p tcp --dport 80 -j ACCEPT
  4. [root@localhost~]# iptables -A INPUT -p tcp --dport 22 -j ACCEPT
  5. [root@localhost~]# iptables -A INPUT -p tcp --dport 53 -j ACCEPT
  6. [root@localhost~]# iptables -A INPUT -p udp --dport 53 -j ACCEPT
  7. [root@localhost~]# iptables -A INPUT -p udp --dport 123 -j ACCEPT
  8. [root@localhost~]# iptables -A INPUT -p icmp -j ACCEPT
  9. [root@localhost~]# iptables -P INPUT DROP
  10. [root@localhost~]# /etc/init.d/iptables save

#根据需求开启相应端口

4、添加普通用户并进行sudo授权管理

  1. [root@localhost~]# useradd user
  2. [root@localhost~]# echo "123456" | passwd --stdin user  #设置密码
  3. [root@localhost~]# vi /etc/sudoers  #或visudo打开,添加user用户所有权限
  4. root    ALL=(ALL)       ALL
  5. user    ALL=(ALL)       ALL

5、禁用root远程登录

  1. [root@localhost~]# vi /etc/ssh/sshd_config
  2. PermitRootLoginno
  3. PermitEmptyPasswords no #禁止空密码登录
  4. UseDNSno #关闭DNS查询

6、关闭不必要开机自启动服务

7、删除不必要的系统用户

8、关闭重启ctl-alt-delete组合键

  1. [root@localhost ~]# vi /etc/init/control-alt-delete.conf
  2. #exec /sbin/shutdown -r now "Control-Alt-Deletepressed"  #注释掉

9、调整文件描述符大小

  1. [root@localhost ~]# ulimit –n #默认是1024
  2. 1024
  3. [root@localhost ~]# echo "ulimit -SHn 102400">> /etc/rc.local   #设置开机自动生效

10、去除系统相关信息

  1. [root@localhost ~]# echo "Welcome to Server" >/etc/issue
  2. [root@localhost ~]# echo "Welcome to Server" >/etc/redhat-release

11、修改history记录

  1. [root@localhost ~]# vi /etc/profile  #修改记录10个
  2. HISTSIZE=10

12、同步系统时间

  1. [root@localhost ~]# cp /usr/share/zoneinfo/Asia/Shanghai/etc/localtime  #设置Shanghai时区
  2. [root@localhost ~]# ntpdate cn.pool.ntp.org ;hwclock–w  #同步时间并写入blos硬件时间
  3. [root@localhost ~]# crontab –e     #设置任务计划每天零点同步一次
  4. 0 * * * * /usr/sbin/ntpdate cn.pool.ntp.org ; hwclock -w

13、内核参数优化

  1. [root@localhost ~]# vi /etc/sysctl.conf    #末尾添加如下参数
  2. net.ipv4.tcp_syncookies = 1            #1是开启SYN Cookies,当出现SYN等待队列溢出时,启用Cookies来处,理,可防范少量SYN攻击,默认是0关闭
  3. net.ipv4.tcp_tw_reuse = 1             #1是开启重用,允许讲TIME_AIT sockets重新用于新的TCP连接,默认是0关闭
  4. net.ipv4.tcp_tw_recycle = 1            #TCP失败重传次数,默认是15,减少次数可释放内核资源
  5. net.ipv4.ip_local_port_range = 4096 65000  #应用程序可使用的端口范围
  6. net.ipv4.tcp_max_tw_buckets = 5000     #系统同时保持TIME_WAIT套接字的最大数量,如果超出这个数字,TIME_WATI套接字将立刻被清除并打印警告信息,默认180000
  7. net.ipv4.tcp_max_syn_backlog = 4096    #进入SYN宝的最大请求队列,默认是1024
  8. net.core.netdev_max_backlog =  10240  #允许送到队列的数据包最大设备队列,默认300
  9. net.core.somaxconn = 2048              #listen挂起请求的最大数量,默认128
  10. net.core.wmem_default = 8388608        #发送缓存区大小的缺省值
  11. net.core.rmem_default = 8388608        #接受套接字缓冲区大小的缺省值(以字节为单位)
  12. net.core.rmem_max = 16777216           #最大接收缓冲区大小的最大值
  13. net.core.wmem_max = 16777216           #发送缓冲区大小的最大值
  14. net.ipv4.tcp_synack_retries = 2        #SYN-ACK握手状态重试次数,默认5
  15. net.ipv4.tcp_syn_retries = 2           #向外SYN握手重试次数,默认4
  16. net.ipv4.tcp_tw_recycle = 1            #开启TCP连接中TIME_WAIT sockets的快速回收,默认是0关闭
  17. net.ipv4.tcp_max_orphans = 3276800     #系统中最多有多少个TCP套接字不被关联到任何一个用户文件句柄上,如果超出这个数字,孤儿连接将立即复位并打印警告信息
  18. net.ipv4.tcp_mem = 94500000 915000000 927000000
  19. net.ipv4.tcp_mem[0]:低于此值,TCP没有内存压力;
  20. net.ipv4.tcp_mem[1]:在此值下,进入内存压力阶段;
  21. net.ipv4.tcp_mem[2]:高于此值,TCP拒绝分配socket。内存单位是页,可根据物理内存大小进行调整,如果内存足够大的话,可适当往上调。上述内存单位是页,而不是字节。

至此CentOS 6.5_x64最小化安装系统基本优化调整完毕,需要重启下系统。

CentOS 6.5安全加固及性能优化的更多相关文章

  1. CentOS 6.5 安全加固及性能优化 (转)

    通过修改CentOS 6.5 的系统默认设置,对系统进行安全加固,进行系统的性能优化. 环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G) 系统版本:Centos-6.5- ...

  2. [转]CentOS 6.5安全加固及性能优化

    原文链接:http://os.51cto.com/art/201312/423095.htm Centos 6.5 优化 一些基础优化和安全设置 这个也挺好 说明:经常玩Linux系统的朋友多多少少也 ...

  3. centos 6.5 安装 tomcat8 及性能优化_虚拟主机

    Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选. Tomcat和Nginx.Apa ...

  4. RHEL/CentOS通用性能优化、安全配置参考

    RHEL/CentOS通用性能优化.安全配置参考 本文的配置参数是笔者在实际生产环境中反复实践总结的结果,完全适用绝大多数通用的高负载.安全性要求的网络服务器环境.故可以放心使用. 若有异议,欢迎联系 ...

  5. 安全开发运维必备,如何进行Nginx代理Web服务器性能优化与安全加固配置,看这篇指南就够了

    本章目录 1.引言 1.1 目的 1.2 目标范围 1.3 读者对象 2.参考说明 2.1 帮助参考 2.2 参数说明 3.3 模块说明 3.服务优化 3.1 系统内核 3.2 编译优化 3.3 性能 ...

  6. MySQL数据库性能优化与监控实战(阶段四)

    MySQL数据库性能优化与监控实战(阶段四) 作者 刘畅 时间 2020-10-20 目录 1 sys数据库 1 2 系统变量 1 3 性能优化 1 3.1 硬件层 1 3.2 系统层 1 3.3 软 ...

  7. Ceph性能优化总结(v0.94)

    优化方法论 做任何事情还是要有个方法论的,“授人以鱼不如授人以渔”的道理吧,方法通了,所有的问题就有了解决的途径.通过对公开资料的分析进行总结,对分布式存储系统的优化离不开以下几点: 1. 硬件层面 ...

  8. mysql性能优化学习笔记

    mysql性能优化 硬件对数据库的影响 CPU资源和可用内存大小 服务器硬件对mysql性能的影响 我们的应用是CPU密集型? 我们的应用的并发量如何? 数量比频率更好 64位使用32位的服务器版本 ...

  9. 利用 gperftools 对nginx mysql 内存管理 性能优化

    利用 gperftools 对nginx 与 mysql  进行 内存管理  性能优化 降低负载. Gperftools 是由谷歌开发.官方对gperftools 的介绍为: These tools ...

随机推荐

  1. asp.net检查服务器上目录或文件是否存在示例

    原文 asp.net检查服务器上目录或文件是否存在示例 asp.net为我们提供了文件系统对象了,对于目录与文件判断是否存在我们有System.IO.File.Exists与System.IO.Dir ...

  2. hdu 5138

    参考……!!!! #include <iostream> #include <cstdio> #include <cmath> #include <cstri ...

  3. 【自由谈】城域网IPv6过渡技术——MAP技术(4)

    本节接着回答MAP技术的第三个问题:“MAP-BR的Pool是如何实现?可靠性如何提升?” 在MAP域中通过将多个MAP-BR放在同一个Pool内实现负载分担和保护倒换的.同一个Pool中的每个MAP ...

  4. Marshal UTF8 Strings in .NET

    原文:Marshal UTF8 Strings in .NET Marshal UTF8 Strings in .NET Wow, what a pain in the butt. .NET stri ...

  5. 打开excel2007文档时显示“excel无法打开文件~$book.xltm”

    此问题的出现是因为意外情况导致Excel临时文件没有删掉,把C:\Program Files\Microsoft Office\Office12\XLSTART里面的临时文件“~$book”给删除就好 ...

  6. jquery 设置select的默认值

    <select id="sel" > <option value="s1" > aaaa </option> <opt ...

  7. Windbg抓取程序崩溃的dmp文件的方法

    Windbg抓取程序崩溃的dmp文件的方法 一.        简介 windbg是在windows平台下,强大的用户态和内核态调试工具.相比较于Visual Studio,它是一个轻量级的调试工具, ...

  8. 阿录帮帮忙—spring mvc 的hello world

    一:web.xml配置 <!-- Spring MVC配置 --> <servlet> <servlet-name>Spring MVC Dispatcher Se ...

  9. [Android阅读代码]android-async-http源码学习一

    android-async-http 下载地址 一个比较常用的Http请求库,基于org.apache.http对http操作进行封装. 特点: 1.每一个HTTP请求发生在UI线程之外,Client ...

  10. 关于智普 - 千人免费学|Python培训|国内最权威python培训|html5

    关于智普 - 千人免费学|Python培训|国内最权威python培训|html5 智普教育隶属于北京顶嵌开源科技有限公司,成立于2008年. 智普开源是基于Linux系统的互联网开源学习平台,讲求务 ...