linux - 如何创建使用密钥对登录的 Linux 用户
问题描述
这就是我尝试这样做的方式:
步骤1:
- sudo adduser Philipp --disabled-password
- sudo su - 菲利普
- mkdir .ssh
- chmod 700 .ssh
- 触摸 .ssh/authorized_keys
- chmod 600 .ssh/authorized_keys
- 从 AWS 控制台创建密钥对
第2步:
我正在使用以下方法检索我的密钥对的公钥:
- ssh-keygen -y
- 复制并粘贴公钥
第 3 步
- vim 授权键
- 将公钥粘贴在 1 行中
- 在 vim 命令中:w
- 在 vim 命令中:q
更新
当我现在在终端中尝试以下操作时:
ssh -i "keypair.pem" philipp@xx.xxx.xxx.xxx
我收到以下信息:
philipp@xx.xxx.xxx.xxx 的密码:
我究竟做错了什么?使用我的主要 Linux 用户,我能够以相同的方式进行 SSH..
解决方案
- 使用 adduser 将用户添加到您的系统
- 在您的主机上生成密钥:ssh-keygen
- 复制公钥到远程机器:ssh-copy-id user@host
- 在远程机器上的 sshd_config 中进行更改:
AllowUsers user@host 或相同的用户名
匹配用户用户名 AuthenticationMethods 'publickey'
推荐阅读
- spring - 如何将swagger生成的spring boot项目与OSGi集成并部署在Apache karaf中?
- python - 使用 argparse.ArgumentParser() 获取分组结构
- c# - 使用 C# 或 WPF 静音 Windows 10 通知
- zsh - 如何从输出 aws cli --query 中提取单个值
- scala - 如何在scala中将地图写入csv
- python - Python在二维矩阵上打印行号和列号?
- reactjs - Webpack + react + firebase 身份验证失败
- python - 在下面的python for 循环中使用 {} [()] 的目的是什么?
- vb.net - 检查分组框内的多个控件类型是否为空并显示空控件的标签
- python - 标记包含字符串的行