创建一个ssh密钥:
命令:
ssh-keygen -t rsa –P ""
将密钥移到授权密钥:
命令:
cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
bash: /home/user/.ssh/authorized_keys: No such file or directory
创建一个ssh密钥:
命令:
ssh-keygen -t rsa –P ""
将密钥移到授权密钥:
命令:
cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
bash: /home/user/.ssh/authorized_keys: No such file or directory
Answers:
您必须在第一次创建.ssh目录和authorized_keys文件。
创建.ssh目录:
mkdir ~/.ssh
设置正确的权限:
chmod 700 ~/.ssh
创建authorized_keys文件:
touch ~/.ssh/authorized_keys
设置正确的权限:
chmod 600 ~/.ssh/authorized_keys
权限很重要!没有正确的权限将无法正常工作!
现在,您可以将公钥添加到authorized_keys文件中:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
您必须将计算机的公钥添加到要使用SSH密钥访问authorized_keys的计算机文件中!
如terdon所述,您也可以只使用以下命令:
ssh-copy-id user@host
这会将您id_rsa.pub(在~/.ssh目录中)放入远程计算机的authorized_keys文件中,.ssh并authorized_keys在必要时使用正确的权限创建目录和文件。
cat此而已ssh-copy-id。
如果在使用创建密钥时ssh-keygen给它提供文件名,这也会失败。我输入了一些名称my-ssh-file-name,它把密钥写到/Users/MyUserName而不是.ssh文件夹。如果将文件名留为空白,它将.ssh按预期写入。
~/.ssh/authorized_keys是您连接/信任的其他计算机的密钥,而不是您自己的密钥。