当前位置:首页 » 文件管理 » centosftp服务器设置参数

centosftp服务器设置参数

发布时间: 2025-05-18 02:12:55

❶ 如何在Centos下安装ftp服务器

一:安装vsftpd
查看是否已经安装vsftpd

2
二:基于虚拟用户的配置
所谓虚拟用户就是没有使用真实的帐户,只是通过映射到真实帐户和设置权限的目的。虚拟用户不能登录CentOS系统。
修改配置文件
配置文件直接贴出来吧

3
三:使用Berkeley DB进行认证
yum install db4 db4-utils
然后,创建用户密码文本/etc/vsftpd/vuser_passwd.txt ,注意奇行是用户名,偶行是密码

4
接着,生成虚拟用户认证的db文件
编辑认证文件/etc/pam.d/vsftpd,全部注释掉原来语句,再增加以下两句:
最后,创建虚拟用户配置文件

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

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

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

❷ centos ftp服务器怎么设置用户权限,要求 : 1.admin 所有权限 2.userA 只能上传 3.userB 只能下载

首先你要弄清楚vsftpd的验证方式有三种
匿名访问:任何人无需验证口令即可登入FTP服务端。
本地用户:使用FTP服务器中的用户、密码信息。
虚拟用户:创建独立的FTP帐号资料。
一般像你这种对权限控制比较严格的话,要用虚拟用户模式,下面是方法
第1步:建立虚拟FTP用户数据库文件。
切换至vsftpd程序目录:cd /etc/vsftpd/
创建用于生成FTP用户数据库的原始帐号和密码文件:vim vuser.list
//单数行为帐号,双数行为密码。
userA
passwdA
userB
passwdB
admin
passwdadmin
使用db_load命令用HASH算法生成FTP用户数据库文件vuser.db:
db_load -T -t hash -f vuser.list vuser.db
FTP用户数据库内容很敏感,所以权限给小一些:chmod 600 vuser.db
删除原始的帐号和密码文件:rm -f vuser.list

第2步:创建FTP根目录及虚拟用户映射的系统用户。
创建用户virtual并设置为不允许登陆系统并定义该用户的家目录:
useradd -d /var/ftproot -s /sbin/nologin virtual
为保证其他用户可以访问,给予rwxr-xr-x权限:chmod -Rf 755 /var/ftproot/

第3步:建立支持虚拟用户的PAM认证文件:
vim /etc/pam.d/vsftpd.vu
//参数db用于指向刚刚生成的vuser.db文件,但不要写后缀。
auth required pam_userdb.so db=/etc/vsftpd/vuser
account required pam_userdb.so db=/etc/vsftpd/vuser

第4步:在vsftpd.conf文件中添加支持配置。
vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO 禁止匿名开放模式。
local_enable=YES 允许本地用户模式。
guest_enable=YES 开启虚拟用户模式。
guest_username=virtual 指定虚拟用户帐号。
pam_service_name=vsftpd.vu 指定pam文件。
allow_writeable_chroot=YES 允许禁锢的FTP根目录可写而不拒绝用户登入请求。

第5步:为虚拟用户设置不同的权限
现在不论是userA还是userB帐户,他们的权限都是相同的——默认不能上传、创建、修改文件
指定用户独立的权限配置文件存放的目录:
vim /etc/vsftpd/vsftpd.conf
user_config_dir=/etc/vsftpd/vusers_dir
创建用户独立的权限配置文件存放的目录:
mkdir /etc/vsftpd/vusers_dir/
切换进入到该目录中:cd /etc/vsftpd/vusers_dir/
创建userA的配置文件:
vim userA
anon_upload_enable=YES
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
anon_download_enable=NO
创建userB的配置文件:
vim userB
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
anon_download_enable=YES
创建admin的配置文件
vim admin
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_download_enable=YES

第6步:重启vsftpd服务,验证实验效果。
systemctl restart vsftpd
如果出现操作被拒绝,考虑selinux的因素

