亚马逊云科技

广告

安信SSL证书

广告

Linux系统中如何配置SSH目录权限

美国云服务器推荐

要使SSH能够正常工作,它需要对~/.ssh或/home/username/.ssh目录具有正确的权限,即所有用户特定的SSH配置和身份验证文件的默认位置。推荐的权限是用户的读/写/执行,并且不能被组和其他用户访问。

此外,SSH还要求目录中的文件必须对用户具有读/写权限,并且不能被其他用户访问。否则的话,用户可能会遇到以下错误:

Authentication refused: bad ownership or modes for directory

那么Linux系统中如何配置SSH目录权限?接下来介绍如何在Linux系统中对.ssh目录和存储在其中的文件设置正确的权限,以便其正常的运行工作。

其实,如果遇到上述错误,可以使用chmod命令在.ssh目录上设置正确的ssh目录权限。

# chmod u+rwx,go-rwx ~/.ssh
或者
# chmod  0700 ~/.ssh

要检查~/.ssh目录的权限,请使用带有-l和-d标志的ls命令,具体如下:

# ls -ld .ssh/

以下是你将在~/.ssh目录中找到的一些文件:

  • private key file (相当于id_rsa ) – 用于认证的私钥,包含高度敏感的信息,因此必须对所有者有读写权限,不能被组和其他人访问,否则ssh会拒绝连接。
  • public key(如.pub 文件)——用于身份验证的公钥,其中还包含敏感信息,因此它应该具有所有者的读写权限、组的只读权限等。
  • authorized_keys – 包含可用于以该用户身份登录的公钥列表。它不是高度敏感的,但应该具有所有者的读写权限,并且不能被组和其他人访问。
  • known_hosts – 存储ssh用户已登录的所有主机的主机密钥列表。它应该具有所有者的读写权限,并且不能被组和其他人访问。
  • config – 每个用户的配置文件,应该具有所有者的读写权限,并且不应被组和其他人访问。

默认情况下,~/.ssh目录下的文件是使用正确的权限集创建的。要检查他们的权限,请在主目录中运行以下命令:

# ls -l .ssh/

如果ssh对上述任何文件的报出权限错误,这时候可以为任何文件设置正确的权限,如下所示:

此外,用户的主目录不应被组或其他用户写入,如下面的屏幕截图所示:

# ls -ld ~

要删除主目录上组和其他人的写权限,请运行以下命令:

# chmod go-w ~
或者
# chmod 755 ~

总装,SSH为了使用安全,其对属主的目录和文件权限有所要求。如果权限不对,则SSH的免密码登陆不会生效。用户目录权限应该755或700,就是不能是77x、777,还需要保证other用户不能有w权限。

(本文由美国主机侦探原创,转载请注明出处“美国主机侦探”和原文地址!)

主机侦探企业微信

微信扫码加好友进群

主机优惠码及时掌握

主机侦探QQ群

QQ群号:938255063

主机优惠发布与交流

温馨提示:

1、本站部分图片来源于互联网,如有侵权请联系删除。邮箱:2942802716#qq.com(#改为@)

2、本文评论没有专人回复,如果您有问题请到美国主机侦探论坛提问!

3、美国主机侦探免费为您提供美国主机购买咨询。

RAKsmart美国服务器
返回顶部