我正在一个服务器上设置OpenSSH,并且在我的客户端上创建了我的密钥,但是我不知道该把公钥放在主机上的位置。我知道它需要添加到authorized_keys文件中,但是授权的密钥文件在哪里?在sshd_config中,它在
%h/.ssh/authorized-keys我环顾四周,看到人们将%h称为主目录的快捷方式,但它是/home/.ssh中的主目录还是/home/user/.ssh?
原谅我的无知,提前感谢你!
我已经查找了两个位置上的.ssh目录。
发布于 2015-04-05 06:04:48
根据man 5 sshd_config的说法:
%h被身份验证用户的主目录替换
这意味着文件将是/home/user/.ssh/authorized_keys。如果缺少.ssh目录(这似乎是正常的,如果不是以前配置的话),您可以创建它,也可以在其中创建authorized_keys文件,然后用公钥填充文件的内容。
发布于 2018-08-07 20:44:28
%h占位符可以有两个(不相关的)含义之一,这取决于它在sshd (deamon/server)或ssh (客户端)的配置中使用的位置。
手册页sshd documents %h作为主目录的文件路径,并被与文件和目录相关的多个关键字接受:
某些关键字的令牌参数可以使用令牌,这些标记在运行时被扩展:
%h -用户的主目录。AuthorizedKeysCommand接受令牌%、%f、%h、%K、%T、%U和%u。AuthorizedKeysFile接受令牌%、%h、%U和%u。AuthorizedPrincipalsCommand接受令牌%%、%F、%f、%h、%i、%k、%k、%s、%t、%t、%u和%U。AuthorizedPrincipalsFile接受令牌%%、%h、%u和%U。%h,%U,和%u。
手册页ssh将%h文档作为ssh命令中指定的主机名。
代币
%h -远程主机名。..。 HostName接受令牌%%和%h。
这通常用于在命令行上创建快捷方式。另见https://superuser.com/q/503687/164493。
https://askubuntu.com/questions/605479
复制相似问题