vsftp 主动模式安装
server:192.168.109.137
client:192.168.109.138
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
安装:
1.yum install -y vsftpd lftp

开机自启:
查看:systemctl list-unit-files | grep vsftp
设置:/bin/systemctl enable vsftpd.service
2.创建用户
useradd ftpuser -s /sbin/nologin

3.创建虚拟用户及其存放路径(第一行账号,第二行密码)
vim /etc/vsftpd/vsftpd_login
boss
boss123
flow
flow123

chmod 600 /etc/vsftpd/vsftpd_login
4.生成能够识别的库文件
db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db

5.创建虚拟账号用户权限管理目录及配置文件
mkdir /etc/vsftpd/vsftpd_user_conf && cd /etc/vsftpd/vsftpd_user_conf
vim boss
local_root=/filedata/vsftp_data/boss
anonymous_enable=NO
write_enable=YES
local_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=NO
idle_session_timeout=600
data_connection_timeout=120
max_clients=10
max_per_ip=5
local_max_rate=50000

vim flow
local_root=/filedata/vsftp_data/flow
anonymous_enable=NO
write_enable=YES
local_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=NO
idle_session_timeout=600
data_connection_timeout=120
max_clients=10
max_per_ip=5
local_max_rate=50000

6.创建其家目录(虚拟用户boss,flow),并修改权限
mkdir -pv /filedata/vsftp_data/boss
chown -R ftpuser:ftpuser /filedata/vsftp_data/boss
mkdir -pv /filedata/vsftp_data/flow
chown -R ftpuser:ftpuser /filedata/vsftp_data/flow

7.编辑认证文件
vim /etc/pam.d/vsftpd (添加)
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

8.编辑vsftp的配置文件
vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
guest_enable=YES
guest_username=virftp
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/vsftpd_user_conf

9.重启、执行
systemctl restart vsftpd;tail -f /var/log/messages

10.测试
lftp boss@127.0.0.1

tail -f /var/log/secure

这里就是上面说的认证模式问题,注释其他的即可(vim /etc/pam.d/vsftpd);



上传测试:

浏览器测试:ftp://IP


----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
11.锁定根目录,不能随意切换
vim /etc/vsftpd/vsftpd.conf (添加)
chroot_list_enable=NO
chroot_local_user=YES
chroot_list_file=/etc/vsftpd/chroot_list

创建/etc/vsftpd/chroot_list 并vim /etc/vsftpd/chroot_list 添加相应账号

12.ftp主动模式 数据传输20端口:
vim /etc/vsftpd/vsftpd.conf
pasv_enable=NO #默认是yes
#connect_from_port_20=YES #默认是开启的

解决配置添加:allow_writeable_chroot=YES
reverse_lookup_enable=NO #连接慢,因为默认开启了reverse_lookup(反向解析)

问题: [Delaying before reconnect: 29] 或者:重新连接前延时:ss;这是因为linux的ftp客户端默认是被动模式,登陆进去需要手动关闭
lftp:为 set passive-mode off
ftp:为passive
set passive-mode off

