unix 未创建.ssh目录

agxfikkp  于 2023-10-18  发布在  Unix
关注(0)|答案(4)|浏览(133)

要生成.ssh目录,我使用以下命令:

ssh-keygen

摘自本教程:http://ebiquity.umbc.edu/Tutorials/Hadoop/05%20-%20Setup%20SSHD.html
但是.ssh目录没有创建,所以当我使用cd ~/.ssh时,我得到了这个错误:

"no such file or directory"

是不是少了一步?使用ssh-keygen命令时是否应该创建.ssh目录?

w9apscun

w9apscun1#

我假设你有足够的权限来创建这个目录。
要解决这个问题,您可以使用ssh到其他位置:

ssh [email protected]

并接受新的密钥-它将在下面创建目录~/.sshknown_hosts,或者简单地使用

mkdir ~/.ssh
chmod 700 ~/.ssh

请注意,chmod 700是一个重要的步骤!
在那之后,ssh-凯基应该没有投诉工作.

dzjeubhm

dzjeubhm2#

是不是少了一步?
是的。您需要创建目录:

mkdir ${HOME}/.ssh

此外,SSH要求您设置权限,以便只有您(所有者)可以访问~/.ssh中的任何内容:

% chmod 700 ~/.ssh

使用ssh-keygen命令时是否应该生成.ssh目录?
不能。此命令生成SSH密钥对,但如果无法写入所需目录,则会失败:

% ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/xxx/.ssh/id_rsa): /Users/tmp/does_not_exist
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
open /Users/tmp/does_not_exist failed: No such file or directory.
Saving the key failed: /Users/tmp/does_not_exist.

一旦你创建了你的密钥,你还应该限制谁可以读取这些密钥文件,只有你自己:

% chmod -R go-wrx ~/.ssh/*
2uluyalo

2uluyalo3#

作为对其他答案的轻微改进,您可以使用mkdir-m开关将mkdirchmod作为单个操作来执行。

$ mkdir -m 700 ${HOME}/.ssh

用法

从Linux系统

$ mkdir --help
Usage: mkdir [OPTION]... DIRECTORY...
Create the DIRECTORY(ies), if they do not already exist.

Mandatory arguments to long options are mandatory for short options too.
  -m, --mode=MODE   set file mode (as in chmod), not a=rwx - umask
...
...
bbmckpt7

bbmckpt74#

另一种方法是输入命令ssh-keygen,让它使用默认键创建目录。

相关问题