一、环境
CentOS 7.4
xshell 6

二、介绍
远程ssh连接服务器 默认是用的密码验证的方式,而且还是root账号,这样的验证方式会有安全隐患,容易被人暴力破解root密码。如果改成用密钥登陆服务器,就会消除这一安全隐患。

三、设置方法
1、xshell生成密钥

打开xshell,点击工具-新建用户密钥生成向导,如图:
这里的密钥类型和密钥长度保持默认,单击下一步:
继续单击下一步:
输入密钥名称,然后给密钥设置加密的密码,建议设置成复杂密码,这样即使密钥被别人获取,别人也无法使用。因为使用密钥需要输入密码。
点击完成:
这里显示出了刚才生成的密钥。点击关闭。
生成的密钥包括公钥和私钥。需要将其中的公钥上传至服务器。
所以需要导出公钥。
在xshell窗口点击-工具-用户密钥管理者,如图:
双击之前生成的密钥 51anidea :
点击公钥选项卡:
单击保存为文件:
将公钥文件 51anidea.pub 保存至电脑。

2、设置服务器

将51anidea.pub公钥文件 上传到 /root/.ssh/ 目录下。
进入/root/.ssh/ 目录,执行以下命令:
#cat 51anidea.pub >> authorized_keys
#chown root:root authorized_keys
#chmod authorized_keys
禁止用用户名密码的方式登陆服务器:
编辑ssh配置文件
#vi /etc/ssh/sshd_config
更改以下内容
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication no #保存退出
重启sshd服务以生效:
#service sshd restart

3、xshell密钥连接

打开xshell,点击文件-新建:
主机一栏填写服务器的ip地址,然后点击左侧的用户身份验证:
然后点击方法一栏的下拉框,选择Public Key,用户名填 root,密码填加密密钥的密码:
点击连接,即可用密钥登陆上服务器。
而用用户名密码的方式将不能登陆服务器。
以上就是xshell使用密钥登陆阿里云服务器的设置方法。如有问题欢迎回帖沟通

抄自于:https://www.51anidea.com/forum.php?mod=viewthread&tid=168&extra=page%3D1

xshell使用密钥登陆linux的更多相关文章

  1. 【Linux】Xshell 配置密钥登陆

    设置不需要密码登陆 vim /etc/ssh/sshd_config 在配置文件中参数的意义 PubkeyAuthentication yes #启用公告密钥配对认证方式 AuthorizedKeys ...

  2. 密钥登陆Linux服务器

    Linux VPS/服务器的使用越来越多,Linux的安全问题也需要日渐加强.我们远程线上的服务器,通常是通过密码方式(ip+帐号+密码,可能还多一个ssh端口)登录,如果密码不够强壮,那么系统将是灰 ...

  3. Xshell设置密钥登录确保Linux

    用Xshell设置密匙登陆服务器, 第一步.使用Xshell生成密钥 我们打开熟悉的XSHELL软件,然后在工具-新建用户密钥生成向导. 到了生成密钥参数界面,我们这里需要选择RSA密钥类型,以及密钥 ...

  4. SSH免密钥登陆

    local ipaddress:10.47.39.7:remote ipaddress:10.47.39.8 1.生成公钥和私钥 [root@local ~]# ssh-keygen -t rsa  ...

  5. Linux实现密钥登陆

    公司为了安全,一直都采用密钥登陆远程SSH,现在有了自己的服务器,自己又学者配了一把,下面就是配置笔记. 1.登陆未设置密钥的Linux服务器 2.工具新建用户密钥生成向导 3.选择生成密钥的加密方式 ...

  6. windows下使用密钥登录Linux及xshell代理转发

    1.密钥登录原理 一般我们使用xshell访问远程主机(Linux主机)时,都是先请管理员给我们开一个账户,即为我们设置一个一个用户名和对应的密码,然后我们就可以使用下面的方式登录到远程主机了: 在这 ...

  7. Linux SSH 使用密钥登陆

    Linux SSH 使用密钥登陆 通常我们登录 Linux 服务器,我们需要使用密码进行登录,但是密码存在被暴力破解的可能. 可以将默认服务端口 22 改成其他不常用的端口. 可以设置非常复杂的密码. ...

  8. Linux 配置SSH 无密钥登陆

    根据SSH 协议,每次登陆必须输入密码,比较麻烦,SSH还提供了公钥登陆,可以省去输入密码的步骤. 公钥登陆:用户将自己的公钥存储在远程主机上,登陆的时候,远程主机会向用户发送一串随机字符串,用户用自 ...

  9. linux无密钥登陆

    1.在用户目录下执行命令 ssh-keygen -t rsa 一路回车: 2.在当前用户目录下,进入.ssh文件夹(.ssh文件夹为隐藏文件夹,直接进去即可). 在.ssh文件夹下执行命令: cat ...

随机推荐

  1. laravel 错误提示Fatal Error: Class 'Pheanstalk\Pheanstalk' not found

    本地环境版本: composer -V Composer version -- ::10 php artisan -V Laravel Framework 5.6.39 错误提示: Fatal Err ...

  2. Java内省机制

    转自: https://blog.csdn.net/hahalzb/article/details/5972421 1.java内省机制其实通俗的理解为,对自身的进行一个扫描,这个扫描的对象就是我们普 ...

  3. Java程序第二次作业

    1.编写“人”类及其测试类.1.1 “人”类: 类名:Person 属性:姓名.性别.年龄.身份证号码 方法:在控制台输出各个信息1.2 测试类 类名:TestPerson 方法:main ...

  4. Web 建站技术中,HTML、HTML5、XHTML、CSS、SQL、JavaScript、PHP、ASP.NET、Web Services 是什么(转)

    Web 建站技术中,HTML.HTML5.XHTML.CSS.SQL.JavaScript.PHP.ASP.NET.Web Services 是什么?修改 建站有很多技术,如 HTML.HTML5.X ...

  5. CentOS7查看和关闭防火墙

    CentOS 7.0默认使用的是firewall作为防火墙 1.查看防火墙状态 firewall-cmd --state2.停止firewall systemctl stop firewalld.se ...

  6. 通过企业微信API接口发送消息

    最近给公司测试组内部开发一个记账小工具,当账目出现问题的时候需要发送消息通知大家,前期主要采用的QQ发送通知消息,但是有一天突然无法连接到QQ服务器,运维的同学建议采用微信的方式对接然后进行告警,所以 ...

  7. (C#)生成指定长度的随机字符串的通用方法

    .NET(C#)生成指定长度的随机字符串的通用方法,此方法可以指定字符串的长度,是否包含数字,是否包含符号,是否包含小写字母,是否包含大写字母等, 源码: #region 生成指定长度的随机字符串 / ...

  8. nil和Nil及NULL的区别(仅作记录)

    今天在研究红黑树的时候一直提到一个NIL节点,百度了一下,这里仅作记录 nil是一个对象值,如果要把一个对象设置为空的时候就用nil.Nil是一个类对象的值,如果要把一个Class类型的对象设置为空的 ...

  9. Django-Form组件之字段

    Form类 创建Form类时,主要涉及到 [字段] 和 [插件],字段用于对用户请求数据的验证,插件用于自动生成HTML; 1.Django内置字段如下: 1 2 3 4 5 6 7 8 9 10 1 ...

  10. CentOS7下安装Python3并保留Python2

    1. 安装make编译指令的依赖环境 # yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel ...