先安装:yum install openssh*
SSH是我们登录VPS常用的方式,因此SSH账号的安全至关重要。常见的用户名+密码的登录方式很容易受到暴力破解的影响,为了避免影响,我们可以直接禁止用户名+密码登录VPS的方式,改用密钥登录,既保证了安全,又方便快捷。下面就介绍一下配置ssh key登录的方法。
**一、PuttyGen以及Putty软件的下载**
这一步看似简单,其实有着至关重要的作用。大家一定要到官方网站进行下载([putty官网](http://www.putty.org/)可能被墙,请科学上网),一些中文版及不安全链接下载的软件可能会存有后门,带来极大的安全隐患。
我们需要下载的是putty.exe和puttygen.exe两个程序

**二、密钥的生成**
首先利用用户名+密码登录VPS,在终端中利用以下命令生成RSA密钥
**[plain]** [view plain](http://blog.csdn.net/keneuro/article/details/47724939# "view plain") [copy](http://blog.csdn.net/keneuro/article/details/47724939# "copy")
1. ssh-keygen -t rsa

生成密钥时选择默认位置即可,同时可以选择为密钥增加密码(设置密码后,使用密钥时还需要输入密码)
进入密钥生成的目录,可以看见两个文件id_rsa和id_rsa.pub,将这两个文件下载下来,保存好为后面做准备。

在密钥生成的目录中将其重命名,并且设置权限
**[plain]** [view plain](http://blog.csdn.net/keneuro/article/details/47724939# "view plain") [copy](http://blog.csdn.net/keneuro/article/details/47724939# "copy")
1. mv id_rsa.pub authorized_keys
2. chmod 600 authorized_keys
编辑sshd_config,将RSAAuthentication和PubkeyAuthentication两行前面的 # 去掉
**[plain]** [view plain](http://blog.csdn.net/keneuro/article/details/47724939# "view plain") [copy](http://blog.csdn.net/keneuro/article/details/47724939# "copy")
1. vi /etc/ssh/sshd_config

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

保存后重启SSHD服务(CentOS7中为systemctl restart sshd.service)
**[plain]** [view plain](http://blog.csdn.net/keneuro/article/details/47724939# "view plain") [copy](http://blog.csdn.net/keneuro/article/details/47724939# "copy")
1. /etc/init.d/sshd restart
注:CentOS7中的firewall配置
firewall中默认ssh端口为22,在修改端口后需要对其进行设置才能正常登录
复制 firewalld 有关 sshd 的配置文件:
**[plain]** [view plain](http://blog.csdn.net/keneuro/article/details/47724939# "view plain") [copy](http://blog.csdn.net/keneuro/article/details/47724939# "copy")
1. cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/
**[plain]** [view plain](http://blog.csdn.net/keneuro/article/details/47724939# "view plain") [copy](http://blog.csdn.net/keneuro/article/details/47724939# "copy")
1. vi /etc/firewalld/services/ssh.xml
修改将“22”改为所需的端口
保存后重载sshd服务
**[plain]** [view plain](http://blog.csdn.net/keneuro/article/details/47724939# "view plain") [copy](http://blog.csdn.net/keneuro/article/details/47724939# "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](http://blog.csdn.net/keneuro/article/details/47724939# "view plain") [copy](http://blog.csdn.net/keneuro/article/details/47724939# "copy")
1. vi /etc/ssh/sshd_config
2. /etc/init.d/sshd restart

到这里设置就完成了
**最后,一定要保存好自己的密钥,任何拿到该密钥的人都可以登录你的root账户,建议还是为密钥设置密码以防万一。**
- 前端
- 技巧汇总
- 构建 Node + Webpack + React 热加载开发环境
- React
- Redux
- Webpack
- ES6
- HTML5+CSS3
- Javascript
- JS超简洁拖动代码
- jQuery
- 后端
- 技巧汇总
- 代码中特殊的注释技术——TODO、FIXME和XXX的用处
- PHP
- Xdebug不解之谜
- PHP时间获取
- PHP递归优化 使用匿名函数进行递归
- PHP 发起POST请求
- PHP获得数组的交集与差集
- PHP递归获取下级数组,可指定ID,一维数组
- PHP 判断是否为Get/Post/Ajax提交
- PHP实现分流队列平均显示信息
- PHP多维数组 指定列排序
- PHP 类Class详解 笔记记录
- PHP取整函数详解
- Node
- Elasticsearch
- 数据库
- 技巧汇总
- Mysql
- Mysql分区表实现
- Mysql union与union all 查询
- Mysql 表中表查询
- Mysql 分组查询 与 分组条件查询
- MySQL 添加列,修改列,删除列
- Mysql优化之:构建海量表,定位慢查询
- Mysql优化之:表的设计满足3NF
- Mysql优化常见方法
- Mysql存储过程详解
- 运维
- 技巧汇总
- Linux
- Linux Centos系统下 设置代理服务器上网
- Centos7增加开机启动脚本
- centos 挂载windows共享目录
- CentOS设置SSH Key登录
- Linux/CentOS单网卡绑定多个IP
- Windows
- Win10开机启动项设置全解攻略
- PuTTY连接Linux服务器经常断线解决方案
- Docker
- Docke启动文件 docker-compose.yml
- Docker命令简介(未完)
- Docker闲杂笔记
- Apache
- Nginx
- Nginx配置upstream实现负载均衡
- Nginx负载均衡学习
- IDE
- 技巧汇总
- WebStorm
- PHPStorm
- 协作
- 技巧汇总
- Git
- git 放弃本地修改 强制更新
- git编译安装与常用命令
- Svn
