Linux下配置VSftp服务器步骤二、新建用户
useradd test -g root -d /mpeg -s /sbin/nologin #该用户仅用来支持FTP服务,因此不必让他登录系统
注:改变用户的shell命令为usermod -s /sbin/nologin coship
Linux下配置VSftp服务器步骤三、设置密码
passwd test # 连续输入两次密码
Linux下配置VSftp服务器步骤四、修改SELinux参数
setsebool ftpd_disable_trans 1
service vsftpd restart
说明:如果不修改,连接时会提示
500 OOPS: cannot change directory:/mpeg
500 OOPS: child died
Linux下配置VSftp服务器步骤五、修改/mpeg权限
chmod 775 /mpeg
Linux下配置VSftp服务器步骤六、设置/etc/vsftpd/vsftpd.conf
将anonymous_enable=NO,这样可以限制匿名用户登录。
local_enable=YES #启用本地用户登录
write_enable=YES #设置可以进行写操作
local_umask=022 #设定上传后文件的权限掩码
userlist_enable=YES #启用用户登录控制
local_root=/mpeg (路径自定义)#定义所有本地用户的根目录。当本地用户登入时,将被更换到此目录下。(注释则访问该用户自己目录)
否则访问其它目录时会提示:550 Failed to change directory.
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list #指出被锁定在自家目录中的用户的列表文件。文件格式为一行一用户。
注意:
当chroot_local_user=NO、chroot_list_enable=YES时,chroot_list中用户为锁定用户,即他们除了自己的目录,不可以访问其他目录。
当chroot_local_user=YES、chroot_list_enable=YES时,chroot_list中用户为非锁定用户,他们可以访问任何其他目录。
Linux下配置VSftp服务器步骤七、设置vsftpd自动启动
chkconfig vsftpd on 或
运行ntsysv将vsftpd选上 或
echo "/usr/local/sbin/vsftpd &" >>/etc/rc.local
Linux下配置VSftp服务器步骤八、如果出现不能访问的现象可以将防火墙和SELinux停用
1、service iptables stop
2、编辑/etc/selinux/config将SELINUX设为disabled,即SELINUX=disabled
或终端里运行system-config-securitylevel-tui
或点击“system"->"administration"->"security level and firewall对防火墙和SELinux进行设置
问题1:
linux could not open chroot() list file:/etc/vsftpd.chroot_list
说明没有
vsftpd.chroot_list
通过vi vsftpd.chroot_list 创建一个
500 OOPS: cannot change directory:/svr/ftp/sqxj
chown_uploads=YES //当ftp连不上的时候要注意这个参数
问题2:ftp> put d:\sqlnet.log
200 PORT command successful. Consider using PASV.
553 Could not create file.
查了很多资料都说和selinux,但我的Linux版本是suse 10根本就没有selinux
问题3:
dos下ftp 192.168.1.107
不能连接,不提示输入用户账号
:可能是ftp服务没开启,必须登录Linux后执行:service vsftpd start
问题4:
有的系统用户不能ftp登录
C:\Users\myname>ftp 192.168.1.107
连接到 192.168.1.107。
220 "Welcome to FOOBAR FTP ser
用户(192.168.1.107:(none)): ft
331 Please specify the passwor
密码:
530 Login incorrect.
登录失败。
:应该是用户权限的问题,与可以ftp登录的用户比较一下,看是不是一个用户组。
/usr/sbin/vsftp vsftp的主程序
/etc/rc.d/init.d/vsftp vsftp的启动脚本
/etc/vsftpd/vsftpd.conf vsftp的配置文件
/etc/pamd/vsftpd PAM认证文件
/etc/vsftpd/vsftpd.ftpuser 禁止使用FTP的用户
/etc/vsftpd/vsftpd.user_list 禁止或允许使用ftp的用户列表
/var/ftp ftp匿名主目录
/varftp/pub ftp匿名上传主目录
VSFTP启动
Standalone方式
用于ftp访问频繁的环境 VSFTP进程始终运行监听端口
Service vsftp start|stop|restart|status
/etc/rc.d/init.d/vsftpd start|stop|restart
或者在/etc/vsftpd/vsftpd.conf中 加入listen=yes 表示以standalone运行
在inet.d守护进程中运行
用于ftp访问量很小的情况 vsftp在inet.d守护进程中运行
运行/etc/inet.d/vsftp中的脚本
VSFTP的配置文件 /etc/vsftpd/vsftpd.conf
主动模式设置
Port_enable=YES 开启主动模式
Connect_from_port_20=YES 当主动模式开启的时候 是否启用默认的20端口监听
Ftp_date_port=%portnumber% 上一选项使用NO参数是 指定数据传输端口
被动模式
PASV_enable=YES 开启被动模式
PASV_min_port=%number% 被动模式最低端口
PASV_max_port=%number% 被动模式最高端口
匿名上传设置
anonymous_enable=YES 启用匿名帐户
anon_world_readable_only=NO 关闭匿名全局浏览
anon_upload_enable=YES 匿名上传开启
anon_mkdir_write_enable=YES 允许匿名用户创建目录
write_enable=YES 全局写入权限开启
限制本地用户访问文件系统
chroot_local_user=YES 将本地用户浏览限制在其FTP根目录下
限制部分用户访问文件系统
chroot_list_enable=YES 启用列表(不可以与上条命令同时开启)
chroot_list_file=%file path% 限制用户的列表文件
连接限制
Max_client=%number% 最大连接数
max_per_ip=%number% 每ip最大连接数
anon_max_rate=%number% 匿名用户最大速率 单位kbps
local_max_rate=%number% 本地用户最大速率 单位kbps
user_config_dir=%file path%/%username% 针对不同用户的连接速率设置
%username%文件的内容为 local_max_rate=%number%
用户主目录设置
本地用户的主目录定义在/etc/passwd文件中
其中FTP user:________为定义行
全局重定向localuser的ftp主目录
local_root=%path%
安全设置
hide_ids=YES 隐藏用户的UID和GID
改变原有banner
ftpd_banner=%message%
或者
banner_file=%file path%
虚拟FTP站点设置
首先创建2套conf文件
#cp /etc/vsftpd/vsftpd.conf /etc/vsftp/vsftp2.conf
创建ftp2的主目录
#mkdir /var/ftp2
#useradd -d /var/ftp2 -M FTP2
#service vsftpd restart
单独启动某一站点
/user/sbin/vsftpd /etc/vsftpd/vsftp2.conf&