通过tcpdump抓包可以发现此时数据是走固定端口20传输
*被动模式:
在vsftpd服务的配置文件下添加以下配置。
pasv_enable=YES #开启被动模式
pasv_min_port=20000 #设置被动模式传输数据的端口范围
pasv_max_port=20045 #设置被动模式传输数据的端口范围
重启vsftpd服务后再进行测试。
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
vsftp 主动模式安装的更多相关文章
- vsftpd主动模式和被动模式的区别
何为主动模式,何为被动模式 1.ftp采用两个端口控制: 20端口用于数据传输. 21端口用于控制,或指建立TCP连接. 2.主动方式连接过程: [注意]:C表示客户端 S表示服务器端 S端要开启20 ...
- Vsftp安装及配置主动模式/被动模式
第一章.前言 FTP的主动模式(active mode)和被动模式(passive mode) 大多数的TCP服务是使用单个的连接,一般是客户向服务器的一个周知端口发起连接,然后使用这个连接进行通讯 ...
- vsftp配置主动模式和被动模式
配置文件:/etc/vsftpd/vsftpd.conf 主动模式配置方法: 主动式连接使用的数据通道 connect_from_port_20=YES 支持数据流的被动式连接模式 pasv_enab ...
- 大数据系列(4)——Hadoop集群VSFTP和SecureCRT安装配置
前言 经过前三篇文章的介绍,已经通过VMware安装了Hadoop的集群环境,当然,我相信安装的过程肯定遇到或多或少的问题,这些都需要自己解决,解决的过程就是学习的过程,本篇的来介绍几个Hadoop环 ...
- FTP基础知识 FTP port(主动模式) pasv(被动模式) 及如何映射FTP
您是否正准备搭建自己的FTP网站?您知道FTP协议的工作机制吗?您知道什么是PORT方式?什么是PASV方式吗?如果您不知道,或没有完全掌握,请您坐下来,花一点点时间,细心读完这篇文章.所谓磨刀不误砍 ...
- 外网zabbix-server使用主动模式监控公司内网windows服务器
外网zabbix-server使用主动模式监控公司内网windows服务器 1.Zabbix Agent active批量调整客户端为主动模式监控将Template OS Windows模板调整为主动 ...
- ftp主动模式与被动模式交互过程分析
1.相关介绍 1.1主动模式和被动模式 主动模式:服务端通过指定的数据传输端口(默认20),主动连接客户端提交的端口,向客户端发送数据. 被动模式:服务端采用客户端建议使用被动模式,开启数据传输端口的 ...
- FTP的两种主动模式和被动模式
参考:https://blog.csdn.net/xqhrs232/article/details/54633006 https://blog.csdn.net/yuanhangq220/articl ...
- FTP 主动模式 与被动模式
今天在被电信运营商给的没有内网ip被nat后的内网ip访问我的ftp服务器时出现了,连接被关闭的错误,经过多番查询发现问题原因是因为NAT内网ip没有被有效地转换为外网ip,也即是说NAT对ftp协议 ...
随机推荐
- Android - Gradle架构中使用的“.so”库
Android使用Gradle架构的Android应用,需要对.so库做特殊的处理,因为会找不到,就会导致编译正确,使用错误:常见的使用情况是根据不同的cpu,有不同的库,包括:armeabi,mip ...
- USACO2018 DEC (Gold) (dp,容斥+哈希,最短路)
\(T1\) 传送门 解题思路 傻逼\(dp\)..直接\(ST\)表处理最大值\(O(n^2)\)艹过了. 代码 #include<bits/stdc++.h> using namesp ...
- [CSP-S模拟测试]:糊涂图(概率DP)
题目传送门(内部题76) 输入格式 第一行输入三个空格隔开的整数$n,m,s$表示随机加一条边之前的糊涂图的点数,边数,以及起点的编号. 接下来$m$行,每行两个空格隔开的整数$a,b$表示从$a$到 ...
- 自动化运维工具之Zabbix
一.部署zabbix 1.配置master节点 准备LAMP环境和zabbix的yum源 # yum install httpd php mariadb-server -y # vim /etc/my ...
- jQuery UI Widget Factory
https://learn.jquery.com/jquery-ui/widget-factory/ The jQuery UI Widget Factory is an extensible bas ...
- ANativeWindow_fromSurface
c++后台若使用ANativeWindow_fromSurface将surface转化为ANativeWindow: 需要头文件:#include <android/native_window_ ...
- URL里的分号';'一定要编码为%3b!!!!
http://en.wikipedia.org/wiki/Query_string The series of pairs is separated by the ampersand, '&' ...
- 九、MySQL报错( (1292, u"Truncated incorrect DOUBLE value: '424a000000066'") result = self._query(query))
1.数据库sql语句:SELECT seat_id FROM netsale_order_seat os join netsale_order nor on os.order_code=nor.ord ...
- 架构-数据库访问-SQL语言进行连接数据库服务器-DAO:DAO
ylbtech-架构-数据库访问-SQL语言进行连接数据库服务器-DAO:DAO DAO(Data Access Object) 数据访问对象是一个面向对象的数据库接口,它显露了 Microsoft ...
- Vue知识整理2:Vue生命周期方法
在vue执行过程中,可以分为beforeCreate.created.BeforeMount.mounted .BeforeUpdate.updated 等常用的方法,如下图所示. 除此之外,通过查 ...