国内服务器
亚洲服务器
欧洲服务器
北美洲服务器
南美洲服务器
大洋洲服务器
非洲服务器

首页>>云主机

centos使用 SSH-Key 登录远程服务器vps

发表时间:2023-07-17 07:26:28

Secure Shell(安全外壳协议,简称SSH)是一种加密的网络传输协议,可在不安全的网络中为网络服务提供安全的传输环境。SSH通过在网络中创建安全隧道来实现SSH客户端与服务器之间的连接,SSH最多见的用处是远程登录系统,人们通常利用SSH来传输命令行界面和远程履行命令。如果使用弱密码,也是最容易导致服务器遭到攻击要挟的,乃至直接成为“肉鸡”。

ssh 提供两种级别的安全认证:

  1. 基于口令的安全认证
  2. 基于密钥的安全认证

一.基于口令的安全认证,即通常说的root和root密码

centos使用 SSH-Key 登录远程服务器vps

远程主机的 /etc/ssh/sshd_config中的使用密码登录都是默许

需要知道用户名和密码便可登录,该连接是加密的,但客户端不能确认目标主机会不会为“捏造的”,也不能保证口令安全。任何只要知道用户名和密码的人都可以登录远程主机(在没有限制登录IP的情况下)

修改远程主机的 /etc/ssh/sshd_config 为:

PasswordAuthentication yes

重启 sshd 使改动生效:

systemctl restart sshd.service

二. 基于密钥的安全认证

用户持有“公钥/私钥对”,远程服务器持有公钥(public key),本地持有私钥(private key)。

使用公私钥登录时,客户端向服务器发出要求。服务器收到要求以后,先在用户的主目录下找到该用户的公钥,然后对照用户发送过来的公钥。如果一致,服务器用公钥加密“质询”并发送给客户端。客户端收到“质询”后用私钥解密,再发回给服务器。认证结束。

服务器上生成 ssh-key,选加密算法(rsa,dsa等),给秘钥命名(可选):

$ ssh-keygen -t rsa -C "name"

输出类似:
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:tDVwRr0qXXXXXXXXXXXXXXXXX8xm8YQ jxcn2

passphrase是证书口令,最少需要5个字符,以加强安全性,避免证书被歹意复制(默许为空)。

会在 ~.ssh 下生成 id_rsa, id_rsa.pub 两个文件,分别是 私钥/公钥。

公钥需保存到远程服务器 ~/.ssh/authorized_keys 里,私钥由客户端本地保存。

要保证 .sshauthorized_keys 都只有用户自己有写权限。否则验证无效:

$ chmod -R 700 ~/.ssh/
$ chmod 600 ~/.ssh/authorized_keys
#写入公钥
cat id_rsa.pub >>authorized_keys

最后需要将私钥保存到本地。可以安装lrzsz,使用命令 sz id_rsa 保存私钥到本地。最好先看下能否使用密钥登录,然后在禁用密码登录。

centos7 ssh key登录 配置具体实践:

$ vi /etc/ssh/sshd_config

# 禁用root账户登录,非必要,但为了安全性,请配置
PermitRootLogin no

# 会不会让 sshd 去检查用户家目录或相关档案的权限数据,这是为了担心使用者将某些重要档案的权限设错,可能会致使一些问题而至。例如使用者的 ~/.ssh/ 权限设错时,某些特殊情况下会不准用户登入
StrictModes no

# 会不会允许用户自行使用成对的密钥系统进行登入行动,仅针对 version 2。至于自制的公钥数据就放置于用户家目录下的 .ssh/authorized_keys 内
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys

# 有了证书登录了,就禁用密码登录吧,安全要紧
PasswordAuthentication no
#重启ssh服务
service sshd restart

使用xshell登录时

填写用户名 和ssh 端口,并选择public key登录,导入保存的私钥,密码若创建的时候没有填写passphrase,则默许为空。

centos使用 SSH-Key 登录远程服务器vps

桂|哥|网|络www.guIgege.cn

上一篇 下一篇
最新文章

如何提高云服务器的安全系数

香港独立IP空间有什么优势

香港空间影响百度收录吗

为啥要租用美国VPS

VPS的缺点有哪些

香港vps作用在哪里

VPS的优点有哪些

外贸网站为啥选择美国vps

VPS能建多少个网站

VPS要如何选择位置

相关文章

宝塔面板添加站点后没法访问这些方法可帮你解决

美国服务器租用有什么利益?

美国好用的IP服务器:保护您的网络隐私与安全

甚么是服务器漏洞?会造成哪些风险后果

美国租用VPS服务器:解析优势与操作指南

javascript打印三角形的有哪些方法

桂哥网络国际专线,助力企业把握数字化转型时代机遇

WAN、组网、SDWAN:哪些混合广域网适合您的业务?

阿里 云主机ecs

云主机怎么开启openssl

X

截屏,微信识别二维码

微信号:muhuanidc

(点击微信号复制,添加好友)

打开微信

微信号已复制,请打开微信添加咨询详情!