如何在Centos下安装ftp服务器

如何在Centos下安装ftp服务器,第1张

一:安装vsftpd

查看是否已经安装vsftpd

2

二:基于虚拟用户的配置

所谓虚拟用户就是没有使用真实的帐户,只是通过映射到真实帐户和设置权限的目的。虚拟用户不能登录CentOS系统。

修改配置文件

配置文件直接贴出来吧

3

三:使用Berkeley DB进行认证

yum install db4 db4-utils

然后,创建用户密码文本/etc/vsftpd/vuser_passwdtxt ,注意奇行是用户名,偶行是密码

4

接着,生成虚拟用户认证的db文件

编辑认证文件/etc/pamd/vsftpd,全部注释掉原来语句,再增加以下两句:

最后,创建虚拟用户配置文件

5

设置FTP根目录权限

最新的vsftpd要求对主目录不能有写的权限所以ftp为755,主目录下面的子目录再设置777权限

6

添加防火墙,把ftp的21端口开放 vi /etc/sysconfig/iptables

7

经过以上步骤我们就完成了ftp服务器的搭建,让我们畅游ftp吧

vsftpd是Linux下比较著名的FTP服务器,搭建FTP服务器当然首选这个。

本文介绍了在CentOS 64下安装vsftpd、配置虚拟用户登录FTP的过程。

正文:

一:安装vsftpd

查看是否已经安装vsftpd

rpm -qa | grep vsftpd

如果没有,就安装,并设置开机启动

yum -y install vsftpd

chkconfig vsftpd on

二:基于虚拟用户的配置

所谓虚拟用户就是没有使用真实的帐户,只是通过映射到真实帐户和设置权限的目的。虚拟用户不能登录CentOS系统。

修改配置文件

打开/etc/vsftpd/vsftpdconf,做如下配置

anonymous_enable=NO //设定不允许匿名访问

local_enable=YES //设定本地用户可以访问。注:如使用虚拟宿主用户,在该项目设定为NO的情况下所有虚拟用户将无法访问

chroot_list_enable=YES //使用户不能离开主目录

ascii_upload_enable=YES

ascii_download_enable=YES //设定支持ASCII模式的上传和下载功能

pam_service_name=vsftpd //PAM认证文件名。PAM将根据/etc/pamd/vsftpd进行认证

以下这些是关于vsftpd虚拟用户支持的重要配置项,默认vsftpdconf中不包含这些设定项目,需要自己手动添加

guest_enable=YES //设定启用虚拟用户功能

guest_username=ftp //指定虚拟用户的宿主用户,CentOS中已经有内置的ftp用户了

user_config_dir=/etc/vsftpd/vuser_conf //设定虚拟用户个人vsftp的CentOS FTP服务文件存放路径。存放虚拟用户个性的CentOS FTP服务文件(配置文件名=虚拟用户名

进行认证

首先,安装Berkeley DB工具,很多人找不到db_load的问题就是没有安装这个包。

yum install db4 db4-utils

然后,创建用户密码文本/etc/vsftpd/vuser_passwdtxt ,注意奇行是用户名,偶行是密码

test

123456

接着,生成虚拟用户认证的db文件

db_load -T -t hash -f /etc/vsftpd/vuser_passwdtxt /etc/vsftpd/vuser_passwddb

随后,编辑认证文件/etc/pamd/vsftpd,全部注释掉原来语句,再增加以下两句:

auth required pam_userdbso db=/etc/vsftpd/vuser_passwd

account required pam_userdbso db=/etc/vsftpd/vuser_passwd

最后,创建虚拟用户配置文件

mkdir /etc/vsftpd/vuser_conf/

vi /etc/vsftpd/vuser_conf/test //文件名等于vuser_passwdtxt里面的账户名,否则下面设置无效

内容如下

local_root=/ftp/www //虚拟用户根目录,根据实际情况修改

write_enable=YES //可写

anon_umask=022 //掩码

anon_world_readable_only=NO

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

设置Selinux

setsebool -P ftp_home_dir=1 //设置ftp可以使用home目录

sersebool -P allow_ftpd_full_access=1 //设置ftp用户可以有所有权限

设置FTP根目录权限

mkdir /ftp/www //创建目录

chmod R 755 /ftp

chmod R 777 /ftp/www

最新的vsftpd要求对主目录不能有写的权限所以ftp为755,主目录下面的子目录再设置777权限

设置防火墙

打开/etc/sysconfig/iptables

在“-A INPUT –m state --state NEW –m tcp –p –dport 22 –j ACCEPT”,下添加:

-A INPUT -m state --state NEW -m tcp -p -dport 21 -j ACCEPT

然后保存,并关闭该文件,在终端内运行下面的命令,刷新防火墙配置:

service iptables restart

OK,运行“service vsftpd start”,你就可以访问你的FTP服务器了。

在虚拟机上的Linux系统配置FTP服务,跟Windows建立连接传输文件的具体操作步骤如下:

1、在电脑上下载并安装好小型FTP服务器(Quick Easy FTP Server) 软件,打开进行设置用户名,用于远程登录。

2、设置密码,再输一次确认密码。

3、设置想共享的文件夹。

4、设置各项权限,包括下载上传权限、下载上传速度限制等。

5、全部设置完毕后,点击“完成”。

6、完成之后,可以在软件里进行各项服务器配置,并且点左上角绿色按钮可以启动服务器,启动后,绿色按钮变暗,红色按钮变亮。

Linux下可以配置vsftp服务来实现FTP的部署。

配置支持ipv6地址的服务只要启用listen_ipv6=yes将ipv6的监听设置开启即可。

当然具体配置没有那么简单,比如设置用户权限拉,部署过程中出现错误和排错拉。最好百度一下配置说明。

一、安装vsftp

安装:yum install vsftpd

二、启动、停止、重启vsftp

启动vsftp:

service vsftpd start

或指定路径(注意:/etc/initd/路径可能不同):/etc/initd/vsftpd start

重启

service vsftpd restart

停止vsftp:

service vsftpd stop

三、创建ftp用户组和目录

1、创建FTP用户组ftp-users

groupadd ftp-users

2、创建用户组目录ftp-docs

mkdir /home/ftp-docs

注意,这时还未指定跟ftp-users关联。

3、修改权限

chmod -R 750 /home/ftp-docs

750组只能读不能写,要组能写,请改成770或760。

4、指定文件夹归属用户和用户组

chown root:ftp-users /home/ftp-docs

这时,如果远程用户属于ftp-users组,则会共享该目录。

5、添加FTP用户并未他们设置缺省目录

useradd -g ftp-users -d /home/ftp-docs user1

passwd user1

1、用在线安装

yum install vsftpd pam db4-y

使用命令将vsftp配置为系统服务

chkconfig --level 35 vsftpd on

2、配置vsftpd服务的宿主

useradd vsftpdadmin -s /sbin/nologin -M

这个vsftpdadmin只是用来替换root的,并不需要登录

3、建立ftp虚拟宿主帐户

useradd vsftpuser -s /sbin/nologin -M

这ftpuser只个虚拟帐户的宿主,本身是不用登录的

4、配置vsftpdconf 配置之前要先备份一下原来的

vi /etc/vsftpd/vsftpdconf

anonymous_enable=YES --> anonymous_enable=NO //不允许匿名用户访问,默认是允许。

chroot_list_enable=YES --> chroot_list_enable=YES //不允许FTP用户离开自己主目录

增加

#设定虚拟用户个人Vsftp的配置文件存放路径。也就是说,这个被指定的目录里,将存放每个Vsftp虚拟用户个性的配置文件,一个需要注意的地方就是这些配置文件名必须和虚拟用户名相同。

user_config_dir=/etc/vsftpd/vconf/userlocal

#这一步非常重要,要记住这一步。一会要根据这个配置新建文件夹

#修改端口号

ftp_data_port=4040

reverse_lookup_enable=NO

pasv_enable=yes

pasv_min_port=48790

pasv_max_port=48800

listen_port=48796 #端口可以根据你自己实际情况配置,也可以用默认端口。但是为了安全考虑根据自己实际情况配置

5、建立虚拟用户文件

mkdir /etc/vsftpd/vconf

touch /etc/vsftpd/vonf/vir_user

6、建立虚拟用户

vi /etc/vsftpd/vonf/vir_user

virtualuser //用户名

12345678 //密码

7、生成数据库

db_load -T -t hash -f /etc/vsftpd/vconf/vir_user /etc/vsftpd/vconf/vir_userdb

8、设置数据库文件访问权限

chmod 600 /etc/vsftpd/vconf/vir_user

chmod 600 /etc/vsftpd/vconf/vir_userdb

9、修改/etc/pamd/vsftpd

auth sufficient pam_userdbso db=/etc/vsftpd/vconf/vir_user

account sufficient pam_userdbso db=/etc/vsftpd/vconf/vir_user

(要想同时使用系统用户和虚拟用户,就需要把required改成sufficient)

10

根据第四步配置的user_config_dir=/etc/vsftpd/vconf/userlocal

新建userlocal文件夹

mkdir /etc/vsftpd/vconf/userlocal

11、根据第六步建立的用户名建立一个文件

例如第六步建立的帐号是virtualuser,则新建一个virtualuser文件

touch /etc/vsftpd/conf/userlocal/virtualuser

12、编辑该用户访问的文件路径

vi /etc/vsftpd/conf/userlocal/virtualuser

输入如下

local_root= //需要指定的网站根目录,例如wwwbaiducom所在文件夹为/www/baidu

anonymous_enable=NO #禁止匿名用户访问

write_enable=YES #开启写权限

local_umask=022 #上传后文件的权限掩码

anon_upload_enable=NO #关闭匿名下载

anon_mkdir_write_enable=NO #关闭匿名创建文件夹

idle_session_timeout=60 #会话自动关闭时间 60是因分钟

data_connection_timeout=120 #数据延迟时间

max_clients=10 #最大连接数

max_per_ip=5 #同一个ip同时允许5个IP联机

local_max_rate=1048576 #实体用户传输速度限制,单位B/s。0代表不限制

13、配置就此完成,重启vsftpd服务:service vsftpd restart。

查看系统端口状态:netstas -tulnp。如果能看到48796端口正在被vsftpd调用说明启动成功。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 如何在Centos下安装ftp服务器

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情