Oli*_*Oli 128 server ssh users
刚刚创建了一个新的虚拟 Ubuntu 服务器,我正在对其进行强化以供生产使用。我目前有一个 root 帐户。我想做以下事情:
jim在其余部分调用他们)。我希望他们有一个/home/目录。jimSSH 访问权限。jim以su根,但不执行sudo操作。我的问题在于前两项。我已经找到了,useradd但由于某种原因,我无法以通过 SSH 创建的用户身份登录。我是否需要击败 SSHd 才能允许这样做?
小智 123
SSH 对目录和文件权限非常挑剔。确保:
将您的公钥复制到 authorized_keys 文件中。
sudo chown -R username:username /home/username/.ssh
sudo chmod 0700 /home/username/.ssh
sudo chmod 0600 /home/username/.ssh/authorized_keys
Run Code Online (Sandbox Code Playgroud)
有否需要添加用户到/ etc / SSH / ssh_config中。
Lek*_*eyn 107
编辑(以 root 身份)/etc/ssh/sshd_config。将以下内容附加到它:
Port 1234
PermitRootLogin no
AllowUsers jim
Run Code Online (Sandbox Code Playgroud)
Port 1234导致SSH监听1234端口。你可以使用从1到65535的任何未使用的端口。建议选择一个只能被root使用的特权端口(端口1-1024)。如果您的 SSH 守护程序由于某种原因停止工作,则流氓应用程序无法拦截连接。
PermitRootLogin 不允许直接 root 登录。
AllowUsers jim允许用户jim通过 SSH 登录。如果您不必从任何地方登录,您可以通过将 jim 限制为一个 IP 地址来使其更安全(用您的实际 IP 地址替换 1.2.3.4):
AllowUsers jim@1.2.3.4
Run Code Online (Sandbox Code Playgroud)
对配置文件的更改/etc/ssh/sshd_config不会立即应用,要重新加载配置,请运行:
sudo service ssh reload
Run Code Online (Sandbox Code Playgroud)
Kee*_*ook 13
将会有/var/log/auth.log关于 SSH(或 PAM)拒绝登录尝试的线索。通过使用ssh客户端的-v选项可以找到其他线索。几种常见情况,一些在其他答案中提到:
man passwd,尝试重置密码或检查 的内容/etc/shadow)。/etc/ssh/sshd_config配置为不允许登录(DenyUsers,AllowUsers,PasswordAuthentication,PubkeyAuthentication,UsePAM等,见man sshd_config)。/etc/shells。/etc/ssh,/home/jim/.ssh,/home/jim/.ssh/*等。我还建议使用adduser(而不是useradd)来添加新用户;它对各种默认帐户设置更友好一些。
只要用户不属于该admin组,他们就无法sudo到 root。为了让他们使用su,您需要设置一个 root 密码 ( passwd root),之后我建议PermitRootLogin=no在/etc/ssh/sshd_config.
小智 11
我可能是错的,但我总是必须先安装服务器守护程序才能连接(至少在桌面上)默认情况下安装了 ssh 但这只是客户端
此命令安装服务器
sudo apt-get install openssh-server
您可以通过编辑更改端口并停止 root 登录
/etc/ssh/sshd_config
不过,这需要您重新启动服务。
sudo service ssh restart
小智 10
在您设置密码之前,Jim 将无法访问 SSH。作为 root 执行:
grep -i "jim" /etc/shadow | awk -F':' '{ print $2 }'
Run Code Online (Sandbox Code Playgroud)
如果此命令返回“!” 字符,则此帐户的登录被禁用。passwd jim以 root 身份执行将提示您输入一个新的和确认的密码字符串,之后上面的 grep 命令应该返回一个表示 jim 密码的散列字符串。
还要确保确认 jim 具有默认设置的登录 shell 和存在的主目录。
请注意 lekensteyn 的帖子,了解有关修改 SSH 服务器设置的信息。
小智 5
就我而言,我有一个允许访问的组,但用户不属于该组。这为我解决了这个问题。
将上面的示例与用户一起使用jim,并假设jim该组的成员是唯一的组(groups登录时发出命令以jim查找您所属的组)。在我的/etc/ssh/sshd_config文件中,我有AllowGroups sshusers条目,因此需要添加jim到该sshusers组中。下面是如何实现这一点:
usermod -a -G sshusers jim
Run Code Online (Sandbox Code Playgroud)
根据您的配置替换您的组和用户。
| 归档时间: |
|
| 查看次数: |
531997 次 |
| 最近记录: |