vsftp的简单使用

一、vsftp以及安装

服务端软件:vsftpd

客户端软件:ftp

端口号:20、21或指定范围内其他随机端口

配置文件:vim /etc/vsftpd/vsftpd.conf

# 安装
yum install vsftpd   ftp

# 开机自启
systemctl  enable  vsftpd

# 启动
systemctl  start vsftpd

# 查看端口开放情况
netstat  -antp

二、工作模式

①主动模式(port)--->默认模式

FTP客户端和服务器TCP21端口建立连接,用来发送port命令;

port命令包含用什么端口接收数据,在传输数据时,服务器TCP 20端口将数据发送到前边指定的端口

②被动模式(passive)

FTP客户端和服务器TCP21端口建立连接,建立后客户端发送pasv命令。

服务端收到pasv命令后打开一个临时端口,并通知客户端在这个端口上传输数据的请求,客户端连接服务器临时端口并传输数据

三、传输模式

①Binarry:适合图片、压缩文件、可执行文本

②ASCII:适合普通文本

切换传输模式,登录到ftp后用命令切换

四、登录方式

①匿名登录:使用ftp或者anonymous,无密码,访问的目录在/var/ftp,可下载不可上传

# 登录
ftp  localhost

  

②本地linux用户登录,访问目录是登录用户的家目录

# 创建linux用户,并使用用户名密码登录
useradd  wenlong
passwd wenlong
ftp  localhost

# 上传test.sh文件
put  test.sh

# 下载文件
get  test.sh

③虚拟用户登录不做介绍 

五、用户权限、修改工作模式

①本地用户是否可以切换访问目录

# 修改配置文件
vim /etc/vsftpd/vsftpd.conf
# 限制用户不能随意切换目录
chroot_local_user=YES

# 允许白名单用户切换目录
chroot_list_enable=YES

# 白名单列表文件
chroot_list_file=/etc/vsftpd/chroot_list

②禁止某些用户登录

# 查看黑名单
vim /etc/vsftpd/ftpusers

③修改为被动模式

# 修改配置文件
vim /etc/vsftpd/vsftpd.conf

# 修改配置文件后重启服务
systemctl  restart  vsftpd
# 启用被动模式,并且设置一个随机端口范围
pasv_enable=YES
pasv_min_port=40000
pasv_max_port=45000
# 用wenlong登录,下载大文件查看端口监听状态
ftp  localhost

# 查看端口情况
netstat   -antp

④用浏览器访问,匿名用户访问目录是/var/ftp,本地用户访问目录是家目录,关掉匿名用户访问

vim /etc/vsftpd/vsftpd.conf

# 关闭掉匿名访问
anonymous_enable=NO

systemctl  restart vsftpd

浏览器输入访问地址:ftp://你的ip地址

 

⑤Windows用cmd命令行访问

 

### 安装 VSFTP 在 Ubuntu 系统上安装 VSFTP 服务非常简单,可以使用 `apt-get` 包管理工具进行安装。以下是具体的安装步骤: 1. 更新软件包列表以确保获取最新的软件版本: ```bash sudo apt-get update ``` 2. 安装 `vsftpd` 软件包: ```bash sudo apt-get install vsftpd ``` 3. 安装完成后,可以通过以下命令检查 `vsftpd` 服务是否正常运行: ```bash systemctl status vsftpd ``` 如果服务正在运行,将看到类似于以下的输出: ``` ● vsftpd.service - vsftpd FTP server Loaded: loaded (/lib/systemd/system/vsftpd.service; enabled; vendor preset: enabled) Active: active (running) since ... ``` ### 配置 VSFTP 安装完成后,需要对 `vsftpd` 进行基本配置以满足特定需求。默认情况下,`vsftpd` 的主配置文件位于 `/etc/vsftpd.conf`。 #### 创建 FTP 用户 为了安全起见,建议创建一个专门用于 FTP 访问的用户,该用户不能直接登录系统。以下是创建用户的步骤: 1. 创建用户并指定其主目录为 `/data/liss`,同时设置 `/sbin/nologin` 作为其 shell: ```bash sudo useradd -d /data/liss -s /sbin/nologin uftp ``` 2. 为新创建的用户设置密码: ```bash sudo passwd uftp ``` #### 修改 PAM 配置 为了避免用户无法通过 FTP 登录的问题,需要删除或备份原有的 PAM 配置文件,并创建新的配置文件: 1. 备份原有的 PAM 配置文件: ```bash sudo mv /etc/pam.d/vsftpd /etc/pam.d/vsftpd.bak ``` 2. 创建新的 PAM 配置文件 `/etc/pam.d/vsftpd`,内容如下: ``` auth required pam_shells.so auth required pam_unix.so try_first_pass account required pam_unix.so session required pam_unix.so ``` #### 配置 vsftpd.conf 文件 编辑 `/etc/vsftpd.conf` 文件,确保包含以下关键配置项: ```bash sudo nano /etc/vsftpd.conf ``` 修改或添加以下配置项: ``` listen=YES anonymous_enable=NO local_enable=YES local_umask=077 write_enable=YES dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES xferlog_std_format=YES secure_chroot_dir=/var/run/vsftpd/empty pam_service_name=vsftpd chroot_local_user=YES allow_writeable_chroot=YES chroot_list_enable=YES chroot_list_file=/etc/vsftpd.chroot_list ``` #### 配置 chroot 列表 创建 `/etc/vsftpd.chroot_list` 文件,并将之前创建的用户 `uftp` 添加到该文件中,以便限制其只能在其主目录中操作: ```bash echo "uftp" | sudo tee /etc/vsftpd.chroot_list ``` #### 重启 vsftpd 服务 完成上述配置后,重启 `vsftpd` 服务以使更改生效: ```bash sudo systemctl restart vsftpd ``` ### 卸载 VSFTP(可选) 如果将来不再需要使用 `vsftpd`,可以通过以下步骤卸载: 1. 停止 `vsftpd` 服务: ```bash sudo systemctl stop vsftpd ``` 2. 卸载 `vsftpd` 软件包: ```bash sudo apt-get remove vsftpd ``` 3. 彻底清除 `vsftpd` 及其配置文件: ```bash sudo apt-get purge vsftpd sudo rm -rf /etc/vsftpd sudo rm -rf /var/ftp ``` ###
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值