在开启防火墙的情况下,需要手动打开ftp21的端口,外部计算机才能正常访问ftp。
环境是centos6安装vsftpd
第一步:安装vsftpd,在终端允许
# yum -y install vsftpd
没什么问题就直接安装好啦
第二步:编辑vsftpd的配置文件
# vi /etc/vsftpd/vsftpd.conf
第三步:清空文件, 然后添加如下内容:
listen=YES
background=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=NO
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
chown_uploads=NO
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
async_abor_enable=YES
ascii_upload_enable=YES
ascii_download_enable=YES
ftpd_banner=Welcome to hao32 FTP servers
pam_service_name=vsftpd
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/vsftpd.chroot_list
第四步:终端运行下面命令
# touch /etc/vsftpd/vsftpd.chroot_list
# service vsftpd start
如果出现下面这句话:
Starting vsftpd for vsftpd: [ OK ]
则表示成功,如果不行则用这个语句:
/etc/rc.d/init.d/xinetd restart
ftp默认我们使用系统用户, 现在我们来添加用户ftptest, 指向目录/home/ftptest , 权限是nologin, 就是没给shell权限, 不影响ftp的
# useradd ftptest -d /home/ftptest -s /sbogin
如果显示:in/nol
useradd: warning: the home directory already exists.
Not copying any file from skel directory into it.
不用理会, 只是告诉你, 你指向的目录已经存在了, 这不影响
设置目录及其文件的属组, 你也可以使用别的分组方式
# chown -R ftptest . ftptest /home/ftptest
设置一下用户hao32的密码, 自定义啦
# passwd ftptest
把用户 ftptest 加到/etc/vsftpd/vsftpd.chroot_list里, 这样用户就可以正常登陆并且不能跳出自己的目录
# echo ‘ ftptest ′ >> /etc/vsftpd/vsftpd.chroot_list
# service vsftpd restart
测试登陆
ftp主机: 服务器IP地址
ftp用户: ftptest
ftp密码: ftptest
如果这个时候遇到 cannot change directory /home/ftptest
请输入以下命令 # setsebool -P allow_ftpd_full_access 1
# service vsftpd restart
搭建Linux vsFTPd服务器:http://www.linuxdiyf.com/linux/11352.html
CentOS 5.5编译安装vsftpd-2.3.4配置虚拟用户全攻略:http://www.linuxdiyf.com/linux/13089.html
CentOS 6.4下安装vsftpd:http://www.linuxdiyf.com/linux/11463.html
Linux下安装vsftpd详解 安全的ftp:http://www.linuxdiyf.com/linux/859.html
vsftpd:Linux Ubuntu上架设FTP:http://www.linuxdiyf.com/linux/12176.html