SSH是我们登录VPS常用的方式,因此SSH账号的安全至关重要。常见的用户名+密码的登录方式很容易受到暴力破解的影响,为了避免影响,我们可以直接禁止用户名+密码登录VPS的方式,改用密钥登录,既保证了安全,又方便快捷。下面就介绍一下配置ssh key登录的方法。

一、PuttyGen以及Putty软件的下载

这一步看似简单,其实有着至关重要的作用。大家一定要到官方网站进行下载(putty官网可能被墙,请科学上网),一些中文版及不安全链接下载的软件可能会存有后门,带来极大的安全隐患。

我们需要下载的是putty.exe和puttygen.exe两个程序

二、密钥的生成

首先利用用户名+密码登录VPS,在终端中利用以下命令生成RSA密钥

[plain] view plain copy
  1. ssh-keygen -t rsa

生成密钥时选择默认位置即可,同时可以选择为密钥增加密码(设置密码后,使用密钥时还需要输入密码)

进入密钥生成的目录,可以看见两个文件id_rsa和id_rsa.pub,将这两个文件下载下来,保存好为后面做准备。

在密钥生成的目录中将其重命名,并且设置权限

[plain] view plain copy
  1. mv id_rsa.pub authorized_keys
  2. chmod 600 authorized_keys

编辑sshd_config,将RSAAuthentication和PubkeyAuthentication两行前面的 # 去掉

[plain] view plain copy
  1. vi /etc/ssh/sshd_config

为了安全还可以修改默认的SSH端口,找到#port 22,去掉前面的#,然后修改port后的数字。

保存后重启SSHD服务(CentOS7中为systemctl restart sshd.service)

[plain] view plain copy
  1. /etc/init.d/sshd restart

注:CentOS7中的firewall配置

firewall中默认ssh端口为22,在修改端口后需要对其进行设置才能正常登录

复制 firewalld 有关 sshd 的配置文件:

[plain] view plain copy
  1. cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/
[plain] view plain copy
  1. vi /etc/firewalld/services/ssh.xml

修改<port protocol="tcp" port="22"/>将“22”改为所需的端口

保存后重载sshd服务

[plain] view plain copy
  1. firewall-cmd --reload

三、密钥配置

打开puttygen.exe软件,将下载的id_rsa文件载入(Load),如果刚才设置了密码,则需要输入密码才能载入,载入成功后如图

同样,在Key passphrase中可以设置密钥的密码,如不想设置,直接点击Save private key即可,根据提示保存为*.ppk文件

四、Putty客户端配置

打开putty客户端,输入VPS的IP地址和SSH连接的端口号

进入SSH选项,点击Browse选择刚才保存的*.ppk文件

然后返回Session选项,点击Load保存配置。

正常进行登录,若刚才设置了密钥密码,则输入密码后可以正常登录

最后,修改sshd_config,将PasswordAuthentication后面的yes改成no,并且重启SSHD(CentOS7中为systemctl restart sshd.service)

[plain] view plain copy
  1. vi /etc/ssh/sshd_config
  2. /etc/init.d/sshd restart

到这里设置就完成了

最后,一定要保存好自己的密钥,任何拿到该密钥的人都可以登录你的root账户,建议还是为密钥设置密码以防万一。遇到问题查看/var/log。

No supported authentication methods available [preauth]
Feb  2 01:30:07 ip-172-31-8-90 su: pam_unix(su:session): session closed for user easy.yan
Feb  2 01:31:08 ip-172-31-8-90 sshd[6084]: Authentication refused: bad ownership or modes for directory /home/easy.yan/.ssh
Feb  2 01:31:09 ip-172-31-8-90 sshd[6084]: Received disconnect from 58.177.123.225: 11: No supported authentication methods available [preauth]Authentication refused: bad ownership or modes for directory /home/easy.yan/.ssh

注意keys 文件权限要600. /home/XX/.ssh 权限要600. ower to XX