❸ CentOS下安装使用FTP服务器端程序ProFTPd的教程

安装:

安装EPEL软件包

复制代码代码如下:
rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
YUM安装ProFTPd

复制代码代码如下:
yum install proftpd
PS:编译安装ProFTPd的方法

复制代码代码如下:
wget ftp://ftp-stud.fht-esslingen.de/pub/Mirrors/ftp.proftpd.net/distrib/source/proftpd-1.3.1.tar.gz
tar xzvf proftpd-1.3.1.tar.gz
cd proftpd-1.3.1
./configure --with-moles=mod_sql:mod_sql_mysql:mod_quotatab:mod_quotatab_sql
--with-includes=/usr/include/mysql
--with-libraries=/usr/lib/mysql
make && make install

设置开机启动

复制代码代码如下:
chkconfig --level 3 proftpd on
ProFTPd管理:
启动
复制代码代码如下:proftpd:service proftpd start
停止
复制代码代码如下:proftpd:service proftpd stop
重启
复制代码代码如下:proftpd:service proftpd restart
重载
复制代码代码如下:proftpd:service proftpd reload
配置文件/etc/proftpd.conf,可以通过proftpd -t6指令检测语法是否正确。


添加ftp用户和用户组

复制代码代码如下:
groupadd -g 5500 ftpgroup
adser -u 5500 -s /bin/false -d /bin/null -c "proftpd user" -g ftpgroup ftpuser

添加虚拟用户
首先我们需要设置配置文件/etc/proftpd.conf。
添加下面代码进配置文件:

复制代码代码如下:
AuthUserFile /etc/ftpd.passwd
AuthGroupFile /etc/ftpd.group
关闭检测/etc/shells:

复制代码代码如下:
RequireValidShell off
设置仅使用虚拟用户认证:

复制代码代码如下:
AuthOrder mod_auth_file.c
禁止PAM认证:

复制代码代码如下:
PersistentPasswd off
AuthPAM off
限制改变根目录:

复制代码代码如下:
DefaulRoot ~
按照上面的要求设置好配置文件后,我们使用ftpasswd工具来添加虚拟用户,首先下载这个工具。

复制代码代码如下:
cd /usr/sbin/
wget http://www.castaglia.org/proftpd/contrib/ftpasswd
chmod +x ftpasswd
ftpasswd工具的格式如下:

复制代码代码如下:
# ftpasswd --passwd --name {username} --file /etc/ftpd.passwd --uid {5000} --gid {5000} --home /var/ftp/username-home/ --shell /bin/false
# ftpasswd --group --name group1 –file /etc/ftpd.group --gid 5000 --member username

❹ linux 服务器 centos5.5 FTP如何建立用户配置权限 A用户能够下载 B用户能够访问 C用户能够上传下载。急

1、ftp服务器只要你启用了匿名用户访问ftp服务器,就有访问的权限,权限只有查看,不能上传下载修改,所以你的B用户匿名登录就行了;本地用户只要在配置文件增加本地用户能下载,就有查看、下载的权限,但不能写入,即不能上传、修改文件目录之类,所以A用户以自己名字登录就行了;C用户能上传下载,就要在前面的基础上,给他单独设立权限了,用访问控制列表设权限。步骤如下:

2、修改配置文件

#vim/etc/vsftpd/vsftpd.conf#下面没有的就添加,注意匿名用户权限不要太大
anonymouse_enable=YES#启用匿名用户
download_enable=YES#本地用户可下载
local_root=/var/ftp#修改本地用户ftp根目录,默认本地用户只能访问自己的家目,你可以根据自己情况修改


3、给C用户单独设立权限,用setfacl命令设访问控制

#setfacl-mu:C:rwx/var/ftp/

-m 增加一条策略

u 表示是给用户设立权限,另外一个是 g ,给组;

C C用户

rwx 表示所有权限,一定是这个,才能有下载上传权限

