SSH远程访问及控制

SSH:安全通道协议

主要实现字符界面的远程登录,远程复制,类似于ftp的功能

端口号都是22,这是默认端口,可以修改

通信双方为了防止数据泄露,数据传输都进行了加密处理,包括用的登录用户登录的口令输入,数据传输的同时也是压缩的,可以提高传输速度

Openssh:

openssh是ssh协议的开源软件,系统自带,而且已经设置开机自启

ssh_config : 针对客户端进行配置

sshd_config : 针对服务端进行配置

 

SSH的组成结构:

远程连接 、远程登录,安全文件传输协议sftp,都是openssh的一部分

由三个部分组成:

传输层协议:服务器认证,保密性以及完整性

  •  数据压缩  ssh-trans:提供加密技术,密码主机认证,只做认证主机,不执行用户认证

用户认证协议 :ssh-userauth

  • 运行在传输层协议之上,开会时认证用户之后,从底层的会话标识接受绘画的标识符,认证会话标识符的所有权,建立私钥,进行安全通信

连接协议:ssh-conncet

  • 处理最终的 连接请求,运行在用户认证协议上,提供了交互式登录界面远程命令,数据转发

命令行格式远程登陆:

例 : ssh root@192.168.86.33     #远程连接192.168.86.33 这个IP地址

root :不是本机的用户,是192.168.86.33 的用户 

@ :固定格式 


注 :如果要指定端口号,需要加 -p(小写)

例 : ssh -p 10022(修改后的端口号) root@192.168.86.33  

SSH的访问控制:

命令 : vim sshd_config

底行添加

AllowUsers  用户      #表示允许用户建立连接

DenyUsers 用户        #表示拒绝用户建立连接 

例 :
AllowUsers  zhangsan    #表示允许zhangsan用户建立远程连接

AllowUsers  zhangsan@192.168.86.33    #表示允许zhangsan用户建立连接,但只能通过192.168.86.33这个IP 

DenyUsers  zhangsan     #表示拒绝zhangsan用户建立连接 

注 :多个用户之间要用空格隔开 

     

远程复制:scp       

  • 把别的主机的文件或目录复制到本机上
命令 :scp  root@目的连接IP:/文件或目录  /复制到本机的路径

例 : scp root@192.168.86.33:/opt/123.txt /opt
#表示将192.168.86.33这个主机的opt目录下的123.txt的文件复制到本机的opt目录下

192.168.86.33   #表示要连接的主机地址 

/opt/123.txt    #表示要连接的主机的文件或目录

/opt            #表示复制到本机的目录

-P(大写)        #表示指定端口号

-r             #表示复制目录

 远程传输 :sftp 

  • 更加安全的ftp,使用了基于ssh协议加密的技术,所以传输效率比一般的ftp慢,但安全性更高下载和上传和ftp一样 

步骤:

需要两台服务器  test2 、test3

先在test2 创建文件,使用test3远程传输连接test2

 使用test3 将test2上创建的123.txt 远程下载到本机上 并进行查看

 在test3上创建aaa.txt文件, 使用test3 将test3上创建的文件远程上传到test2上  并进行查看

 SSH密钥对验证:

  • 服务器用户的密码可以通过暴力破解的方式破解,因此就产生了密钥对,要求提供匹配的密钥信息才能通过验证 

工作流程 :

  1. 在客户端创建一个密钥文件 
  2. 将密钥文件传送到服务端的指定位置
  3. 远程登录时,系统将使用密钥对进行验证 ,实现免交互登录 
  • 系统的密码验证和密钥对验证默认都是开启的,系统会有限进行密钥对验证

密钥加密的方式:

ecdsa 、rsa 、dsa 三种,一般使用ecdsa

命令 :
ssh -keygen -t ecdsa     #生成ecdsa的密钥对

生成后有两个文件  :  id_ecdsa   #表示私钥文件 
                   
                    id_ecdsa.pub   #表示公钥文件 

ssh-copy-id -i id_ecdsa.pub root@192.168.86.33   #本地主机的公钥复制到192.168.86.33上

ssh-agent bash     #用于启动一个新的 Bash shell 并在该 shell 中启动 SSH Agent

ssh-add            #将SSH私钥添加到SSH Agent的命令SSH Agent身份验证代理,管理和缓存SSH密钥

实验:

 

实现免交互登录

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值