ubuntu 生成 .pem 证书连接服务器,取消OpenSSH密钥密码认证

亚马逊AWS虚拟服务器使用一个预先生成的 *.pem 证书文件(密钥)为客户端和服务器之间建立连接。

例如:

$ ssh -i ~/ec2.pem ubuntu@12.34.56.78

首先确定你可以以密码的形式连接远程服务器,也可以创建一个非超级管理员用户,并增加 sudo 权限

$ sudo ssh root@12.34.56.78

#生成 .pem 步骤如下:

1.客户端(本地主机 )生成验证没有密码密钥对

$ ssh-keygen -t rsa -b 2048 -v

执行上述命令首先会让你输入生成密钥的文件名:我这里输入的 myPemKey ,之后一路回车。

Generating public/private rsa key pair.
Enter file in which to save the key (/home/anonymouse/.ssh/id_rsa): myPemKey
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in hetzner.
Your public key has been saved in hetzner.pub.
The key fingerprint is:
bb:c6:9c:ee:6b:c0:67:58:b2:bb:4b:44:72:d3:cc:a5 localhost@localhost
The key's randomart image is:

在执行命令的当前目录下会生成一个myPemKey.pub、myPemKey 两个文件。

2. 把生成的 myPemKey.pub 通过本地命令推送到服务器端,使服务器自动添加认证这个证书

$ ssh-copy-id -i ~/myPemKey.pub root@12.34.56.78

输入你的 root 用户密码

3. 测试连接

$ sudo ssh -i ~/myPemKey root@12.34.56.78

或者把 myPemKey 重命名为 myPemKey.pem

$ sudo ssh -i ~/myPemKey.pem root@12.34.56.78

4. 禁用密码连接(注意:要保证 .pem 连接成功的状态下,禁用密码连接)

sudo vi /etc/ssh/sshd_config

找到这一行 #PasswordAuthentication yes

# Change to no to disable tunnelled clear text passwords
# PasswordAuthentication yes

取消前边的 # 注释,改为

PasswordAuthentication no

重启 ssh 服务

sudo service ssh restart

source: http://www.beginninglinux.com/home/server-administration/openssh-keys-certificates-authentication-pem-pub-crt

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值