后面那个是ftp目录



4、登录

B用户以匿名登录;

A和C以自己的系统账户密码登录,会有相应的权限的。。

你应该对vsftpd的配置文件不熟,去网上找份详解,自己慢慢研究


祝你好运~~~

❺ CentOS53系统设置vsftpd虚拟用户的具体步骤

我们登录FTP有三种方式,匿名登录、本地用户登录和虚拟用户登录。

匿名登录:在登录FTP时使用默认的用户名,一般是ftp或anonymous。

本地用户登录:使用系统用户登录,在/etc/passwd中。

虚拟用户登录:这是FTP专有用户,有两种方式实现虚拟用户,本地数据文件和数据库服务器。

FTP虚拟用户是FTP服务器的专有用户,使用虚拟用户登录FTP,只能访问FTP服务器提供的资源,大大增强了系统的安全。

本文的Linux系统是CentOS 5.3

yum -y install vsftpd

一、建立Vsftpd虚拟用户:

1、添加虚拟用户口令文件安装Vsftpd

[[email protected] ~]#vi /etc/vsftpd/vftpuser.txt

添加虚拟用户名和密码,一行用户名,一行密码,以此类推。奇数行为用户名,偶数行为密码。

ftp1 #用户名

123456 #密码

ftp2 #用户名

123456 #密码

2、生成虚拟用户口令认证文件

将刚添加的vftpuser.txt虚拟用户口令文件转换成系统识别的口令认证文件。

首先查看系统有没有安装生成口令认证文件所需的软件db4-utils。

下面使用db_load命令生成虚拟用户口令认证文件。

[[email protected] ~]# db_load -T -t hash -f /home/vuser.txt /etc/vsftpd_login.db

-bash: db_load: command not found

###############################

出现没有db_load的提示是因为有些db4的包没有安装,需要安装下列包:

db4-*.rpm

db4-tcl-*.rpm

db4-utils-*.rpm

或者直接: yum -y install db4 db4-tcl db4-utils

db_load命令主要是用来生成db数据库使用的

格式:

db_load -T -t hash -f passwd.txt /etc/vsftpd/user_passwd.db

生成一个hash码型的数据库文件供ftp虚拟用户使用。

##########################

[[email protected] ~]#db_load -T -t hash -f /etc/vsftpd/vftpuser.txt /etc/vsftpd/vftpuser.db

3、编辑vsftpd的PAM认证文件

在/etc/pam.d目录下,

[[email protected] ~]#vi /etc/pam.d/vsftpd

将里面其他的都注释掉,添加下面这两行:

auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vftpuser

account required /lib/security/pam_userdb.so db=/etc/vsftpd/vftpuser

4、建立本地映射用户并设置宿主目录权限

所有的FTP虚拟用户需要使用一个系统用户,这个系统用户不需要密码。

[[email protected] ~]#useradd -d /home/vftpsite -s /sbin/nologin vftpuser

[[email protected] ~]#chmod 755 /home/vftpsite //网上为700,设置为700后FTP用户无上传权限

5、配置vsftpd.conf(设置虚拟用户配置项)

[[email protected] ~]#vi /etc/vsftpd/vsftpd.conf

guest_enable=YES #开启虚拟用户

guest_username=vftpuser #FTP虚拟用户对应的系统用户[useradd -d /home/vftpsite -s

/sbin/nologin vftpuser]

pam_service_name=vsftpd #PAM认证文件

6、重启vsftpd服务

[[email protected] ~]#service vsftpd restart

7、测试虚拟用户登录FTP

C:Documents and SettingsAdministrator>ftp 192.168.2.12

Connected to 192.168.2.12.

220 (vsFTPd 2.0.5)

User (192.168.2.12:(none)): ftp1

331 Please specify the password.

Password:

500 OOPS: cannot change directory:/home/vftpsiteConnection closed by remote host

.//在配置vsftpd的时候连接vsftpd出现了500 OOPS: cannot change directory:/home/vftpsite

