Linux 系统安全加固
1,變更默認的ssh服務端口,禁止root用戶遠程連接
| 1 2 3 4 5 6 7 | [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 |
或者直接修改用如下命令:
| 1 2 3 | 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 root@192.168.137.33 10022 ?這樣就顯示服務器拒絕了root用戶登錄。
2,添加普通用戶并進行sudo授權管理
| 1 2 3 4 5 | [root@ljohn?~]#?useradd?cljj [root@ljohn?~]#?echo?"123456"?|?passwd?--stdin?cljj?&&?history?–c?##這條命令歷史記錄要清除 [root@ljohn?~]#?visudo 在root????ALL=(ALL)????ALL此行下,添加如下內容 cljj????ALL=(ALL)????ALL |
演示:
| 1 2 3 4 5 6 7 8 | [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 (終端)
| 1 2 | 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,鎖定關鍵文件系統
| 1 2 3 4 5 | [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
| 1 2 3 4 5 6 | 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命令歷史可以有效的將用戶的行為記錄下來,一方面可以方便查找,也可以查看用戶在什么時間做了哪些操作。
本文轉自 ljohnmail 51CTO博客,原文鏈接:http://blog.51cto.com/ljohn/1907249,如需轉載請自行聯系原作者總結
以上是生活随笔為你收集整理的Linux 系统安全加固的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux安装phpMyAdmin详细步
- 下一篇: 4.2权限管理