關于安全系統的調優:
1、關閉selinux安全政策
sed -i s#SELINUX=enforcing#SELINUX=disabled#g /etc/sysconfig/selinux
for oldboy in `chkconfig --list|grep "3:on"|awk '{print $1}'|grep -vE "crond|network|sshd|rsyslog"`;do chkconfig $oldboy off;done
這條指令的意思是排除crond|network|sshd|rsyslog這四個服務,其他的全部關閉
最小化原則:
1)安裝系統最小化原則
2)開啟程式服務最小化原則
3)操作最小化原則
4)登入最小化原則,平時沒有需求不用root登入,要用普通使用者登入
5)權限最小化原則
6)配置參數合理,不要最大化。
關于ssh伺服器端的安全調優,更改/etc/ssh/sshd_config配置檔案
Port 12345 改端口,預設是22端口
PermitRootLogin no 禁止root登入
UseDNS no 不使用DNS
PermitEmptyPasswords no 禁止空密碼登入
GSSAPIAuthentication no linux下ssh遠端連接配接服務慢解決方案
更改之後重新加載
/etc/init.d/sshd restart
sudo 授權
visudo 可以編輯授權 98行
修改中文顯示(預設的字元集的路徑:/etc/sysconfig/il8n)
LANG="zh_CN.GB18030" 中文字元集
用source使其生效 source /etc/sysconfig/il8n
時間同步
作業:ntp伺服器的配置
加大伺服器檔案描述符
ulimit -n 檢視檔案描述符
ulimit -HSn 65535 加大檔案描述符至65535 臨時性的
echo '* - nofile 65535' >> /etc/security/limits.conf 永久生效
調整核心參數檔案 /etc/sysctl.conf sysctl -p 生效
下面以常見生産環境linux的核心優化為例講解,僅供大家參考:
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 = 400065000
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.ipv4.ip_conntrack_max = 25000000
net.ipv4.netfilter.ip_conntrack_max=25000000
net.ipv4.netfilter.ip_conntrack_tcp_timeout_established=180
net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait=120
net.ipv4.netfilter.ip_conntrack_tcp_timeout_close_wait=60
net.ipv4.netfilter.ip_conntrack_tcp_timeout_fin_wait=120
隐藏系統和核心版本号
>/etc/issue
cat /dev/null > /etc/isssue
鎖定關鍵系統檔案
chattr +i /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittab
解鎖系統檔案指令
chattr -i /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittab 改變檔案屬性
lsattr 檔案名 檢視某個檔案是否加鎖
linux基礎優化總結:
1、不用root,添加普通使用者,通過sudo授權管理
2、更改預設的遠端連接配接ssh服務端口及禁止root使用者遠端連接配接
3、定時自動更新伺服器時間
4、配置yum更新源,從國内更新源下載下傳安裝rpm包
5、關閉selinux及iptables
6、調整檔案描述符的數量,程序及檔案的打開都會消耗檔案描述符
7、精簡開機自啟動服務(crond,sshd,network,rsyslog)
8、linux核心參數優化/etc/sysctl.conf,執行sysctl -p生效
9、更改字元集,支援中文,但建議還是用英文字元集,防止亂碼問題
10、鎖定關鍵系統檔案
11、定時自動清理/var/spool/clientmquene/目錄垃圾檔案,防止inodes節點被占滿(開啟sendmail的前提下)
12、清空/etc/issue,去除系統及核心版本登入前的螢幕顯示
本文轉自陳繼松 51CTO部落格,原文連結:http://blog.51cto.com/chenjisong/1609567,如需轉載請自行聯系原作者