通过ssh特定账户的密钥访问远程host

分为以下几个步骤
1.local host生成RSA公有密钥和私有密钥
2.local host私有密钥配置
3.将公有密钥发送至remote host并配置

步骤1:
本机执行
$ssh-keygen -t rsa
可填写密钥名,如vps_rsa.
passphrase可直接按enter。
结束后可使用以下命令查看生成的私有密钥和公有密钥
$ls ~/.ssh/
里面的vps_rsa 和vps_rsa.pub分别为私有和公有密钥。

步骤2:配置该步骤后可以不用每次在执行ssh连接远程host的适合指定私有密钥路径。
如果在~/.ssh/目录下没有叫config的文件,新建。
$vim config
然后编辑以下内容(例),每一行根据自己的情况设置, 最后一行是生成的私有密钥路径。
Host vps
HostName ***.***.***.***
User  username
IdentityFile "~/.ssh/vps_rsa"
chmod 600 config

步骤3:
将公有密钥从local发送到remote的host,
//local 执行
$cd ~/.ssh
$scp -P 22 vps_rsa.pub username@***.***.***.***:
此处的usrname和ip与步骤2中配置的一致,都是远程host的。
执行完后用平常的ssh方式登陆到远程host,会发现在home路径下收到了vps_rsa.pub这个文件。
然后将该文件移动到~/.ssh/并重命名为authorized_keys
//remote执行
$cd ~
$mkdir .ssh 
$chmod 700 .ssh  
$mv vps_rsa.pub .ssh/authorized_keys
$chmod 600 ~/.ssh/authorized_keys 

步骤4(optional)
禁用ssh密码登录,增强安全性。
remote端运行
# /etc/ssh/sshd_config
设置
PChallengeResponseAuthentication no
PasswordAuthentication no
UsePAM no
保存后
# /etc/init.d/sshd restart

以上配置完成。就可以通过local host上执行
$ssh vps
来以配置的username身份登陆到远程host,而且不用输入用户密码。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值