安装 vsftpd yum -y install vsftpd 创建系统用户 useradd -d /data/ftp -s /sbin/nologin uploaduserecho 'uploadu
安装 vsftpd
yum -y install vsftpd
创建系统用户
useradd -d /data/ftp -s /sbin/nologin uploaduserecho 'uploaduser:XXXX' | chpasswd
修改vsftpd配置
# 禁止匿名用户登录及读写anonymous_enable=NOanon_upload_enable=NOanon_world_readable_only=NOanon_mkdir_write_enable=NOanon_other_write_enable=NO# 允许本地用户登录local_enable=YES# 允许写入write_enable=YESlocal_umask=022# 不允许下载download_enable=NO# 禁止登录消息提示dirmessage_enable=NO# 启用上传/下载日志xferlog_enable=YESxferlog_std_format=YES# 禁止用户离开主目录chroot_local_user=YES# 主机的访问控制设置tcp_wrappers=YESpam_service_name=vsftpd# 配置指定的用户连入userlist_enable=YESuserlist_deny=NOuserlist_file=/etc/vsftpd/user_listlisten=YES# 服务端口listen_port=2211# 数据端口ftp_data_port=2210# 关闭数据端口20connect_from_port_20=NO# 最大客户端数max_clients=10# 单个IP同时只能一个客户端连接max_per_ip=1# 空闲连接超时时间 10秒idle_session_timeout=10# 本地用户限速 1Mlocal_max_rate=1048576# 匿名用户限速 500Kanon_max_rate=512000# 客户端运行执行的命令cmds_allowed=PASV,STOR,STRU,TYPE,USER,QUIT# 设置vsftpd启动用户为nobody,而非rootnopriv_user=nobody
配置说明
- 用户限制
将允许连接的用户写入配置文件中:
echo 'uploaduser' > /etc/vsftpd/ftpusers
- 命令限制
如上文中的配置:cmds_allowed=PASV,STOR,STRU,TYPE,USER,QUIT
表示只允许客户上传,不允许查看列表、创建目录、切换目录、删除、改名等等操作。
参考
List of raw FTP commands
vsftpd配置文件详解