的错误,vftpsite为登录时使用的本地用户名。

解决办法:

[[email protected] ~]# setsebool -P ftp_home_dir on

也有网上说在终端输入命令:

setsebool -P ftpd_disable_trans 1

service vsftpd restart

就OK了!

测试:

C:Documents and SettingsAdministrator>ftp 192.168.2.12

Connected to 192.168.2.12.

220 (vsFTPd 2.0.5)

User (192.168.2.12:(none)): ftp1

331 Please specify the password.

Password:

230 Login successful.

二、虚拟用户高级设置:

1、virtual_use_local_privs参数

当virtual_use_local_privs=YES时,虚拟用户和本地用户有相同的权限;

当virtual_use_local_privs=NO时,虚拟用户和匿名用户有相同的权限,默认是NO。

当virtual_use_local_privs=YES,write_enable=YES时,虚拟用户具有写权限(上传、下载、删除

、重命名)。

当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=YES,

anon_upload_enable=YES时,虚拟用户不能浏览目录,只能上传文件,无其他权限。

当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,

anon_upload_enable=NO时,虚拟用户只能下载文件,无其他权限。

当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,

anon_upload_enable=YES时,虚拟用户只能上传和下载文件,无其他权限。

当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,

anon_mkdir_write_enable=YES时,虚拟用户只能下载文件和创建文件夹,无其他权限。

当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,

anon_other_write_enable=YES时,虚拟用户只能下载、删除和重命名文件,无其他权限。

2. 建立各个虚拟用户自身的配置文件

[[email protected] ~]#vi /etc/vsftpd/vsftpd.conf

添加:

user_config_dir=/etc/vsftpd/vsftpd_user_conf

[[email protected] ~]#mkdir /etc/vsftpd/vsftpd_user_conf

编辑ftp1的配置文件

[[email protected] ~]#vi /etc/vsftpd/vsftpd_user_conf/ftp1

添加:

anon_world_readable_only=NO #开放ftp1的下载权限(只能下载)。注意这个地方千万不能写成YES

,否则ftp1将不能列出文件和目录。

编辑ftp2的配置文件

[[email protected] ~]#vi /etc/vsftpd/vsftpd_user_conf/ftp2

添加:

write_enable=YES #开放ftp2的写权限

anon_world_readable_only=NO #开放ftp2的下载权限

anon_upload_enable=YES #开放ftp2的上传权限

anon_mkdir_write_enable=YES #开放ftp2创建目录的权限

anon_other_write_enable=YES #开放ftp2删除和重命名的权限

3、所有虚拟用户使用一般配置

[[email protected] ~]#vi /etc/vsftpd/vsftpd.conf

write_enable=YES

anonymous_enable=NO

local_enable=YES

guest_enable=YES

guest_username=vftpuser

virtual_use_local_privs=NO

pam_service_name=vsftpd

anon_world_readable_only=NO #可以下载

anon_upload_enable=NO(默认值) #不能上传

anon_mkdir_write_enable=NO(默认值) #不能新建文件夹

anon_other_write_enable=NO(默认值) #不能删除和重命名文件

ftpd_banner=Welcome to yoozhu FTP server

xferlog_enable=YES

xferlog_file=/var/log/vsftpd.log

xferlog_std_format=YES

ascii_upload_enable=YES

ascii_download_enable=YES

tcp_wrappers=NO

setproctitle_enable=YES

listen_port=21

connect_from_port_20=YES

idle_session_timeout=600

data_connection_timeout=120

max_clients=0

max_per_ip=3

local_max_rate=512000

4、各个虚拟用户使用自身配置

[[email protected] ~]#vi /etc/vsftpd/vsftpd.conf

write_enable=YES

anonymous_enable=NO

local_enable=YES

guest_enable=YES

guest_username=vftpuser

virtual_use_local_privs=NO

pam_service_name=vsftpd