CentOS设置SSH Key登录相关推荐

  1. CentOS设置ssh密钥登录

    2019独角兽企业重金招聘Python工程师标准>>> CentOS设置ssh密钥登录 centos 系统安全防御 2017年12月2日 329 0 0 一.生成密钥对(两种方式)并 ...

  2. gitHub设置SSH Key

    原文地址 设置SSH Key 在注册好github账号后,打开你的电脑桌面上的一个文件夹,这就建立了一个本地工作库,在里面点击鼠标右键,找到你的git bash here-点击开,如图所示:进行下面操 ...

  3. Linux创建新用户并设置SSH证书登录

    创建用户 要在Linux下创建一个新的用户,需要登录到root用户或是具有sudo权限的用户中,然后使用useradd命令创建用户: # 若登录root用户则无需使用sudo $ sudo usera ...

  4. linux服务器无密码登录不了,设置ssh无密码登录linux服务器的方法

    每次登录测试服务器,ssh登录总是需要输入密码.登录的少还行,登录的多了,多一行命令都是多余的. rsa认证登录方式 制作密钥对 在客户端(本地机器)终端下输入以下命令 ssh-keygen -t [ ...

  5. 设置 SSH Key,添加公钥和私钥

    设置 SSH Key 可以参考码云帮助中心:生成/添加SSH公钥 ssh-keygen -t rsa -C "your_email@example.com" 填写邮箱,这个邮箱不一 ...

  6. CentOS设置ssh连接的方法

    2019独角兽企业重金招聘Python工程师标准>>> 在做项目时由于公司局域网采用自动获取IP的方式,导到每次服务器重启主机IP都会变化.为了解决这个问题,我参考了http://b ...

  7. CentOS配置ssh无密码登录

    前提配置:使用root登录修改配置文件:/etc/ssh/sshd_config,将其中三行的注释去掉,如下: 然后重启ssh服务:service sshd restart.最后退出root,以下所有 ...

  8. CentOS配置ssh无密码登录的注意点

    前提配置:使用root登录修改配置文件:/etc/ssh/sshd_config,将其中三行的注释去掉,如下: 然后重启ssh服务:service sshd restart.最后退出root,以下所有 ...

  9. Mac Git 如何设置ssh key

    前言 GitHub(或者GitLab之类的远程的Git仓库)通常会提供https和ssh两种操作方式给用户,https的方式每次认证都需要输入密码,而ssh的方式则需要在服务器上配置ssh key(s ...

  10. Linux服务器设置ssh私钥登录

    服务器居然被黑客通过暴力ssh破解并进行挖矿,本篇文章将讲述如何创建用户私钥,并关闭ssh密码登录 文章目录 1. 创建新用户并创建私钥 2. 对已存在的用户创建私钥 3. 关闭ssh密码登录功能 1 ...

最新文章

  1. maven web project打包为war包,目录结构的变化
  2. return 和 exit
  3. [SDOI2011]染色
  4. Android 缓存目录 Context.getExternalFilesDir()和Context.getExternalCacheDir()方法
  5. QDoc建立连结creatinglinks
  6. Android 将混淆后的堆栈信息恢复
  7. 都说Hadoop与大数据平台难懂?我就花了6分钟,但是看得明明白白
  8. 大数据有哪些特点和作用
  9. android电视自动关机,Android定时关机问题解决
  10. Mac xelatex
  11. RGB格式学习:RGBx、xRGB、RGBA、ARGB等格式转换成RGB
  12. Matlab更改工作路径的方法及思考
  13. 输入任意一个字符串,判断这个字符串是否是回文,回文示例: 上海自来水来自海上
  14. 【MySQL 数据库 进阶】 面试考题两大查询 (聚合查询,联合查询)
  15. 单片机18b20c语言程序,单片机c语言ds18b20程序
  16. 联想笔记本上Ubuntu无线网卡问题
  17. 青龙面板--花花阅读
  18. 云端极简部署Svelte3聊天室
  19. 计蒜客信息学3月普及组模拟赛
  20. Elasticsearch04:ES集群监控管理工具-cerebro

热门文章

  1. 线性代数之 伪逆矩阵
  2. python名字起源_你知道这些编程语言名字的由来吗
  3. 【React源码】(十八)React 算法之调和算法
  4. 搜索习题-传教士与野人问题
  5. php 设置针式打印机纸张,针式打印机设置方法 针式打印机打印连续纸设置技巧【图文】...
  6. css 设置打印a4,CSS设置A4纸大小。
  7. celeste第二章_《蔚蓝(Celeste)》全水晶之心收集攻略
  8. 移动通信网络规划:D2D通信技术
  9. 换个服务器后网页加载很慢,打开网页很缓慢?换个DNS轻松解决问题
  10. 查重有风险,小心论文被买卖!——iThenticate官方论文查重系统登录中国!