在Ubuntu系统中,通过SSH限制访问权限可以通过以下几种方法实现:
使用防火墙限制IP访问
你可以使用ufw
(Uncomplicated Firewall)来限制访问SSH的IP地址。首先,确保已经安装了ufw
:
sudo apt-get update
sudo apt-get install ufw
然后,启用ufw
并允许特定IP地址访问SSH:
sudo ufw enable
sudo ufw allow from <允许访问的IP地址> to any port 22
如果要允许多个IP地址访问,可以重复allow
命令。
修改SSH配置文件
编辑/etc/ssh/sshd_config
文件,设置允许访问的IP地址或限制访问的用户。
sudo nano /etc/ssh/sshd_config
在文件中添加以下内容,以允许特定IP地址访问SSH:
AllowUsers <用户名>@<允许访问的IP地址>
若要限制访问的用户,可以使用以下命令:
DenyUsers <禁止访问的用户名>
保存并退出文件,然后重启SSH服务:
sudo systemctl restart ssh
使用SSH密钥认证
为了提高安全性,可以使用SSH密钥认证代替密码认证。首先,在客户端生成SSH密钥对:
ssh-keygen -t rsa -b 4096
然后,将公钥复制到服务器的~/.ssh/authorized_keys
文件中:
ssh-copy-id <用户名>@<服务器IP地址>
最后,在服务器的/etc/ssh/sshd_config
文件中启用密钥认证:
PubkeyAuthentication yes
PasswordAuthentication no
保存并退出文件,然后重启SSH服务:
sudo systemctl restart ssh
通过以上方法,你可以限制Ubuntu系统中SSH的访问权限,提高系统的安全性。