远程访问:xshell moba
ssh:安全通道协议,主要实现字符界面的远程登陆,远程复制,类似于ftp的功能
端口号:22 ,默认端口,可以修改
数据加密,通信双方的数据传输,都进行加密处理。包括用户登录的口令输入
数据传输--->基于tcp协议
ssh客户端-----tcp-------ssh服务端(端口22)
数据传输是加密的,防止数据泄露,数据传输是压缩的,可以提高传输速度
客户端:xshell moba 谁使用谁是客户端
服务端:openssh 提供相关服务的
openssh 是shh协议的开源软件,而且已经设置为开机自启
shh_config 对客户端进行配置
shhd_config 对服务端进行配置
ssh的组成结构
1.远程连接 远程登陆 安全文件传输协议 sftp 都是openssh的一部分
2.传输层:传输层协议(数据压缩) 服务器认证,保密性以及完整性
a.shh-trans传输层协议:提供加密技术,密码主机认证,只做认证主机,不执行用户认证
b.ssh-userauth用户认证协议:运行在传输层之上,开始认证用户之后从底层的会话标识接收会话的标识符。认证会话标识符的所有权。建立私钥,进行安全通信;只认证用户,不负责处理连接
c.ssh-conncet连接协议:处理最终的连接请求,运行在用户认证的协议之上,提供了交互式登陆界面,远程命令,数据转发
/etc/ssh/sshd-config ssh服务文件
命令行方式远程登陆
ssh root@192.168.233.10 远程登陆ip地址为192.168.233.10的主机
root不是本机用户,是10用户 @固定格式 192.168.233.10 需要登陆服务器的ip地址
ssh -p 10022 root@192.168.233.10
-p 对非默认端口需要加 默认端口为22,就不用加
exit退出
sshde访问控制
AllowUsers 允许用户登录 DenyUsers 拒绝用户登录
/etc/ssh/sshd-config 在文件末尾添加即可
AllowUsers zhangsan lisi@192.168.233.20
允许zhangsan lisi用户登录,但是对lisi做了限制条件,只可以从192.168.233.20的主机登录,多个用户,空格隔开
DenyUsers dn 拒绝用户登录 做不做限制条件,都是一样,不管哪个主机都登陆不了
远程复制:scp远程复制,从别的主机把文件或者目录,复制到本机
test2 192.168.233.20
cd /opt vim ky30.txt
test1
scp (-P)root@192.168.233.20:/opt/ky30.txt /opt/ 把ip地址192.168.233.20的主机opt下的文件ky30.txt复制到自己主机opt下
-P 默认端口号不用加 root登录主机的用户 @固定格式 192.168.233.20 登陆主机的ip地址
:跟路径 :/opt/ky30.txt 登陆到主机的路径下的文件或者目录名
/opt/ 复制到本机的路径
复制目录 mkdir ky30 mv ky30.txt ky30
scp -rP 10022 root@192.168.233.10:/opt/ky30 /opt/
-r复制目录 -P 不是默认端口号加-P
sftp:安全的ftp,使用了基于ssh协议的加密解秘技术,传输效率比传统的ftp要慢,但是安全性更高,语法和ftp一样
sftp root@192.168.233.20
sftp>
sftp -P root@192.168.233.20 不是默认端口加P
ssh协议三大部分 远程连接,远程复制,sftp远程安全文件传输
ssh除了验证用户密码之外,还有密钥对验证
因为服务器用户的密码,可以通过暴力破解的方式破解掉,产生了密钥对,要求提供匹配的密钥信息,才能通过验证
1.在客户端创建一个密钥文件
2.密钥文件传送到服务器的指定位置
3.远程登陆时,系统将使用密钥对惊醒验证,实现面交互登录,增强了一定的安全性
密码验证和密钥验证都开启,服务器会优先使用密钥对验证
/etc/ssh/sshd-config ssh服务文件里两行的意思
PasswordAuthentication yes 启用密钥对
PubkeyAuthentication yes 启用密钥对验证
test1客户端 ssh-keygen -t(指定) ecdsa
有默认路径/root/一般不用改
给ecdsa设密码
密钥加密方式 ecdsa(主流) rsa dsa
id_ecdsa : 私钥文件 id_ecdsa.pub:公钥文件
ssh-copy -i id_ecdsa.pub root@192.168.233.20
ssh-agent bash 生成密钥对密码文件
ssh-add 私钥密码
ssh root@192.168.233.20 远程登陆,免交互
Tcp wrappers访问控制:
tcp包裹tcp服务,代为监听,使用tcp服务程序的端口,要先通过tcp wrappers的安全机制,才能真正访问程序
只可以正对使用tcp协议的服务
对应的两个策略文件
/etc/hosts.allow 允许个别,拒绝所有
sshd:192.168.233.30 允许sshd使用30
ALL:ALL/不写 都允许
/etc/hosts.deny 允许所有,拒绝个别
sshd:192.168.233.30 拒绝30服务器使用ssh