Linux之FTP篇
内容简介:
vsftpd的安装
目录介绍
配置参数解释
锁定用户目录
其他用户不能登录
----------------------------------------------------------------------------------------------
1、安装vsftpd
安装
yum install vsftpd
配置文件目录
cd /etc/vsftpd
启动、停止、重启
systemctl start vsftpd systemctl stop vsftpd systemctl restart vsftpd
2、目录介绍

vsftpd.conf ftp的核心配置文件
ftpusers 禁止登录FTP的用户列表
chroot_list 是否允许用户列表内的用户访问父目录
user_list 是否允许列表内的用户登录
以上将在下个部分讲解
3、配置文件详解
https://www.cnblogs.com/rainiplus/p/3739100.html,,人家写的比我好多了23333
# Allow anonymous FTP?
anonymous_enable=NO # allow local users to log in.
local_enable=YES # 允许写操作
write_enable=YES # Default umask for local users is . You may wish to change this to ,
# if your users expect that ( is used by most other ftpd's)
local_umask= allow_ftpd_full_access # 匿名是否允许上传文件
#anon_upload_enable=YES # 匿名是否允许写操作
#anon_mkdir_write_enable=YES # 欢迎语设置,如果有.message这个文件
# messages given to remote users when they go into a certain directory.
dirmessage_enable=YES # Activate logging of uploads/downloads.
# 上传下载日志记录
xferlog_enable=YES # Make sure PORT transfer connections originate from port (ftp-data).
# 主动模式时使用20端口连接客户端
connect_from_port_20=YES # You may override where the log file goes if you like. The default is shown
# below.
#xferlog_file=/var/log/xferlog # If you want, you can have your log file in standard ftpd xferlog format.
# Note that the default log file location is /var/log/xferlog in this case.
# FTP入职格式化
xferlog_std_format=YES # You may change the default value for timing out an idle session.
# 一段时间没有操作后断开连接
#idle_session_timeout= # You may change the default value for timing out a data connection.
# FTP数据传输最大时间,超过则断开连接
#data_connection_timeout= # 是否使用ASCII码传输,默认使用二进制
#ascii_upload_enable=YES
#ascii_download_enable=YES # 是否允许用户访问父目录,默认YES
chroot_local_user=NO
# 文件限制是否开启,若开启后,则列表中的用户无法访问父目录
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
#iginre the writeable check
# 忽略写权限检查,如果chroot_local_user=NO,那么主目录不能有写权限,这里忽略掉它
allow_writeable_chroot=YES # 是否允许列表用户登录
# 开启文件检查
#userlist_enable=YES
# 文件列表中的用户是否进制登录,YES:禁止登录
#userlist_deny=YES
#userlist_file=/etc/vsftpd/userlist # 监听IPV4
listen=YES
# 开启IPV4就关闭IPV6,好多还是用的IPV4
#listen_ipv6=YES # 应该与虚拟用户相关吧,不清楚
pam_service_name=vsftpd
# 是否允许主机连接。放这吧,不清楚
tcp_wrappers=YES # 开启被动模式,windows默认开启被动
pasv_enable=YES
# 端口开放,需要防火墙支持,如果时阿里云则需要开放端口入方向规则
pasv_min_port=
pasv_max_port=
# 暴漏给客户端外网IP,不设置默认暴漏原始IP,即内网加端口这种形式
pasv_address=你的外网ip
4、锁定用户主目录
chroot_list中放置要锁定的用户名,一行一个

修改配置
# 不允许列表中的用户访问父目录
chroot_local_user=NO
# 文件限制是否开启,若开启后,则列表中的用户无法访问父目录
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
#iginre the writeable check
# 忽略写权限检查,如果chroot_local_user=NO,那么主目录不能有写权限,这里忽略掉它
allow_writeable_chroot=YES
重启即可
5、禁止登陆
方案一:在ftpusers中添加,一行一个
方案二:使用user_list
在user_list中添加禁止登陆的用户,一行一个

修改配置文件
# 是否允许列表用户登录
# 开启文件检查
#userlist_enable=YES
# 文件列表中的用户是否进制登录,YES:禁止登录
#userlist_deny=YES
#userlist_file=/etc/vsftpd/userlist
重启即可
附录:FTP主动和被动区别

