1、安装
通过ports安装,这个方式比较简单。
# cd /usr/ports/ftp/vsftp
# make install
2、配置
(1)编辑/usr/local/etc/vsftpd.conf
# ee /usr/local/etc/vsftpd.conf
Anonymous_enable=NO (禁止匿名登陆)
Local_enable=YES (允许本地用户登陆)
Local_umask=022 (FTP上本地的文件权限755,默认是077)
Connect_form_port_20=yes (启用FTP数据端口的数据连接)
Xferlog_enable=yes (激活上传和下传的日志)
Xferlog_std_format=yes (使用标准的日志格式)
Idle_session_timeout=120(秒) (用户会话空闲后2分钟)
Data_connection_timeout=300(秒) (将数据连接空闲5分钟断)
Ascii_upload_enable=YES (起用ASCII方式上传)
Ascii_download_enable=YES帮带(起用ASCII方式下载)
Ftpd_banner=Welcome to blah FTP service. (FTP服务器登陆欢迎信息)
Chroot_list_enable=YES (开启锁定用户目录)
Chroot_list_file=/任意路径/vsftpd.chroot_list (要锁定目录的用户保存文件,格式为每个用户一行)
注:如果想把本地的任何用户都锁定在自己的目录中的话,把上面两行注释掉,再增加这一样
Chroot_local_user=YES
保存退出
(2)编辑/etc/inetd.conf
# ee /etc/inetd.conf
增加这一行并去掉前面的注释(#号)
#ftp stream tcp nowait root /usr/local/libexec/vsftpd vsftpd
保存退出
(3)编辑/etc/rc.conf
# ee /etc/rc.conf
增加下面内容:
inetd_enable="YES"
注:以上是以inetd的方式启动vsftp的,我们也可以以独立进程的方式启动vsftp,具体如下:
a、注释掉inetd里面的vsftpd这一行。
b、在vsftpd.conf文件里增加listen=YES这句。
c、进入/usr/local/libexec/目录,执行./vsftpd & 。
d、想要让vsftp随系统启动,可在/usr/local/etc/rc.d/目录里增加一个sh脚本:
# vi vsftpd_start.sh
# ! /bin/sh
/usr/local/libexec/vsftpd &
保存退出,再chmod 755 vsftpd_start.sh 。
(4)添加用户
# pw groupadd vsftpd –g 1001
# pw useradd test –g 1001–d /home/test –s /sbin/nologin
# mkdir /home/test
# passwd test 设密码
Changing local password for test
New Password:
Retype New Password:
#
在vsftpd.chroot_list文件里增加test一行,把test用户所在其自家目录下。
# killall -HUP inetd,(如果是独立进程则执行上面写的那个脚本即可)测试一下:
# ftp localhost
如果成功会提示你输入用户名和密码
如果不成功,请查看一下你上面的配置