SSH之密钥登陆

简介:

 1.背景介绍

 平时我们都是通过输入账号和密码的方式登陆远程终端,那有没有其他的玩法呢?答案是:当然有!下面就介绍一种通过密钥的方式登陆ssh。

  工具准备:一台电脑(推荐win10),一台虚拟机(推荐vmware workstation11),ssh登陆工具(xshell,securecrt,putty,推荐xshell),linux系统(redhat,centos,debian,ubuntu,推荐centos7.3)。

  下面开始动手操作。

 2.实验步骤

  假设你已经通过ssh工具登陆上了linux终端。

 (1)生成公钥和私钥

    ssh-keygen -t rsa

    Enter file in which to save the key (/root/.ssh/id_rsa): ##直接回车使用默认路径

    Created directory '/root/.ssh'.

    Enter passphrase (empty for no passphrase): ##输入密码

    Enter same passphrase again: ##重复密码

    在/root/.ssh/目录下会生成两个文件,id_rsa为私钥,id_rsa.pub为公钥。私钥自己下载到本地电脑妥善保存,公钥则可以任意公开。

 (2)下载私钥到windows

    sz /root/.ssh/id_rsa 

    如果没有请安装软件包lrzsz(yum install -y lrzsz)

 (3)导入公钥

     cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys

 (4)更改SSH配置文件

    修改SSH 的配置文件/etc/ssh/sshd_config,找到下面3行:

    #RSAAuthentication yes

    #PubkeyAuthentication yes

    #AuthorizedKeysFile .ssh/authorized_keys

    将前面的#去掉后保存。重启SSH 服务,运行命令:systemctl restart sshd

 (5)xshell配置(看图)

  1.新建一个会话

wKioL1lGbNfjS8qCAAA2qLNZG38291.png

  2.选择身份验证方式

wKiom1lGbE2SbBAXAACjG108pu8840.png

  3.导入私钥

wKioL1lGbE3ib5diAAAXTmh0xs0435.png

  4.输入自己设定的密码

wKiom1lGbE6DNRy_AAAXAvHyMeI031.png

  5.确定用户密钥

wKioL1lGbE7igbfaAAAWYyYqkes984.png

  6.输入密码

wKiom1lGbE7Cid4-AABHzH6ldYQ501.png

 7.选择相应的会话

wKiom1lGbE-AJiCNAABIF5tmaKc836.png

  8.成功登陆

wKioL1lGbE-z5MncAABJUsBJyP8740.png

 (6)关闭SSH密码登陆

    修改SSH的配置文件/etc/ssh/sshd_config,找到下面1 行:

    PasswordAuthentication yes

    修改为:

    PasswordAuthentication no

    重启SSH服务,并运行命令:

    systemctl restart sshd 

     



本文转自 PowerMichael 51CTO博客,原文链接:http://blog.51cto.com/huwho/1939536,如需转载请自行联系原作者

相关文章
|
7天前
|
消息中间件 安全 Unix
SSH配置多台服务器之间的免密登陆以及登陆别名
SSH配置多台服务器之间的免密登陆以及登陆别名
18 1
|
3月前
|
Linux 网络安全
CentOS7服务器SSH登陆时自动显示服务器基础信息
CentOS7服务器SSH登陆时自动显示服务器基础信息
42 0
|
8月前
|
JSON Linux 网络安全
【全面解析】Windows 如何使用 SSH 密钥远程连接 Linux 服务器
【全面解析】Windows 如何使用 SSH 密钥远程连接 Linux 服务器
393 2
|
3月前
|
人工智能 Ubuntu 安全
如何在 Ubuntu 20.04 上设置 SSH 密钥
SSH是一种加密协议,用于管理服务器并与服务器通信。使用 Ubuntu 服务器时,我们将大部分时间花在通过 SSH 连接到服务器的终端会话上。 下来将重点关注为 Ubuntu 20.04 安装设置 SSH 密钥,SSH 密钥提供了一种安全的登录服务器的方式。
195 0
|
3月前
|
安全 Linux 网络安全
服务器设置 SSH 通过密钥登录
服务器设置 SSH 通过密钥登录
|
8月前
|
安全 网络安全 开发工具
为什么Git需要配置ssh密钥,怎么配置?
如果不设置 ssh 公钥每次提交代码就要输入你的帐号密码。如果设置了公钥之后你的机器和 github或者gitee 通信的时候, github或者gitee可以通过公钥识别出你是可信赖用户,这样就不需要每次 git 和 github或者gitee 通信的时候都要输入密码了。
126 0
|
8月前
|
安全 网络安全 数据安全/隐私保护
如何在远程 SSH 服务器中创建和添加 SSH 密钥?
如何在远程 SSH 服务器中创建和添加 SSH 密钥?
638 1
如何在远程 SSH 服务器中创建和添加 SSH 密钥?
|
8月前
|
网络安全
GitHub 配置 SSH 密钥(详细流程)
GitHub 配置 SSH 密钥(详细流程)
419 0
|
8月前
|
网络安全
GitLab 配置 SSH 密钥(详细流程)
GitLab 配置 SSH 密钥(详细流程)
1404 0
|
9月前
|
Linux 网络安全 数据安全/隐私保护
Linux 使用ssh密钥认证方式登陆另一台linux服务器
Linux 使用ssh密钥认证方式登陆另一台linux服务器