CentOS 6.5 安全加固

操做系統:CentOS 6.5_x64最小化安裝linux

一、主機名設置web

[root @localhost ~]# vi /etc/sysconfig/network
HOSTNAME=test.com
[root @localhost ~]# hostname test.com  #臨時生效

二、關閉SELinux緩存

[root @localhost ~]# vi /etc/selinux/config
SELINUX=disabled
[root @localhost ~]# setenforce #臨時生效
[root @localhost ~]# getenforce #查看selinux狀態

三、清空防火牆並設置規則cookie

 

[root @localhost ~]# iptables -F   #清楚防火牆規則
[root @localhost ~]# iptables -L   #查看防火牆規則
[root @localhost ~]# iptables -A INPUT -p tcp --dport  80  -j ACCEPT
[root @localhost ~]# iptables -A INPUT -p tcp --dport  22  -j ACCEPT
[root @localhost ~]# iptables -A INPUT -p tcp --dport  53  -j ACCEPT
[root @localhost ~]# iptables -A INPUT -p udp --dport  53  -j ACCEPT
[root @localhost ~]# iptables -A INPUT -p udp --dport  123  -j ACCEPT
[root @localhost ~]# iptables -A INPUT -p icmp -j ACCEPT
[root @localhost ~]# iptables -P INPUT DROP
[root @localhost ~]# /etc/init.d/iptables save

#根據需求開啓相應端口ssh

 

四、添加普通用戶並進行sudo受權管理socket

 

[root @localhost ~]# useradd user
[root @localhost ~]# echo  "123456"  | passwd --stdin user  #設置密碼
[root @localhost ~]# vi /etc/sudoers  #或visudo打開,添加user用戶全部權限
root    ALL=(ALL)       ALL
user    ALL=(ALL)       ALL

五、禁用root遠程登陸tcp

 

[root @localhost ~]# vi /etc/ssh/sshd_config
PermitRootLoginno
PermitEmptyPasswords no #禁止空密碼登陸
UseDNSno #關閉DNS查詢

六、關閉沒必要要開機自啓動服務優化

 

七、刪除沒必要要的系統用戶spa

 

八、關閉重啓ctl-alt-delete組合鍵 [root@localhost ~]# vi /etc/init/control-alt-delete.conf #exec /sbin/shutdown -r now "Control-Alt-Deletepressed"  #註釋掉 操作系統

 

九、調整文件描述符大小 [root@localhost ~]# ulimit –n #默認是1024 1024 [root@localhost ~]# echo "ulimit -SHn 102400">> /etc/rc.local   #設置開機自動生效 

 

十、去除系統相關信息 [root@localhost ~]# echo "Welcome to Server" >/etc/issue [root@localhost ~]# echo "Welcome to Server" >/etc/redhat-release 

十一、修改history記錄 [root@localhost ~]# vi /etc/profile  #修改記錄10個  HISTSIZE=10

十二、同步系統時間

[root @localhost  ~]# cp /usr/share/zoneinfo/Asia/Shanghai/etc/localtime  #設置Shanghai時區
[root @localhost  ~]# ntpdate cn.pool.ntp.org ;hwclock–w  #同步時間並寫入blos硬件時間
[root @localhost  ~]# crontab –e     #設置任務計劃天天零點同步一次
0  * * * * /usr/sbin/ntpdate cn.pool.ntp.org ; hwclock -w

1三、內核參數優化

[root @localhost  ~]# vi /etc/sysctl.conf    #末尾添加以下參數
net.ipv4.tcp_syncookies =  1             # 1 是開啓SYN Cookies,當出現SYN等待隊列溢出時,啓用Cookies來處,理,可防範少許SYN攻擊,默認是 0 關閉
net.ipv4.tcp_tw_reuse =  1              # 1 是開啓重用,容許講TIME_AIT sockets從新用於新的TCP鏈接,默認是 0 關閉
net.ipv4.tcp_tw_recycle =  1             #TCP失敗重傳次數,默認是 15 ,減小次數可釋放內核資源
net.ipv4.ip_local_port_range =  4096  65000   #應用程序可以使用的端口範圍
net.ipv4.tcp_max_tw_buckets =  5000      #系統同時保持TIME_WAIT套接字的最大數量,若是超出這個數字,TIME_WATI套接字將馬上被清除並打印警告信息,默認 180000
net.ipv4.tcp_max_syn_backlog =  4096     #進入SYN寶的最大請求隊列,默認是 1024
net.core.netdev_max_backlog =   10240   #容許送到隊列的數據包最大設備隊列,默認 300
net.core.somaxconn =  2048               #listen掛起請求的最大數量,默認 128
net.core.wmem_default =  8388608         #發送緩存區大小的缺省值
net.core.rmem_default =  8388608         #接受套接字緩衝區大小的缺省值(以字節爲單位)
net.core.rmem_max =  16777216            #最大接收緩衝區大小的最大值
net.core.wmem_max =  16777216            #發送緩衝區大小的最大值
net.ipv4.tcp_synack_retries =  2         #SYN-ACK握手狀態重試次數,默認 5
net.ipv4.tcp_syn_retries =  2            #向外SYN握手重試次數,默認 4
net.ipv4.tcp_tw_recycle =  1             #開啓TCP鏈接中TIME_WAIT sockets的快速回收,默認是 0 關閉
net.ipv4.tcp_max_orphans =  3276800      #系統中最多有多少個TCP套接字不被關聯到任何一個用戶文件句柄上,若是超出這個數字,孤兒鏈接將當即復位並打印警告信息
net.ipv4.tcp_mem =  94500000  915000000  927000000
net.ipv4.tcp_mem[ 0 ]:低於此值,TCP沒有內存壓力;
net.ipv4.tcp_mem[ 1 ]:在此值下,進入內存壓力階段;
net.ipv4.tcp_mem[ 2 ]:高於此值,TCP拒絕分配socket。內存單位是頁,可根據物理內存大小進行調整,若是內存足夠大的話,可適當往上調。上述內存單位是頁,而不是字節。

至此CentOS 6.5_x64最小化安裝系統基本優化調整完畢,須要重啓下系統。


來源: <http://www.thinksaas.cn/group/topic/163872/>

相關文章
相關標籤/搜索