ssh密钥登录

前言

 如果一台linux服务器开启了ssh服务,外界就可以通过试探端口来尝试连接该服务器;这样相当于把接口暴露在外面,是不太安全的。
 有什么办法去解决这种问题了?

解决办法

1.修改ssh默认的22端口

不太行。通过扫描工具可以得知一台服务器开启了哪些端口,每个端口都是干什么的;

2.给服务器设置防火墙

设置特定的ip才能登录,或者设置端口转发从公网连接到私网中的服务器。
好处:的确解决了安全问题
坏处:设置太麻烦,速度慢,不灵活

3.私钥对验证

在客户机上创建密钥对,生成一个私钥和公钥文件,将公钥文件上传到服务器
在这里插入图片描述

注意:将公钥放在哪个用户的家目录公钥数据库中,就是以哪个用户登录服务器,且不需要密码。

具体操作

1.客户端生成密钥对

#客户端
ssh-keygen -t rsa

在这里插入图片描述
在这里插入图片描述

2.将公钥文件上传到服务器

scp id_rsa.pub root@192.***.***.***:/root/

3.在服务器中将公钥文件内容,添加到指定文件中

mkdir .ssh

cat id_rsa.pub >> .ssh/authorized_keys(文件名固定不能写错)

#不让其他用户可读
chmod 600 authorized_keys

4.修改服务端ssh配置文件

vi /etc/ssh/sshd_config

在这里插入图片描述

5.其他设置

在这里插入图片描述

windows充当客户端的时候

需要将私钥下载到客户端,修改用户验证方式 从 密码验证Public Key

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值