生产环境下戴尔 R820 kvm虚拟化部署二(物理主机系统优化)

1、关闭selinux安全机制

方法1:

直接替换sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config

方法2:

vim /etc/sysconfig/selinux

注释掉SELINUX=enforcing

注释掉SELINUXTYPE=targeted

最后添加SELINUX=disabled

#让配置立刻生效

setenforce 0

2、精简开机自启动服务:关闭除了ssh,network,rsyslog,crond之外的所有服务

 

chkconfig --list|grep 3|egrep -v "ssh|network|rsyslog|crond"|awk '{print $1}'|sed -r "s#(.*)#chkconfig \1 off#g"|bash

 

3、更换yum源,更新系统软件

 

cd /etc/yum.repos.d/

cp CentOS-Base.repo CentOS-Base.repo_$(date +%F)bak

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo

#清除所有的yum缓存

yum clean all  

#新建yum缓存

yum makecache 

#安装一些基本的软件

yum install tree nmap sysstat lrzsz dos2unix vim* -y  

#升级漏洞软件

yum install openssl openssh bash -y   


#暂时不需要的选项

#vim   ~/.vimrc       添加 set nu   让vim编辑器永久显示行号 

#vim /boot/grub/grub.conf         删除rhgb,关闭开机进度条显示

#yum update    更新系统软件


4、添加普通账户,创建需要的目录

 

useradd -d /home/ywliyq -m ywliyq

passwd ywliyq

mkdir -p /server/{tools,scripts}

mkdir -p /app/logs

mkdir -p /application

 

5、修改sshd_config配置文件禁止root用户登录,修改ssh端口。(修改后需要在防火墙里添加新端口通过),再重启ssh!!!

 

#备份配置文件

cp /etc/ssh/sshd_config /etc/ssh/sshd_config_$(date +%F)bak   

cd /etc/ssh/                                                                                                                                                               

#使用命令添加如下信息到配置文件:

sed -ir '13 iPort 30024\nPermitRootLogin no\nPermitEmptyPasswords no\nUseDNS no\nGSSAPIAuthentication no'  sshd_config

--------------------------

Port 30024

PermitRootLogin no

PermitEmptyPasswords no

UseDNS no

GSSAPIAuthentication no

ListenAddress 10.9.9.28(设置内网监听IP)

--------------------------------------------------------

#修改防火墙通过端口,添加50024端口通过

vim /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 30024 -j ACCEPT

重启防火墙:/etc/init.d/iptables restart

重启ssh:/etc/init.d/sshd restart


6、为CRT、ssh终端设置超时

 

export TMOUT=600       临时生效

echo "export TMOUT=600" >>/etc/profile   永久生效


7、加大服务器文件描述符

 

查看当前文件描述符ulimit -n

临时调整ulimit -SHn 65535

永久调整 echo '*               -       nofile          65535 ' >>/etc/security/limits.conf 

查看tail -1 /etc/security/limits.conf 


8、设置服务器时间同步

 

# 同步互联网时间

yum install ntp -y

/usr/sbin/ntpdate time.nist.gov 

/usr/sbin/ntpdate asia.pool.ntp.org  


#设置定时任务命令

echo "*/5 * * * * /usr/sbin/ntpdate time.nist.gov >/dev/null 2>&1" >>/var/spool/cron/root

echo "*/5 * * * * /usr/sbin/ntpdate asia.pool.ntp.org >/dev/null 2>&1" >>/var/spool/cron/root

#检查设置

crontab -l


9、调整内核参数文件


vim /etc/sysctl.conf 

#添加优化好的内容到文件末尾

######### youhua by jzh of ywliyq at 2016/03/29 ########

net.ipv4.tcp_fin_timeout = 2

net.ipv4.tcp_tw_reuse = 1

net.ipv4.tcp_tw_recycle = 1

net.ipv4.tcp_syncookies = 1

net.ipv4.tcp_keepalive_time = 600

net.ipv4.ip_local_port_range = 4000    65000

net.ipv4.tcp_max_syn_backlog = 16384

net.ipv4.tcp_max_tw_buckets = 36000

net.ipv4.route.gc_timeout = 100

net.ipv4.tcp_syn_retries = 1

net.ipv4.tcp_synack_retries = 1

net.core.somaxconn = 16384

net.core.netdev_max_backlog = 16384

net.ipv4.tcp_max_orphans = 16384


#以下参数是对iptables防火墙的优化,防火墙不开会提示,可以忽略不理。

net.nf_conntrack_max = 25000000

net.netfilter.nf_conntrack_max = 25000000

net.netfilter.nf_conntrack_tcp_timeout_established = 180

net.netfilter.nf_conntrack_tcp_timeout_time_wait = 120

net.netfilter.nf_conntrack_tcp_timeout_close_wait = 60

net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 120


sysctl -p让配置文件生效


10、利用sudo控制用户权限

 

visudo,98行

给指定用户权限

切换sudo不需要每次输入密码

ywliyq  ALL=(ALL)       NOPASSWD: ALL


优化完成后重启服务器!

本文转自    蜗牛远途   51CTO博客,原文链接:http://blog.51cto.com/ywliyq/1765847

上一篇:程序员的自我修养


下一篇:2018-11-29