Linux之FTP篇的更多相关文章
- linux初学者-ftp篇(一)
linux初学者-ftp篇(一) FTP是文件传输协议,是用于Internet上的控制文件的双向传输.用户可以通过客户机程序从远程主机上下载或者向远程主机上传文件. linux系统中,如果不了解SEL ...
- Linux(环境篇):系统搭建本地FTP后,无法登录(331 Please specify the password.)问题解决
首先 Linux 搭建ftp,开放21端口.(省略...) 你可能会遇到以下问题:错误 SELinux is disabled 解决: setenforce: SELinux is disabled ...
- linux配置ftp高级权限
建一个用于管理的ftp高级账号,ftproot,定义它的目录,也就是我们存放项目的地址,所属组www, useradd -d /home/www -g www ftproot www里存放很多项目,我 ...
- Linux工具参考篇(网摘)
Linux工具参考篇 原文出处:[Linux Tools Quick Tutorial] 1. gdb 调试利器 2. ldd 查看程序依赖库 3. lsof 一切皆文件 4. ps 进程查看器 5. ...
- linux初学者-SElinux篇
linux初学者-SElinux篇 SElinux是强制访问控制(MAC)安全系统,是linux历史上最杰出的新安全系统.对于linux安全模块来说,SElinux的功能是最全面的,测试也是最充分的, ...
- linux初学者-firewall篇
linux初学者-firewall篇 firewalld是防火墙的另一种程序,与iptables相同,但是使用起来要比iptables简单的点,不需要了解3张表和5条链也可以使用. 1.firewa ...
- linux初学者-iptables篇
linux初学者-iptables篇 iptables是防火墙的一种,是用来设置.维护和检查linux内核的IP过滤规则的,可以完成封包过滤.封包重定向和网络地址转换(NAT)等功能. iptabl ...
- linux开启FTP以及添加用户配置权限,只允许访问自身目录,不能跳转根目录
1.切换到root用户 2.查看是否安装vsftp,我这个是已经安装的. [root@localhost vsftpd]# rpm -qa |grep vsftpd vsftpd--.el7_2.x8 ...
- Linux启动ftp服务器530 Permission denied解决方法(已试,行)
Linux启动ftp服务器530 Permission denied解决方法重新在虚拟机下安装了linux.现在我想启动linux自带的ftp服务器:#service vsftpd start . ...
随机推荐
- ipmitool批量添加新用户名和密码
Intelligent Platform Management Interface 需求:已知BMC帐号id2为root管理员帐号,添加id5bmc帐号 工具:ipmitool version 1.8 ...
- HBase优化实战
本文来自网易云社区. 背景 Datastream一直以来在使用HBase分流日志,每天的数据量很大,日均大概在80亿条,10TB的数据.对于像Datastream这种数据量巨大.对写入要求非常高,并且 ...
- IP地址和子网划分
前期知识准备 二进制 和十进制 二进制数据是用0和1表示的数,进位规则为缝二进1, 二进制和十进制的关系 二进 十进 0 1 10 2 100 4 1000 8 10000 16 10000 ...
- 【bzoj1022】[SHOI2008]小约翰的游戏John 博弈论
Description 小约翰经常和他的哥哥玩一个非常有趣的游戏:桌子上有n堆石子,小约翰和他的哥哥轮流取石子,每个人取 的时候,可以随意选择一堆石子,在这堆石子中取走任意多的石子,但不能一粒石子也不 ...
- 洛谷P2765 魔术球问题(最大流)
传送门 %%%KSkun大佬 话说明明是网络流……这题竟然还有打表找规律和纯贪心AC的……都是神犇啊…… 来说一下如何建图.首先把每一个点拆成$X_i$和$Y_i$,然后$S$向$X_i$连一条容量为 ...
- 【BlockingQueue】BlockingQueue 阻塞队列实现
前言: 在新增的Concurrent包中,BlockingQueue很好的解决了多线程中,如何高效安全“传输”数据的问题.通过这些高效并且线程安全的队列类,为我们快速搭建高质量的多线程程序带来极大的便 ...
- SDUT OJ 顺序表应用1:多余元素删除之移位算法
顺序表应用1:多余元素删除之移位算法 Time Limit: 1000 ms Memory Limit: 650 KiB Submit Statistic Discuss Problem Descri ...
- js 删除removeChild与替换replaceChild
<input type="button" value="删除" id="btn" /> <input type=" ...
- ansible基本模块-shell
ansible XXX -m shell -a "XXX"
- springcloud微服务config的使用
首先需要建立一个server端: pom依赖中加入 <dependency> <groupId>org.springframework.cloud</groupId> ...