目录
目录
FTP概述
FTP作用与工作原理
实验
设置用户模式登录
SSH
ssh概述
SSH密钥机制
ssh实验
FTP概述
FTP(File TransferProtocol,文件传输协议)是典型的C/S架构的应用层协议,需要由服务端软件、客户端软件两个部分共同实现文件传输功能。FTP客户端和服务器之间的连接是可靠的,面向连接的,为数据的传输提供了可靠的保证。
TCP协议:20,21端口
20端口:用于传输数据
21端口:用于传输指令(建立连接)
FTP是一种文件传输协议,它支持两种模式,一种方式叫做Standard(也就是Active,主动方式),一种是 Passive(也就是PASV被动方式)。
Standard模式FTP的客户端发送PORT命令到FTP server。Passive模式FTP的客户端发送 PASV命令到FTP Server
FTP作用与工作原理
FTP的作用:
Internet 上用来远程传送文件的协议。
FTP的模式:
vsftp全称(very secure FTP)
vsftp模式:c/s模式
FTP服务器默认使用TCP协议的20、21端口与客户端进行通信:
20端口用于建立数据连接,并传输文件数据
21端口用于建立控制连接,并传输FTP控制命令
FTP工作原理与流程
FTP数据连接分为主动模式和被动模式
主动模式:服务器主动发起数据连接
被动模式:服务器被动等待数据连接
实验
首先关闭防火墙
安装vsftpd
打开ftp服务
然后进入vsftpd将vsftpd.conf文件备份一下
然后vim /etc/vsftpd/vsftpd.conf进行编写
写入:
anon_upload_enable=YES:允许匿名用户上传文件
anon_mkdir_write_enable=YES:允许匿名用户创建(上传)目录
anon_other_write_enable=YES:允许删除,重命名,覆盖等操作
且保证anonymous_enable=YES:开启匿名访问(默认开启)
write_enable=YES:开放服务器的写权限(默认开启)
local_umask=022:设置匿名用户上传数据的权限掩码
为匿名访问ftp的根目录下的pub子目录设置最大权限 以便匿名用户上传数据,然后重启ftp服务
进入/var/ftp/pub创建一个新文件1.txt
打开windows,打开命令窗口,连接到ftp 192.168.200.111(虚拟机ip地址)
输入密码,然后进入pub目录,查看有没有1.txt,然后get 1.txt将文件下载到本地
进入文件夹查看一下,创建一个新的2.txt,并写入内容
然后再命令窗口输入put 2.txt,将文件取回虚拟机
进入虚拟机查看pub目录,并查看内容,成功
设置用户模式登录
设置本地用户验证访问ftp,并禁止切换到ftp以外目录(默认登陆的根目录为本地用户的家目录)
vim /etc/vsftpd/vsftpd.conf
local_enable=YES #启用本地用户
anonymous_enable=NO #关闭匿名用户访问
write_enable=YES #开放服务器的写权限(若要上传必须开启)
local_umask=077 #可设置仅宿主目录用户拥有被上传的文件的权限(反掩码)
chroot_local_user=YES #将访问禁锢在用户的宿主目录中
allow_writeable_chroot=YES #允许被限制的用户主目录下具有写权限
#anon_mkdir_write_enable=YES 注释
#anon_other_write_enable=YES 注释
systemctl restart vsftpd #重启服务
创建新用户fang,并给予权限,设置好宿主目录
进入windows,连接ftp,登录fang用户,然后取回1.txt和2.txt
进入fang宿主目录查看,成功
SSH
ssh概述
SSH (Secure Shell)是一种安全通道协议,主要用来实现字符界面的远程登录、远程复制等功能。
SSH协议对通信双方的数据传输进行了加密处理,其中包括用户登录时输入的用户口令。因此SSt协议具有很好的安全性。
SSH客户端------------------------------>SSH服务器
数据传输是加密的,可以防止信息泄露
数据传输是压缩的,可以提高传输速度
SSH客户端:Putty,xshell,CRT
SSH服务端:openSSH
c/s架构
OpenSSH是实现sSH协议的开源软件项目,适用于各种UNTX、Linux操作系统
Centos 7系统默认已安装openssh相关软件包,并已将sshd 服务添加为开机白启动。执行"systemctl start sshd"命令即可启动sshd服务
sshd服务使用的默认端口号为22
sshd服务的默认配置文件是/etc / ssh/ sshd_config
ssh_config和sshd_config都是ssh服务器的配置文件,二者区别在于前者是针对客户端的配置文件,后者则是针对服务端的配置文件。
SSH密钥机制
对称加密(也称为秘钥加密)
使用同一套密钥加密
1.远程Server收到Client端用户TopGun的登录请求,Server把自己的公钥发给用户。
2.Client使用这个公钥,将密码进行加密。
3.Client将加密的密码发送给Server端。
4.远程Server用自己的私钥,解密登录密码,然后验证其合法性。
5.若验证结果,给Client相应的响应。
ssh实验
ssh-keygen -t rsa 生成密钥
ssh-copy-id root@192.168.100.150 将密钥推送给目标用户
ssh登录一下,然后ifconfig查看一下是否成功过去了
scp远程复制
scp root@192.168.100.150:/opt/decade /mnt/ 把192.168.100.150主机的一个目录复制过来
这边一开始报错,not a regular file是因为scp没有加上参数r导致
后面改成scp -r root@192.168.100.150:/opt/decade /mnt/ 即成功
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)