服务器使用ssh秘钥登录并禁止密码登录
问题:
最近在登录服务器的时候,每次都会有提示999+ falied login等字眼,意思就是自己的服务器密码正在被人暴力破解。想象以下,别人有了你的服务器的root登录密码,那么就可以对你的服务器为所欲为。所以为了解决这个问题,不妨采用ssh秘钥登录,并且设置为禁止密码登录。
生成秘钥:
使用命令生成秘钥
ssh-keygen
而后使用命令进秘钥文件重命名为authorized_keys,个人推荐自己在本地生成较长的秘钥后在上传到服务器里替换,这样比较方便而且更安全(秘钥长度更长)
# id_ras.pub 可换成自己用其他软件的生成的秘钥,例如xshell
mv id_rsa.pub authorized_keys
更改文件权限和目录权限:
chmod authorized_keys
# 更改文件目录权限
chmod .ssh
修改配置文件:
这里生成秘钥后,客户端还不能直接使用秘钥登录,还需修改配置文件,使用如下命令:
vim /etc/ssh/sshd_config
将里面的内容修改如下所示:
# PubkeyAuthentication yes 中将#删除,允许秘钥登录 PasswordAuthentication yes 中no修改为no,禁止密码登录
退出并保存;
重启sshd服务,使设置生效:
centos使用以下命令:
# 启动sshd服务
systemctl start sshd.service
#重启sshd服务
systemctl restart sshd.service
#设置sshd服务开机自动运行
systemctl enable sshd.service
Ubuntu使用以下命令:
service ssh restart
到这里,便大功告成,服务器便只允许秘钥登录。
服务器使用ssh秘钥登录并禁止密码登录的更多相关文章
- SSH公钥登录且禁止密码登录及更改默认端口
1.ssh生成公私钥 ssh-keygen -t rsa -C "zhangsan@qq.com" 生成密钥的位置如下,id_rsa是私钥.id_rsa.pub是公钥: ➜ .ss ...
- git乌龟http/https以及ssh clone的秘钥配置永久免密码登录设置
1.安装 安装Git 安装TortoiseGit 乌龟客户端 首先下载安装一个git客户端这个就不多说了基本就是next一直到底 安装后首次新建一个项目project在git服务器上 2.配置 1.注 ...
- SSH使用密钥登录并禁止密码登录
#1 新建用于登录的用户useradd -p `echo "KYmO4ClPt1" | openssl passwd -1 -salt $(< /dev/urandom tr ...
- 在windows上使用ssh秘钥连接git服务器
git部署在centos7上 安装好git后,新建一个用户test(注意要加入git用户组)配置ssh秘钥登录,我的另一篇博客有写配置步骤 重点的地方是在windows系统上使用秘钥登录git服务器 ...
- docker ssh秘钥免密登录
一.概述 有一台跳板机,已经实现了免密登录后端服务器.但是我写了一个django项目,它是运行在容器中的,也需要免密登录后端服务器. 虽然可以在容器中手动做一下免密登录,但是容器重启之后,之前做的设置 ...
- git配置ssh秘钥(公钥以及私钥)linux
本文默认已经安装git,并有github或者gitlab账号 git在linux下安装参考:https://www.cnblogs.com/lz0925/p/10791147.html 在Linux中 ...
- ssh秘钥交换详解与实现 diffie-hellman-group-exchange-sha
ssh的DH秘钥交换是一套复合几种算法的秘钥交换算法.在RFC4419中称为diffie-hellman-groupX-exchange-shaX 的算法(也有另一种单纯的 rsaX-shaX 交换算 ...
- 通过ssh秘钥的方式可以连接上CE68交换机
结论:按照CE68交换机的用户手册中的指导,可以通过ssh 秘钥的方式连接上交换机. 1.先按照eNSP连接到网卡的方式,给CE68配置一个ip地址: 192.168.56.2 2.按照交换机的用户指 ...
- github使用ssh秘钥的好处以及设置(转)
git使用https协议,每次pull,push都要输入密码,使用git协议,使用ssh秘钥,可以省去每次输密码 大概需要三个步骤:一.本地生成密钥对:二.设置github上的公钥:三.修改git的r ...
随机推荐
- C# 特性和索引(C#学习笔记06)
特性 特性(Attribute)是用于在运行时传递程序中各种元素(比如类.方法.结构.枚举.组件等)的行为信息的声明性标签. 特性可以当成一个特殊的类看待 列举特性语法: [attribute(pos ...
- MAC OS系统替换brew.npm, pip 使用阿里云的镜像源
替换brew.git:cd "$(brew --repo)"git remote set-url origin https://mirrors.aliyun.com/homebre ...
- Maven中 jar包冲突原理与解决办法
Maven中jar包冲突是开发过程中比较常见而又令人头疼的问题,我们需要知道 jar包冲突的原理,才能更好的去解决jar包冲突的问题.本文将从jar包冲突的原理和解决两个方面阐述Maven中jar包冲 ...
- BUAA-OO-2019 第二单元总结
第五次作业 本次作业,需要完成的任务为单部多线程傻瓜调度(FAFS)电梯的模拟. 设计策略 先来先服务的单电梯是一个标准的"生产者-消费者"模型.虽然在本次作业中调度器似乎是不必要 ...
- 【转载】C#中SqlConnection类的作用以及常用方法
在C#的数据库编程中,SqlConnection类主要用于连接Sqlserver数据库,使用SqlConnection类的实例方法我们可以打开Sqlserver数据库连接以及获取数据完毕后关闭数据库连 ...
- 40、js技巧(持续更新。。。)
1.深拷贝对象: const a={name:'aaa',age:11} const b=JSON.parse(JSON.stringify(a)) 2.获取数组极值: let list = [1, ...
- Spring Cloud Sleuth 整合
引入Maven依赖 org.springframework.cloud spring-cloud-starter-sleuth 日志发生的变化 当应用ClassPath下存在org.springfre ...
- Java黑科技之源:JVMTI完全解读
Java生态中有一些非常规的技术,它们能达到一些特别的效果.这些技术的实现原理不去深究的话一般并不是广为人知.这种技术通常被称为黑科技.而这些黑科技中的绝大部分底层都是通过JVMTI实现的. 形象地说 ...
- 【异常】微博生成短链异常{"request":"/2/short_url/shorten.json","error_code":"10014","error":"Insufficient app permissions!"}
一.之前的调用方式 这种方式用了大约有一年时间,之前没有问题,但是2019-8-28号突然不行了,可能是由于微博对该接口的调用做了限制.不允许通过传递source参数的方式进行请求 该接口微博API文 ...
- Linux下关于Qt无法调用fcitx的中文输入
1 本机环境: deepin 15.11 Qt 5.11.3 fcitx 输入法 2 问题描述 Qt Creator 和使用 QT 编译的程序运行时均不能使用deepin系统自带的fcitx输入法,且 ...