生產環境下戴爾R820kvm虛擬化部署二(物理主機系統優化)

技術小牛人發表於2017-11-08

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
PermitRootLogin no
PermitEmptyPasswords no
UseDNS no
GSSAPIAuthentication 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


相關文章