天天看點

linux下禁止root ssh遠端登入和添加允許新使用者登入ssh

######### 1. 添加使用者 ###########
useradd -d /eisc -m eisc                                # 建立普通使用者: 使用者名 和 使用者組、密碼 都是 eisc   使用者目錄是 /eisc
echo "請輸入使用者的密碼"
passwd eisc                                             # 給testuser 使用者設定密碼
# groupadd eisc                                 # 建立test工作組
# useradd -g eisc eisc                          # 建立testuser使用者并增加到testgroup工作組
                                                                # 注::-g 所屬組 -d 家目錄 -s 所用的SHELL
# usermod -G groupname username # 給已有的使用者增加工作組
NR=`cat -n /etc/sudoers | grep root | grep ALL | awk -F" " '{print $1}'`
                                                                        # 定義一個變量NR,指令檢視 root 的行号
sed -i "$NR a\eisc   ALL=(ALL)     ALL" /etc/sudoers
                                                                        # 授權規則是配置設定權限的執行規則
######### 2. 禁用root 使用者登入 ###########
NR=`cat -n /etc/ssh/sshd_config | grep "#PermitRootLogin" | awk -F" " '{print $1}' | sed "s/ //g"`
                                                                        # Permit [pərˈmɪt] 允許 ;  login [ˈlɔɡˌɪn] 登入; 
                                                                        # 擷取root允許登入規則的行号
sed -i "/PermitRootLogin/d" /etc/ssh/sshd_config
sed -i "$NR a\PermitRootLogin no" /etc/ssh/sshd_config 
                                                                        # 在變量NR 行 (root 規則的下一行)加入禁止登入規則
######### 3. 添加和允許使用者登入 ###########
NR=`cat -n /etc/ssh/sshd_config | grep "ListenAddress" | awk -F" " 'NR==1{print $1}' `
                                                                        # 擷取ssh 允許使用者登入的位置
sed -i "/AllowUsers/d" /etc/ssh/sshd_config     # 先删除這個規則,再添加
sed -i "$NR a\AllowUsers admin eisc" /etc/ssh/sshd_config
                                                                        # Allow [əˈlaʊ] 允許使用者登入 : admin eisc 兩個使用者,多個使用者用空格隔開
/usr/sbin/sshd -T                                               # sshd 儲存配置
/bin/systemctl restart sshd.service                     # 重新開機 sshd 服務
yum install -y net-tools                                        # 端口檢視工具
netstat -ntlp                                                   # 檢視運作的端口
exit
 lastlog                                                                # 檢視登入情況
sshd -t                                                                 # sshd 檢查           

繼續閱讀