Linux优化:
1)不用root管理,以普通用户的名义通过sudo授权管理。
(1)visudo
root ALL=(ALL) ALL
weng ALL=(ALL) ALL,!/bin/su,!/bin/su -,!/bin/su root,!/bin/su - root #避免sudo su的命令
2) 更改默认的远程连接SSH服务端口,禁止root用户远程连接,
甚至要更改为只监听内网IP。
1、sshd配置文件: 服务器:/etc/ssh/sshd_config
客户端:/etc/ssh/ssh_config
2、修改sshd_config
#Port 22 改为 Port 33956 (1—65535)
ListenAddress 192.168.1.1 IP地址服务器内网的IP地址
Protocol 2 协议2比较安全
#UseDNS yes 改为 UseDNS no 不允许通过名字链接
#PermitRootLogin yes 改为 PermitRootLogin no 不允许root通过shh链接
GSSAPIAuthentication yes 改为 GSSAPIAuthentication no 解决链接慢的办法
#PermitEmptyPasswords no 不允许空密码登录
3)定时自动更新服务器时间,使其和互联网时间同步。
1、安装时间服务器:
yum install -y ntpdate
2、同步北京时间:
ntpdate asia.pool.ntp.org
3、设置每天12点定时同步时间:
crontab -e
0 */12 * * * * /usr/sbin/ntpdate asia.pool.ntp.org &> /dev/null
注:该方法是为一台服务器同步,生产环境中,是选2台作为同步外网的时间服务器,而其 他的服务器则同步局域网内的2台时间服务器。避免在同一时间流量增大。
4)配置yum更新源,从国内更新源下载安装软件包。
国内yum源主要有:http://mirrors.aliyun.com
http://mirrors.163.com
http://mirrors.sohu.com
选择centos后面的help即可进入帮助文档。
5)关闭seLinux及iptables(在工作场景中,如果有外部IP一般要打开iptables,高并发除外)。
关闭SELinux:
1、临时关闭(不用重启机器):
setenforce 0 ##设置SELinux 成为permissive模式
##setenforce 1 设置SELinux 成为enforcing模式
2、修改配置文件需要重启机器:
修改/etc/selinux/config 文件,将SELINUX=enforcing改为SELINUX=disabled
http://www.cnblogs.com/bangerlee/archive/2013/02/27/2935422.html
6)调整文件描述符的数量,进程及文件的打开都会消耗文件描述符。
文件描述符概念:
1、表示形式为整数数字,一般使用(0-65535)范围。
2、进程使用的时候会占用文件描述符(标识打开的文件)
命令:ulimit -n #查看默认文件描述符
ulimit -SHn 65535 #修改软硬文件描述符
修改文件描述符有两种办法:
方法一:(1) ulimit -SHn 65535 #修改临时文件描述符:
(2) echo "ulimit -HSn 65536" >>/etc/rc.local #随系统启动时加载
方法二:
(1)调整文件描述符
echo '* soft nofile 65535' >>/etc/security/limits.conf
echo '* hard nofile 65535' >>/etc/security/limits.conf
(2)修改临时文件描述符
ulimit -SHn 65535
7)定时自动清理邮件目录垃圾文件,防止inodes节点被占满
(注意Centos6和Centos5的目录不同)。
8)精简并保留必要的开机自启动服务(如crond、sshd、network、rsyslog、sysstat)。
for service_name in `chkconfig --list|grep "3:on"|awk '{print $1}'|grep -Ev "sshd|network|rsyslog|crond|sysstat"`;
do
chkconfig $service_name off;
done
9)Linux内核参数优化/etc/sysctl.conf,执行sysctl -p生效。
10)更改字符集,使其支持中文,但建议还是用英文字符集,防止出现乱码问题。
11)锁定关键系统文件如(/etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittab)
处理以上内容后把chattr、lsattr改名为oldboy,这样就安全多了。
12)清空/etc/issue、/etc/issue.net,去除系统及内核版本登录前的屏幕显示。
13)清除多余的系统虚拟账号。
14)为grub菜单加密码。
15)禁止被PING
禁止被ping
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
开启被ping
echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all
16)升级漏洞软件
yum update -y
17)锁定重要文件