user_config_dir=/etc/vsftpd/vsftpd_user_conf #设定用户配置文件存放目录

ftpd_banner=Welcome to yoozhu FTP server

xferlog_enable=YES

xferlog_file=/var/log/vsftpd.log

xferlog_std_format=YES

ascii_upload_enable=YES

ascii_download_enable=YES

tcp_wrappers=NO

setproctitle_enable=YES

listen_port=21

connect_from_port_20=YES

idle_session_timeout=600

data_connection_timeout=120

max_clients=0

max_per_ip=3

local_max_rate=512000

[[email protected] ~]#mkdir /etc/vsftpd/vsftpd_user_conf

编辑ftp1的配置文件

[[email protected] ~]#vi /etc/vsftpd/vsftpd_user_conf/ftp1

anon_world_readable_only=NO

编辑ftp2的配置文件

[root@CentOS5 /]#vi /etc/vsftpd/vsftpd_user_conf/ftp2

anon_world_readable_only=NO

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

❻ CentOS安装vsftp建新用户的方法

rpm -qa | grep vsftpd 查看有没有安装vsftp
运行命令开始安装
yum -y install vsftpd
centos会自动下载安装。
安装完毕后
设置每次开机时自动运行
chkconfig vsftpd on
手工启动
service vsftpd start
可以通过 netstat -tl查看是否在监听21端口。
建新用户
# useradd –d /var/www -g ftp –s /sbin/nologin myftp
说明:
-s /sbin/nologin 是让其不能登陆系统
-d 是指定用户目录为/var/www ,这里可以替换成任何你需要的目录。
-g ftp 把用户加入到ftp组中(vsftp已创建)
myftp是ftp用户名,在配置时把这个myftp换成你的ftp用户名。
执行该命令后,如果出现这样的错误提示:
useradd: warning: the home directory already exists.
Not ing any file from skel directory into it.
这说明用户的目录已经存在(/var/www,这个可以是任何你设定的目录),不可再新建此目录,并非添加用户失败,可以忽略。
特别提醒:用useradd建立的用户,如果后面不加–s /sbin/nologin参数,建立的用户为普通系统用户,有系统登陆centos服务器的权限,在虚拟主机环境下,这非常危险。所以要在useradd命令后面加上参数–s /sbin/nologin,为centos 服务器虚拟主机添加不可以登录系统的ftp专用账号(虚拟账户)
设置密码
# passwd myftp
提示:重复输入2次
修改/var/www目录属性:(或任何自己定义的目录)
# chown -R myftp /var/www 递归把所有目录及文件的拥有者设为新添加的ftp用户
# chmod -R 755 /var/www 递归地设置拥护者全部权限,其他用户只有读取和执行权限
这样,如果网站运行时需要有写入权限,可以直接通过ftp的用户名来修改。
配置文件 /etc/vsftpd/vsftpd.conf
设置帐户只能访问自己的目录,也就是上面建用户的时候设置的目录–d /var/www
Chroot_local_user=yes
重启 vsftpd服务
# service vsftpd restart

