一、OpenSSH-Server的安装与配置
1、安装OpenSSH-Server
$ sudo apt-get install openssh-server
2、修改SSH配置文件
$ sudo nano /etc/ssh/sshd_config
3、禁用root用户远程登录
PermitRootLogin no
4、限制访问IP地址范围,仅允许白名单IP访问
# 指定白名单访问的IP
AllowUsers user1@192.168.1.100 user2@192.168.1.200
二、通过密钥认证方式登录
1、生成公私钥对
$ ssh-keygen -t rsa
2、将公钥复制到远程服务器
$ ssh-copy-id user@server
3、修改SSH配置文件,禁用密码登录
PubkeyAuthentication yes
PasswordAuthentication no
三、配置防火墙
1、安装UFW防火墙并允许SSH端口通过
$ sudo apt-get install ufw
$ sudo ufw allow ssh
2、启动UFW防火墙
$ sudo ufw enable
3、查看UFW防火墙状态
$ sudo ufw status
四、监控SSH登录
1、安装fail2ban进行IP封禁
$ sudo apt-get install fail2ban
2、修改fail2ban配置文件
$ sudo nano /etc/fail2ban/jail.local
3、添加SSH配置
[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
五、使用多因素认证方式登录
1、安装Google 身份验证器
$ sudo apt-get install libpam-google-authenticator
2、注册Google Authenticator
$ google-authenticator
3、修改PAM配置文件
$ sudo nano /etc/pam.d/sshd
4、添加以下内容至PAM文件
auth required pam_google_authenticator.so nullok
六、特殊用户的远程访问管理控制
1、添加允许访问的用户组
$ sudo groupadd sshusers
2、将需要访问的用户移动到sshusers组中
$ sudo gpasswd -a <user> sshusers
3、修改SSH配置文件并添加。
AllowGroups sshusers
在以上的方面中,我们首先需要安装OpenSSH-Server进行配置,将其限制在指定的IP地址范围内并使用密钥认证方式登录,随后,配置防火墙和监控SSH登录,使用Google Authenticator实现多因素认证方式登录,最后特殊用户的远程访问管理控制。只有对OpenSSH-Server的配置做到足够严密,我们才能保障远程访问的安全。