CentOS服務器安全加固及性能優化
添加時間:2019-3-21 23:35:08
添加:
思海網絡
操作系統:CentOS 6.5_x64最小化安裝
1、主機名設置
代碼如下:
[root@localhost~]# vi /etc/sysconfig/network
HOSTNAME=test.com
[root@localhost~]# hostname test.com #臨時生效
2、關閉SELinux
代碼如下:
[root@localhost~]# vi /etc/selinux/config
SELINUX=disabled
[root@localhost~]# setenforce #臨時生效
[root@localhost~]# getenforce #查看selinux狀態
3、清空防火墻并設置規則
代碼如下:
[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
#根據需求開啟相應端口
4、添加普通用戶并進行sudo授權管理
代碼如下:
[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
5、禁用root遠程登錄
代碼如下:
[root@localhost~]# vi /etc/ssh/sshd_config
PermitRootLoginno
PermitEmptyPasswords no #禁止空密碼登錄
UseDNSno #關閉DNS查詢
6、關閉不必要開機自啟動服務
7、刪除不必要的系統用戶
8、關閉重啟ctl-alt-delete組合鍵
代碼如下:
[root@localhost ~]# vi /etc/init/control-alt-delete.conf
#exec /sbin/shutdown -r now "Control-Alt-Deletepressed" #注釋掉
9、調整文件描述符大小
代碼如下:
[root@localhost ~]# ulimit –n #默認是1024
1024
[root@localhost ~]# echo "ulimit -SHn 102400">> /etc/rc.local #設置開機自動生效
10、去除系統相關信息
代碼如下:
[root@localhost ~]# echo "Welcome to Server" >/etc/issue
[root@localhost ~]# echo "Welcome to Server" >/etc/redhat-release
11、修改history記錄
代碼如下:
[root@localhost ~]# vi /etc/profile #修改記錄10個
HISTSIZE=10
12、同步系統時間
代碼如下:
[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
13、內核參數優化
代碼如下:
[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、服務器、安全加固、性能優化
新文章:
- CentOS7下圖形配置網絡的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統后丟失windows啟動項
- CentOS單網卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網打印機IP講解
- CentOS7使用hostapd實現無AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網絡重啟出錯
- 解決Centos7雙系統后丟失windows啟動項
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統有什么不同呢
- Centos 6.6默認iptable規則詳解