❼ CentOs ftp 设置用户访问指定目录

  • 使用root账号登录centos系统

  • 检查是否已安装vsftp

    rpm -qa |grep vsftpd #未输出信息,表示未安装vsftp
  • 通过yum安装vsftp

    yum -y install vsftpd
  • ftp启动、重启、停止、状态查询命令

    service vsftpd start #启动ftpservice vsftpd stop #停止ftpservice vsftpd restart #重启ftpservice vsftpd status #查询ftp状态
  • 设置为开机启动(可设置)

    chkconfig vsftpd on
  • 设置配置文件

    vi /etc/vsftpd/vsftpd.conf

    修改如下内容:

    anonymous_enable=NO #设置不允许匿名账户登录chroot_local_user=YES #所有用户限制在主目录中chroot_list_enable=NO #不启动限制用户名单,直接限制所有用户userlist_enable=NO #当为YES时只有userlist_file文件中指定的用户才能登录allow_writeable_chroot=YES #(在文件尾部新增)防止用户有写入权限时报错local_root=/home/www #(在文件尾部新增)设置用户的根目录

    重启ftp

    service vsftpd restart
  • 创建ftp用户

    创建用户组

    groupadd ftpgroups

    创建用户

    # useradd 添加用户命令 -d /home/www 指定用户根目录 -g ftpgroups 加入用户组 ftptest用户名useradd -d /home/www -g ftpgroups ftptest

    设置用户密码

    passwd ftptest # passwd(命令) ftptest(用户名,根据你实际情况写)

    设置不允许用于系统登录

    usermod -s /sbin/nologin ftptest #ftptest(用户名,根据你实际情况写)
  • 设置文件权限

    chmod 755 /home/www

    设置目录拥有者

    chown -R ftptest:root /home/www #ftptest:ftp用户名 ; /home/www:文件目录

    设置防火墙
    查看防火墙状态,如果未启动,直接跳过本步骤

    systemctl status firewalld

    开放20、21端口(阿里云服务器还需配置安全组开放防火墙)

    firewall-cmd --permanent --zone=public --add-port=20/tcpfirewall-cmd --permanent --zone=public --add-port=20/udpfirewall-cmd --permanent --zone=public --add-port=21/tcpfirewall-cmd --permanent --zone=public --add-port=21/udpfirewall-cmd --reload #重新载入

    至此ftp服务安装成功,如果出现不能访问或不能写入的情况,就还需要设置SELinux(关闭)

    sestatus -v #查看SELinux状态,如果SELinux status参数为enabled即为开启状态setenforce 0 #临时关闭(不用重启机器)

❽ linux(CentOS7) FTP服务器配置用户

要为CentOS 7系统配置FTP服务器并添加用户,首先,执行以下步骤:

1. 在终端中,创建一个新的FTP用户并设置密码:

bash
sudo useradd -m -s /sbin/nologin ftpuser
sudo passwd ftpuser

2. 打开FTP服务器配置文件`vsftpd.conf`:

bash
sudo vi /etc/vsftpd/vsftpd.conf

然后,修改相关配置,如允许特定用户访问:

bash
anonymous_enable=NO
user_list_enable=YES
user_list_deny=NO
user_list_file=/etc/vsftpd/user_list

3. 接着,编辑`user_list`文件,添加新创建的用户:

bash
sudo vi /etc/vsftpd/user_list
ftpuser:localhost,127.0.0.1

保存并关闭文件后,重启FTP服务器以应用更改:

bash
sudo systemctl restart vsftpd

4. 确保配置无误,使用FTP客户端如Xftp进行连接测试:

点击"新建连接",输入服务器的IP地址、默认的FTP端口号(通常是21),用户名为`ftpuser`,以及刚才设置的密码。

如果连接成功,您会看到连接状态栏显示为绿色小圆点,表示连接已建立。

至此,CentOS 7的FTP服务器用户配置已完成,现在您可以使用新创建的`ftpuser`账户登录并管理FTP资源了。

热点内容
内置存储卡可以拆吗 发布:2025-05-18 04:16:35 浏览:333
编译原理课时设置 发布:2025-05-18 04:13:28 浏览:374
linux中进入ip地址服务器 发布:2025-05-18 04:11:21 浏览:610
java用什么软件写 发布:2025-05-18 03:56:19 浏览:31
linux配置vim编译c 发布:2025-05-18 03:55:07 浏览:106
砸百鬼脚本 发布:2025-05-18 03:53:34 浏览:940
安卓手机如何拍视频和苹果一样 发布:2025-05-18 03:40:47 浏览:737
为什么安卓手机连不上苹果7热点 发布:2025-05-18 03:40:13 浏览:801
网卡访问 发布:2025-05-18 03:35:04 浏览:507
接收和发送服务器地址 发布:2025-05-18 03:33:48 浏览:370