FTP

FTP,是一个文件传输协议
FTP是一种在互联网中基于TCP协议 端到端的数据传输协议。
基于C/S架构,默认使用20、21号端口
端口20(数据端口)用于数据传输
端口21 (命令端口)用于接收客户端发出的相关FTP命令
FTP工作模式:
主动模式:
FTP客户端从本机的非特殊端口(>1023)连接FTP服务器的命令端口21,服务端通过本地的20号端口 主动向客户端的随机端口发起连接请求,开始传输数据(客户端的防火墙可能 在第三次拦截)
被动模式:
FTP客户端通过向FTP服务器发送PASV命令进入被动模式,FTP服务器会另开一个随机端口,客户端主动连接到随机端口后,开始传输数

 

 

 

 

ftp的软件:
可以实现ftp功能的软件
wu-ftpd:
proftpd:
pureftp :
vsftpd:        非常安全的ftp服务器
ServU:            windows里边的
 
客户端访问ftp服务器工具:
ftp
lftp、 lftpget
wget
curl
FileZilla: windows客户端工具,可从软件商店直接下载
 
vsftpd介绍:
vsftpd(very secure ftp daemon)非常安全的FTP守护进程
是一款运行在Linux操作系统上开源且免费FTP服务程序
不仅完全开源而且免费,还为我们提供了一个快速的、稳定并且安全的FTP服务
 
vsftpd用户模式
本地用户
虚拟用户
匿名用户
vsftpd服务相关参数:
/var/ftp                                #匿名用户共享目录
/etc/vsftpd                            #配置文件所在目录
/etc/vsftpd/vsftpd.conf        #主配置文件
/usr/sbin/vsftpd                    #主程序文件
/etc/vsftpd/ftpusers                #黑名单
/etc/vsftpd/user_list                #控制名单(配置文件控制白名单与黑名单)
/var/log/xferlog                     #日志目录
 
实际操作:
ftp-server
systemdctl stop firewalld       关闭防火墙
yum install -y vsftpd            安装
 
systemdctl start vsftpd        打开vsftpd
systemdctl status vsftpd
systemdctl enable vsftpd        设置开机自启动
 
匿名用户访问,一般默认只给下载和查看
client-server2
yum install ftp lftp -y
lftp/ftp 192.168.186.129        在输入用户名和密码,默认用户名ftp,密码是空 ///默认的权限看,下载
ls    看共享过来的文件有哪些
get   abc.txt            下载
put 1.txt                 上传
可以把ftp家目录改成ftp所有,那么远程的匿名用户就有了更多的操作方式。但是也需要配置文件打开授权才行。
------------------------------------------------------------------------------
vim /etc/vsftpd/vsftpd.conf
anonymous_enabe=YES    #是否允许匿名用户访问,yes允许,no不允许        12
anon_upload_enabe=YES    #是否允许匿名用户上传,yes允许,no不允许        29
anon_mkdir_write_enabTe=YES    #是否允许匿名用户创建目录,yes允许,no不允许        33
anon_other_write_enable=yes    #是否允许匿名用户写权限,yes允许,no不允许 (手动添加)
------------------------------------------------------------------------------
本地用户模式:
创建新用户,关闭匿名用户登陆开关,打开本地用户登陆开关
lftp 192.168.186.129 -u user1  输入命令@
登陆就是自己的家目录了,
去除家目录的写权限才能ls等查看,去本地目录的家目录,给他创建一个目录chown给到登陆人即可。
 
chown ftpuser:ftpuser upload/
 
 
12 anonymous_enab7e=NO    #关闭匿名用户访问
16 1ocal_enable=YES        #是否允许本地用户访问,yes允许,no不允许
19 write_enable=YES        #是否允许本地用户有写权限,yes允许,no不允许
23 1oca1_umask=022        #本地用户上传文件默认权限为755
37 dirmessage_enable=YES        #当用户第一次进入新目录时显示消息 (了解)
40 xfer1og_enable=YES        #焙动xfer1og日志记录,该文件记录传输数据
43 connect_from_port_20=YES    #启用数据传输端口
49 #chown_username=whoever #    改变上传文件的属主与属组
53 #xferlog_file=/var/1og/xferlog     #日志文件位置,需删除注释
60 #idTe_session_timeout=600        #客户端连接超时时间,连上之后无操作
63 #data_connection_timeout=120     #数据连接超时时间,下载时候断开了,没继续操作下载
101 chroot_1oca_user=YES     #是否允许本地用户切换目录,yes不允许,no允许
115 1isten=NO             #是否开启监听IPV4的连接,默认没开启,改为yes
126 pam_service_name=vsftpd     #启用pam认证的文件名称,路径为/etc/pam.d/vsftpd
127 user1ist_enable=YES    #是否启用控制名单文件,yes启用,no不启用,文件为/etc/vsftpd/user_list,如果启用控制名单功能,需要指定该文件为黑名单|白名单
128 userlist_deny=no    #yes拒绝user_list文件中用户登录ftp服务器(黑名单) ,no允许登陆(白名单)
max_clients     最大连接数
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
复习:subscription-manager unregister
此时需要下载,可以搭建一个本地的源
[BaseOS]
name=rhel8_BaseoS
baseurl=file:///redhat/BaseOS
enabled=1
gpgcheck=1
gpgkey=file:///redhat/RPM-GPG-KEY-redhat-release
[AppStream]
name=rhel8_AppStream
baseurl=file:///redhat/AppStream
enabled=1
gpgcheck=0
 
 
 
 
 
 
 
 
 
 
posted @ 2023-03-02 09:36  MRgx  阅读(220)  评论(0)    收藏  举报