目录
SSH服务
定义
优点
客户端和服务端
SSH服务端服务功能
SSH服务的开启、端口号和配置文件
SSH服务的开启
端口号
配置文件
作用
服务端常见配置
服务配置
登录
方法一
方法二
ssh ip 命令
禁止root登录
修改端口
黑白名单
ssh服务安全管理
使用密钥登录
原理
sftp
scp远程复制
下行复制
上行复制
ssh:是一种安全通道协议,主要用来实现字符界面的远程登录、远程复制等功能(先加密在压缩)
客户端:Xshell
服务端:Openssh
执行“systemctl start sshd”命令即可启动sshd服务
sshd服务默认使用的是TCP的22端口,安全协议版本sshv2,出来2之外还有1(有漏洞)
sshd_config 是针对服务端的配置文件
ssh_config 是针对客户端的配置文件
sshd服务使用SSH协议可以用来进行远程控制,或在计算机之间传送文件、相比较之前用Telnet方式来传输文件要安全很多,因为Telnet使用明文传输,ssh是加密传输
sshd #服务名称
/usr/sbin/sshd #服务端主程序
/etc/ssh/sshd_config #服务端配置文件
/etc/ssh/ssh_config #客户端配置文件
Port 22 #端口
ListenAddress ip #监听服务器的ip地址,可以写本地,也可0.0.0.0代表所有
LoginGraceTime 2m #设定登录失败,在切断连接前服务器需等待时间,单位为秒
PermitRootLogin yes #允许root登录
StrictModes yes #检查ssh/文件的所有者、权限等
MaxAuthTries 6 #用来设置最大失败尝试登录次数
MaxSessions 10 #同一个连接最大会话
PubkeyAuthentication yes #基于key验证
PermitEmptyPasswords no #密码验证
PasswordAuthentication yes #基于用户名和密码连接
GatewayPorts no #是否允许远程主机连接本地的转发端口
ClientAliveInterval 10 #设置以秒记得时长,超过该时间没收到客户端的数据会发送“alive”并等待回复,为0表示不发送“alive”仅对SSH-2有效
ClientAliveCountMax 3 #在未收到客户端回应前最多允许发送多少个“alive”消息
UseDNS yes #内网改为no ,禁用反向解析
GSSAPIAuthentication yes #是否用户退出登录后自动销毁用户凭证缓存(仅适用于SSH-2)
MaxStartups #最大允许保持多少个未认证的连接
ssh 远程主机用户名@远程服务器主机名或ip -p port(端口号)
当在一台linux主机上连另一台linux主机时,如当前用户是root,对面也是root登录,可以直接使用ssh ip ; 端口默认,如果端口不是默认的,需要使用 -p 指定端口。
ssh -l 远程主机用户名 远程服务器主机名或ip -p port
后面可以直接跟命令,不登录查看相关信息
[root@mmm ~]# vim /etc/ssh/sshd_config
首先确保想改的端口号未被其他进程占用
[root@mmm ~]# vim /etc/ssh/sshd_config
AllowUsers user1 user2@ip(限制主机)
DenyUsers user1 user2
AllowGroups g1 g2
DenyGroups g1 g2
[root@yyy ~]# useradd aa
[root@yyy ~]# echo '123'|passwd --stdin aa
[root@yyy ~]# useradd bb
[root@yyy ~]# echo '123' |passwd --stdin bb
[root@yyy ~]# useradd cc
[root@yyy ~]# echo '123' |passwd --stdin cc
2、并将客户端的公钥ssh-copy-id 拷贝到服务端
3、当客户端再次发送一个连接请求,包括ip、用户名
4、服务端得到客户端的请求后,会到authorized_keys中查找,如果有响应ip和用户,就会随机生成一个字符串,例如:ky
5、服务端将使用客户端拷贝过来的公钥进行加密,然后发送给客户端
6、得到服务端发来的消息后,客户端会使用私钥进行解密,然后将解密后的字符串发送给服务端
7、服务端接收到客户端发来的字符串后,跟之前的字符串进行对比,如果一致,就允许免密码登录
通过sftp可以利用ssh安全连接与远程主机上传、下载文件,采用与ftp类似的登录过程和交互式环境,便于目录资源管理
由于使用加密/解密技术,所以传输效率比普通的ftp要低,但安全性更高
从对面主机下载内容到本地
上传本地的内容到对面主机