ssh免密码登录配置详解

前言


目前有客户端C和服务器S两台主机,希望让C的root用户免密码登录到S的test用户,原理为:如果想让C登录到S,则将C的公钥送给S,并将该公钥添加至S的认证文件。具体可分如下几步进行:

在客户端生成非对称密钥对


执行:ssh-keygen -t rsa ,默认会在客户端C的root用户目录下生成.ssh文件夹,并在文件夹下生成id_rsa(私钥)和
id_rsa.pub(公钥)

将客户端公钥上传至服务端.ssh目录


执行:scp  ~/.ssh/id_rsa test@server_ip:~/.ssh,将客户端C的公钥文件上传至服务端的.ssh目录下,并修改服务端的.ssh目录权限:chmod 700 .ssh

将服务端获取到的客户端公钥添加至认证文件authorized_keys


执行:cat id_rsa.pub >> authhorized_keys ,将客户端的公钥添加至认证文件末尾

上述步骤执行完后,配置结束,反之亦然。
执行:ssh test@server_ip 可以从客户端免密钥登录到服务端

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SSH是一种安全的加密协议,使用它可以远程登录到服务器进行操作。如果我们每次登录都需要输入密码,那么日常工作效率会受到很大影响。为了解决这个问题,我们可以使用SSH Key来完成密码登录SSH Key是一种加密的钥匙对,由公钥和私钥两部分组成。公钥存放在服务器上,私钥留存在客户端,并且需要加密保护。当客户端登录到服务器时,服务器会向客户端发送一个用于验证身份的随机字符串,客户端使用私钥对该字符串进行加密,然后发送给服务器。服务器收到加密后的字符串后,使用事先存放的公钥进行解密。如果解密成功,那么就说明客户端是合法的,并且可以顺利登录到服务器上。 下面是配置SSH Key的步骤: 1. 在客户端上生成SSH Key。打开终端窗口,输入命令 ssh-keygen -t rsa,按照提示输入私钥密码并确认即可。生成的公钥和私钥文件存放在~/.ssh目录下。 2. 将公钥添加到服务器上。使用命令ssh-copy-id -i ~/.ssh/id_rsa.pub user@hostname,其中user为服务器上的用户名,hostname为服务器的IP地址或域名。 3. 配置SSH客户端。打开~/.ssh/config文件,添加以下内容: Host hostname HostName hostname User user IdentityFile ~/.ssh/id_rsa 其中hostname和user分别为服务器的IP地址或域名和用户名,IdentityFile指定私钥文件的路径。 配置完成后,就可以使用ssh命令密码登录到服务器了。如果您的私钥没有加密保护,则登录时不需要输入密码;如果私钥受到加密保护,则需要输入密码来解密私钥。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值