Linux 系統安全加固

1,變更默認的ssh服務端口,禁止root用戶遠程連接

[root@ljohn ~]# cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
[root@ljohn ~]# vim /etc/ssh/sshd_config
Port 10022    #ssh連接默認的端口
PermitRootLogin no   #root用戶***都知道,禁止它遠程登錄
[root@ljohn ~]# /etc/init.d/sshd reload    #從新加載配置
[root@ljohn ~]# netstat -lnt     #查看端口信息
[root@ljohn ~]# lsof -i tcp:10022

或者直接修改用如下命令:

cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
sed -i "s/#PermitRootLogin yes/PermitRootLogin no/" /etc/ssh/sshd_config
sed -i "s/#Port 22/Port 10022/" /etc/ssh/sshd_config

注:這樣做的目的是防止root用戶暴力破解,22端口爲ssh默認的端口,建議使用其他端口

/etc/init.d/sshd reload

service sshd restart && history -c  #重啓sshd服務

演示:

# ssh [email protected] 10022  這樣就顯示服務器拒絕了root用戶登錄。


2,添加普通用戶並進行sudo授權管理

[root@ljohn ~]# useradd cljj
[root@ljohn ~]# echo "123456" | passwd --stdin cljj && history –c ##這條命令歷史記錄要清除
[root@ljohn ~]# visudo
在root    ALL=(ALL)    ALL此行下,添加如下內容
cljj    ALL=(ALL)    ALL

演示:

[cljj@ljohn home]$ sudo cat -n /etc/issue
[sudo] password for cljj:   #這裏輸入當前用戶的密碼,臨時授予root用戶權限
cljj is not in the sudoers file.  This incident will be reported.
[cljj@ljohn home]$ sudo cat -n /etc/issue
[sudo] password for cljj: 
     1CentOS release 6.8 (Final)
     2Kernel \r on an \m
     3

注:此方式可以限制用於的權限,防止篡改系統配置文件導致系統癱瘓


3,當普通用戶登錄時,密碼輸入錯誤三次,系統馬上把該用戶鎖定10分鐘,root用戶鎖定20分鐘

編輯/etc/pam.d/sshd (ssh登錄)

/etc/pam.d/login (終端)

cp /etc/pam.d/sshd  /etc/pam.d/sshd.bak   #在文件末添加如下行:
auth    required    pam_tally2.so    deny=3    unlock_time=600 even_deny_root root_unlock_time=1200


各參數解釋:

even_deny_root    也限制root用戶;  

deny           設置普通用戶和root用戶連續錯誤登陸的最大次數,超過最大次數,則鎖定該用戶 

unlock_time        設定普通用戶鎖定後,多少時間後解鎖,單位是秒; 

root_unlock_time      設定root用戶鎖定後,多少時間後解鎖,單位是秒; 


查看登陸次數:

查看某一用戶錯誤登陸次數:

pam_tally –-user 用戶

例如,查看cljj 用戶的錯誤登陸次數:

pam_tally –-user cljj

清空某一用戶錯誤登陸次數:

pam_tally –-user  用戶 –-reset

例如,清空 cljj 用戶的錯誤登陸次數,

pam_tally –-user cljj –-reset 


注:此方式也可以防禦暴力破解用戶賬號



4,鎖定關鍵文件系統

[root@ljohn ~]# chattr +i /etc/passwd
[root@ljohn ~]# chattr +i /etc/inittab
[root@ljohn ~]# chattr +i /etc/group
[root@ljohn ~]# chattr +i /etc/shadow
[root@ljohn ~]# chattr +i /etc/gshadow

使用chattr命令後,爲了安全我們需要將其改名


[root@ljohn ~]# /bin/mv /usr/bin/chattr /usr/bin/任意名稱


注:將有關用戶賬號密碼的配置文件限制權限,也也可以有效的防止惡意篡改。


5,登出時間限制600登出時間,及HISTSIZE =10000

cp  /etc/profile /etc/profile.bak
echo export TMOUT=600 >> /etc/profile  #增加10分鐘超時退出
echo export HISTTIMEFORMAT=\'%F %T  `whoami` \'  >> /etc/profile    #記錄操作歷史記錄的時間
echo export HISTFILESIZE=10000 >> /etc/profile
echo export HISTSIZE=10000 >> /etc/profile
source /etc/profile

注:history命令歷史可以有效的將用戶的行爲記錄下來,一方面可以方便查找,也可以查看用戶在什麼時間做了哪些操作。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章