Linux 禁止Root遠端登入,限制IP登入
1.禁止root遠端登入
vi /etc/ssh/sshd_config
PermitRootLogin yes改為PermitRootLogin no
重啟sshd服務
service sshd restart
2.Centos7 ssh和vsftp限制IP登入白名單和黑名單
1)、修改檔案:/etc/hosts.deny,加上最後兩行,阻止所以進入,如下:
# hosts.deny This file describes the names of the hosts which are # *not* allowed to use the local INET services, as decided # by the '/usr/sbin/tcpd' server. # # The portmap line is redundant, but it is left to remind you that # the new secure portmap uses hosts.deny and hosts.allow. In particular # you should know that NFS uses portmap! sshd:ALL vsftpd:ALL
2)、修改 /etc/hosts.allow,加上允許訪問的IP,如下:
# hosts.allow This file describes the names of the hosts which are # allowed to use the local INET services, as decided # by the '/usr/sbin/tcpd' server. # #sshd sshd:192.168.0.125:allow sshd:192.168.0.126:allow #vsfptd vsftpd:192.168.0.125:allow vsftpd:192.168.0.126:allow
3.Centos7 ssh限制IP和使用者登入
只允許指定使用者進行登入(白名單):
在/etc/ssh/sshd_config配置檔案中設定AllowUsers選項,(配置完成需要重啟 SSHD 服務)格式如下:如果是阿里雲
#AllowUsers aliyun [email protected] //限制阿里雲和該IP登入
AllowUsers [email protected] //限制只能該IP登入
#DenyUsers [email protected] //禁止該IP登入
service sshd restart
4.新增使用者到sudo list:
修改sudoers檔案
a. 切換到root使用者下
b. 新增sudo檔案的寫許可權,命令是:
chmod u+w /etc/sudoers
c. 編輯sudoers檔案
vi /etc/sudoers
找到這行 root ALL=(ALL) ALL,在他下面新增xxx ALL=(ALL) ALL (這裡的xxx是你的使用者名稱)
d. ps:這裡說下你可以sudoers新增下面四行中任意一條
youuser ALL=(ALL) ALL
%youuser ALL=(ALL) ALL
youuser ALL=(ALL) NOPASSWD: ALL
%youuser ALL=(ALL) NOPASSWD: ALL
第一行:允許使用者youuser執行sudo命令(需要輸入密碼).
第二行:允許使用者組youuser裡面的使用者執行sudo命令(需要輸入密碼).
第三行:允許使用者youuser執行sudo命令,並且在執行的時候不輸入密碼.
第四行:允許使用者組youuser裡面的使用者執行sudo命令,並且在執行的時候不輸入密碼.
Attention: 在有的環境中,配置為youuser ALL=(ALL) ALL
也可以達到sudo無需輸入密碼的效果,但不能保證所有環境都有效,肯定有效的做法是:
youuser ALL=(ALL) NOPASSWD: ALL
sudo密碼超時設定
sudo visudo
Defaults env_reset,timestamp_timeout=20
注意:你可以以分鐘設定為你所需的任何時間,它會在超時之前一直等待。 如果要為每個執行的 sudo 命令彈出密碼提示,你也可以將時間設定為 0,或者通過設定值 -1 永久禁用密碼提示。