1. 程式人生 > >Linux 禁止Root遠端登入,限制IP登入

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 永久禁用密碼提示。