Fedora19上vsftp服务配置使用

1.软件安装
#yum install *vsftpd*

2.配置文件修改
Vim /etc/vsftpd/vsftpd.conf
编辑配置文件内容如下:

# Example config file /etc/vsftpd/vsftpd.conf
#
# Allow anonymous FTP? (Beware – allowed by default if you comment this out).
anonymous_enable=YES #允许匿名用户访问,匿名用户访问的目录为/var/ftp/
anon_upload_enable=YES

local_enable=YES
write_enable=YES
local_umask=022
#
dirmessage_enable=YES
xferlog_enable=YES
# Make sure PORT transfer connections originate from port 20 (ftp-data).
connect_from_port_20=YES
#xferlog_file=/var/log/xferlog
xferlog_std_format=YES
#idle_session_timeout=600
#data_connection_timeout=120
#nopriv_user=ftpsecure
#async_abor_enable=YES
#ascii_upload_enable=YES
#ascii_download_enable=YES
#ftpd_banner=Welcome to blah FTP service.
#deny_email_enable=YES
#banned_email_file=/etc/vsftpd/banned_emails
#ls_recurse_enable=YES
listen=YES
#listen_ipv6=YES

pam_service_name=vsftpd
tcp_wrappers=YES
use_localtime=YES
banner_file=/etc/vsftpd/welcome.txt

userlist_enable=YES
#userlist_deny=YES
userlist_file=/etc/vsftpd/user_list ##这个文件必须存在,需要手动创建。

3.创建欢迎信息
#vim /etc/vsftpd/welcome.txt
欢迎访问本站,本站提供FTP的相关服务!
主要的服务是针对本机实体用户提供的,若有任何问题请联系管理员!

4.建立限制系统账号登陆的文件
针对系统账号来阻挡,有两个文件,一个是PAM模块管的,一个是vsftpd主动提供的。在默认情况下这两个文件分别是:
/etc/vsftpd/ftpusers:就是/etc/pam.d/vsftpd这个文件的设置所影响的。
/etc/vsftpd/user_list:由vsftpd.conf的userlist_file所设置的。
这两个文件的内容是一样的,并且这两个文件必须存在才行。请参考/etc/passwd文件,然后将UID小于500的账号名同时写入这两个文件内。一行一个账号,最后如下:
# vsftpd userlist
# If userlist_deny=NO, only allow users in this file
# If userlist_deny=YES (default), never allow users in this file, and
# do not even prompt for a password.
# Note that the default vsftpd pam config also checks /etc/vsftpd/ftpusers
# for users that are denied.
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody
ftp
写入这个文件中的用户就不能访问FTP服务了,如果需要建立一个可使用FTP的账户列表即写入该表中的账户才可以访问FTP,又怎么做呢?
需要将配置文件做一下修改:
userlist_enable=YES
userlist_deny=NO ##将此项改成NO即可
userlist_file=/etc/vsftpd/user_list ##这个文件必须存在,系统默认有此文件。
那么此时,写入/etc/vsftpd/user_list的账号就变成了可使用FTP的账号了。

5.关闭防火墙
# systemctl stop firewalld.service
注意:防火墙的设置很重要,如果防火墙禁止了21端口,那么在远程访问时,会出现“connect:没有到主机的路由”的问题,并且无法通过浏览器访问ftp共享目录。

6.启动服务
# systemctl start vsftpd.service

7.设置开机自启动
#systemctl enable vsftpd.service
查看设置效果:
#[root@Fedora19 ~]# systemctl list-unit-files|grep ftp
owftpd.service disabled
proftpd.service disabled
pure-ftpd.service disabled
tftp.service static
vsftpd.service enabled
vsftpd@.service disabled
tftp.socket disabled
vsftpd.target disabled

8.使用测试
8.1在windows上可以打开我的电脑在地址栏直接输入ftp://ftpserver-IP 即可访问共享目录
8.2 在浏览器地址栏输入ftp://ftpserver-IP

9.注意事项
9.1.如果允许匿名访问,那么匿名用户访问目录/var/ftp的权限请设置成755,不能设置成777,否则匿名用户无法访问该目录。
9.2.如果匿名用户目录需要设置成samba共享目录,那么最好将该目录设置成其属主可用,比如root账户。这样使用root账户登录samba后就能对该目录(/var/ftp)进行改写操作了,否则不能对该目录进行写入操作,如果要使之能写入那么就必须将该目录权限设置成其他用户也可写,那么该目录就不能被ftp匿名用户访问了,这个矛盾似乎只能通过samba设置来解决。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注