Centos密钥登陆,解决云服务器被尝试登陆问题
时间:2022-07-22
本文章向大家介绍Centos密钥登陆,解决云服务器被尝试登陆问题,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1、云主机,每次上都有如下提示(各种被扫描和攻击…)
Last failed login: Tue Dec 12 07:55:36 CST 2017 from 219.146.144.254 on ssh:notty
There were 14011 failed login attempts since the last successful login.
Last login: Mon Dec 11 09:23:25 2017 from 180.110.80.73
研究后发现配置ssh密钥登陆并关闭密码登陆可以解决这个问题.
2、ssh登陆原理简单说明
公钥相当于锁,私钥相当于钥匙。
生成公钥和私钥,并把公钥上传到服务器。以后在客户端登陆时,就可以使用私钥来进行验证。不再需要用户名和密码登陆 ,大大提高了服务器安全性。
3、生成ssh密钥
[root@iZ2zeir6vcnpz8qw3t455tZ ~]# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/ywm/.ssh/id_rsa):
Created directory '/home/ywm/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/ywm/.ssh/id_rsa.
Your public key has been saved in /home/ywm/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:GwDhxaE+rU7GMPDwot0cuIzwZ41jv9NvDjrJ7VSmDkE ywm@iZ2zeir6vcnpz8qw3t455tZ
The key's randomart image is:
+---[RSA 2048]----+
| ooo. |
| . +. |
|o o E |
| = o o . |
|o * + o S o |
|o* B * . * |
|o = &.o+= |
| B o==o.. |
| . +=o+o |
+----[SHA256]-----+
查看生成的密钥.id_rsa是私钥,id_rsa.pub是公钥
[root@iZ2zeir6vcnpz8qw3t455tZ ~]# cd /root/.ssh/
[root@iZ2zeir6vcnpz8qw3t455tZ .ssh]# ls
authorized_keys id_rsa id_rsa.pub known_hosts
将公钥追加到keys文件中
[root@iZ2zeir6vcnpz8qw3t455tZ .ssh]# cat id_rsa.pub >> /root/.ssh/authorized_keys
将权限改为只有当前用户可读可写,保证安全
[root@iZ2zeir6vcnpz8qw3t455tZ .ssh]# chmod 600 authorized_keys
4、打开ssh服务器的密钥登陆功能
# 修改SSH的配置文件/etc/ssh/sshd_config
[root@iZ2zeir6vcnpz8qw3t455tZ ~]# vim /etc/ssh/sshd_config
#PubkeyAuthentication yes
#AuthorizedKeysFile .ssh/authorized_keys
# 去除上面2行前面的注释,保存后重启SSH服务。
[root@iZ2zeir6vcnpz8qw3t455tZ ~]# systemctl restart sshd.service
5、使用windows下的ssh客户端配置密钥连接服务器
新建一个会话,并选择public-key的方式连接
浏览选择刚下载的私钥文件.确定
登陆成功!
6、关闭密码登录
# 修改SSH的配置文件/etc/ssh/sshd_config
[root@iZ2zeir6vcnpz8qw3t455tZ ~]# vim /etc/ssh/sshd_config
PasswordAuthentication yes
修改为:
PasswordAuthentication no
# 保存后重启SSH服务。
[root@iZ2zeir6vcnpz8qw3t455tZ ~]# systemctl restart sshd.service
- 【Ruby on Rails】Model中关于保存之前的原值和修改状态
- 一个很逗的东西——Jd
- SQL Server 数据库清除日志的方法
- 算法模板——平衡树Treap 2
- DTS,DTC, DTB你都认识吗?
- LOJ#6278. 数列分块入门 2
- 1901: Zju2112 Dynamic Rankings
- LOJ#6279. 数列分块入门 3
- 1984: 月下“毛景树”
- 3212: Pku3468 A Simple Problem with Integers
- 1036: [ZJOI2008]树的统计Count
- 2243: [SDOI2011]染色
- 3631: [JLOI2014]松鼠的新家
- 提高hadoop的可靠性(下)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 参数注解所引发的思考
- kali安装webdav服务
- NiFi.java 源码解读
- Spring,Spring MVC及Spring Boot区别
- RunNiFi.java 源码解读
- nifi.sh 脚本解读
- 关于当前PHP脚本运行时系统信息相关函数
- NIFI启动源码解读
- 高并发系统三大利器之降级
- 简单学习PHP中的层次性能分析器
- 常见乱码问题分析
- 深入理解 Vue 模板渲染:Vue 模板反编译
- 彻底搞懂 etcd 系列文章(七):etcd gRPC 服务 API
- NIFI 开发注解详述
- [已解决]java请求爬取https网站报错javax.net.ssl.SSLHandshakeException的解决办法