限制 SSH 用户从一台机器连接

Jon*_*han 5 linux security ssh

在设置家庭服务器(运行 Kubuntu 10.04)期间,我创建了一个admin用户来执行可能需要卸载家庭的管理任务。该用户在盒子的根分区上有一个主目录。

这台机器有一个面向互联网的 SSH 服务器,我限制了可以通过 SSH 连接的用户集,但我想进一步限制它,admin只允许从我的笔记本电脑(或者可能只能从本地 192.168.1.0/ 24 范围)。

我目前只有一个

AllowGroups ssh-users
Run Code Online (Sandbox Code Playgroud)

与我自己以及admin作为ssh-users小组的成员。

我想要的是像你可能期望这个设置工作的东西(但它没有):

$ groups jonathan
... ssh-users
$ groups admin
... ssh-restricted-users
$ cat /etc/ssh/sshd_config
...
AllowGroups ssh-users ssh-restricted-users@192.168.1.*
...
Run Code Online (Sandbox Code Playgroud)

有没有办法做到这一点?我也试过这个,但它不起作用(admin仍然可以远程登录):

AllowUsers admin@192.168.1.* *
AllowGroups ssh-users
Run Code Online (Sandbox Code Playgroud)

admin的一个成员ssh-users

我也可以只允许admin使用密钥登录并禁止密码登录,但我找不到sshd; 有一个设置需要root登录才能使用密钥,但不适用于一般用户。

use*_*686 5

标准的pam_access.soPAM 模块可以通过远程地址限制登录,并且可以应用于所有服务,而不仅仅是ssh.