tsumiki

导航

SSH

一.SSH服务

1)SSH服务的概念和优点

SSH(Secure Shell)是一种安全通道协议,主要用来实现字符界面的远程登录、远程 复制等功能。SSH 协议对通信双方的数据传输进行了加密处理,其中包括用户登录时输入的用户口令,SSH 为建立在应用层和传输层基础上的安全协议。对数据进行压缩,加快传输速度。

优点:

数据传输是加密的,可以防止信息泄漏

数据传输是压缩的,可以提高传输速度

 

2)常见协议

OpenSSH 是实现SSH协议的开源软件项目,适用于各种UNIX、 Linux 操作系统。

Centos 7系统默认已安装openssh相关软件包,并将sshd 服务添加为开机自启动。

执行"systemctl start sshd"命令即可启动sshd 服务

sshd 服务默认使用的是TCP的22端口,安全协议版本sshv2,出来2之外还有1(有漏洞)ftp 20 21

sshd服务的默认配置文件是/etc/ssh/sshd_config ssh_config和sshd_config都是ssh服务器的配置文件,二者区别在于前者是针对客户端的配置文件,后者则是针对服务端的配置文件。

 

3)原理

 

①客户端发起链接请求

②服务端返回自己的公钥,以及一个会话ID(这一步客户端得到服务端公钥)

③客户端生成密钥对

④客户端用自己的公钥异或会话ID,计算出一个值Res,并用服务端的公钥加密

⑤客户端发送加密值到服务端,服务端用私钥解密,得到Res

⑥服务端用解密后的值Res异或会话ID,计算出客户端的公钥(这一步服务端得到客户端公钥)

⑦双方各自持有三个秘钥,分别为自己的一对公、私钥,以及对方的公钥,之后的所有通讯都会被加密

 

4)用户登录

4.1 ssh【远程主机名】@【远程服务器主机名或者ip地址】 -p port

ssh命令 -p 端口号
当在 Linux 主机上远程连接另一台 Linux 主机时,如当前所登录的用户是 root 的话,当连接另一台主机时也是用 root 用户登录时,可以直接使用 ssh IP,端口默认即可,如果端口不是默认的情况下,需要使用-p 指定端口
 

 

 4.2 ssh -l [远程主机用户名] [远程服务器主机名或IP 地址] -p port

-l : 指定登录名称

 4.3  ssh -t 20.0.0.101 ssh -t 20.0.0.102 ssh 20.0.0.103 方便跳板连接

 

5)服务器的配置

5.1 端口号配置

 修改完后重启服务

 

5.2 监听某个 ip地址

listenAddress ip

监听地址设置SSHD服务器绑定的IP 地址,0.0.0.0 表示侦听所有地址安全建议:如果主机不需要从公网ssh访问,可以把监听地址改为内网地址 这个值可以写成本地IP地址,也可以写成所有地址,即0.0.0.0 表示所有IP。

 

5.3 设置最大尝试登录次数

 

5.4 禁止 root 用户登录

 

5.5 黑白名单

在 /etc/ssh/sshd_config 中直接添加

 

白名单:

AllowUsers Alice@20.0.0.100  Jubjub

允许所有主机访问 Jubjub 这个用户

只允许20.0.0.100 访问 Alice这个用户

 

黑名单:

DenyUsers Jubberwock

不允许 Jubberwock 的所有主机访问我

 

5.6 常用配置

LoginGraceTime 2m

设定用户登录失败后需要等待的时间

 

PermitRootLogin yes

默认 ubuntu 不允许root 远程ssh 登录

 

StrictModes yes

检查 ./ssh 文件的所有者和权限

 

MaxAuthTries

用来设置最大失败尝试登录次数

 

MaxSession 【number】

同一个连接最大会话

 

PubkeyAuthentication yes

基于key验证

PermitEmptyPasswords no      
密码验证,在真实的生产服务器上,根据不同安全级别要求,有的是设置不需要密码登陆的,通过认证的秘钥来登陆。
 
 
PasswordAuthentication yes  
基于用户名和密码连接
 
GatewayPorts no
 
ClientAliveInterval 10
单位:秒
 
ClientAliveCountMax 3
默认3
 
UseDNS yes
提高速度可改为no 内网改为no 禁用反向解析
 
GSSAPIAuthentication yes 提高速度可改为no
MaxStartups    未认证连接最大值,默认值10
Banner /path/file
 
以下可以限制可登录用户的办法 白名单 黑名单
AllowUsers user1 user2 user3@ip(限制主机)
DenyUsers user1 user2 user3
AllowGroups g1 g2
DenyGroups g1 g2

 

 

 

posted on 2023-08-06 15:27  Tsumiki  阅读(78)  评论(0)    收藏  举报