FTP服务器安装与配置

  • Post author:
  • Post category:其他


前言

虽然用户可采用多种方式来传送文件,但是FTP凭借其简单高效的特性,仍然是跨平台直接传送文件的主要方式。

1、准备安装

安装vsftpd

yum install vsftpd

安装ftp命令行程序

yum install ftp

此时可以直接启动service vsftpd restart

以匿名方式登录进行测试(默认在/var/ftp下,匿名用户为:ftp或anonymous)

2、配置文件

cd /etc/vsftpd
ll

ftpusers文件用于指定不能访问vsftpd服务器的用户列表,提高系统安全。

user_list文件用于保留用户列表,其是否起效,取决于vsftpd.conf文件中的userlist_deny参数,当userlist_deny=YES时,user_list文件中的用户无权访问vsftpd服务器,当userlist_deny=NO,才有权访问vsftpd服务器。

3、配置vsftpd服务器

vsftpd守护进程运行时,首先从vsftpd.conf文件获取配置信息,然后配合ftpusers和user_list文件决定可以访问的用户列表。

4、例题

配置vsftpd服务器,要求只允许匿名用户登录。匿名用户可在/var/ftp/pub目录中新建目录、上传和下载文件

cd /etc/vsftpd
vim vsftpd.conf

将以下注释去掉:

添加以下语句:

anon_umask=022
anon_other_write_enable=YES

修改/var/ftp/pub目录的权限

cd /var/ftp
chmod 777 pub

修改后的目录权限

重新启动vsftpd服务

service vsftpd restart

在使用put上传文件时,注意要切换到需要上传文件的目录中,下载文件时,也是在进行连接ftp命令时所在的那个目录。(注意要添加权限)

配置vsftpd服务器,实现本地用户访问配置

mkdir -p /var/www/web1
chmod -R 757 /var/www/web1
useradd test
echo 123 | passwd --stdin test
chown -R test /var/www/web1
echo "www.zjxy.edu 's web" > /var/www/web1/本地用户访问ftp.txt



重新启动vsftpd服务

禁止切换到其他目录

设置所有本地用户都不可切换到主目录以外的目录

设置指定的用户不可切换到主目录以外的目录

在etc目录下创建chroot_list文件,其文件格式与user_list相同,每个用户各占一行。

设置欢迎信息

虚拟访问配置

创建虚拟用户对应的本地用户及目录

useradd user2
mkdir -p /ftp/public /var/www/web2
echo "test file" > /ftp/public/f1.txt
echo "test file" > /var/www/web2/w2.txt
chown user2 /ftp/public/ /var/www/web2/
chmod -R 755 /ftp/public/ /var/www/web2/

创建虚拟用户文件

vim /etc/vsftpd/vuser.list
#一行用户名,下一行密码
zs
123
ls
abc

转换虚拟用户文件

db_load -T -t hash -f /etc/vsftpd/vuser.list /etc/vsftpd/vuser.db
chmod 600 /etc/vsftpd/vuser.*

创建用于用户登录时的PAM文件

cd /etc/pam.d/
cp -p vsftpd vuser.vu
vim vuser.vu 
#第一行 添加以下两行
auth       sufficient   pam_userdb.so   db=/etc/vsftpd/vuser
account    sufficient   pam_userdb.so   db=/etc/vsftpd/vuser

修改配置文件

vim /etc/vsftpd/vsftpd.conf 
local_enable=YES
pam_service_name=vuser.vu
guest_enable=YES
guest_username=user2
user_config_dir=/etc/vsftpd/vconfig
virtual_use_local_privs=YES

虚拟用户配置专用文件

mkdir /etc/vsftpd/vconfig
vim /etc/vsftpd/vconfig/z3
local_root=/ftp/public/
anon_world_readable_only=YES
write_enable=NO
anon_max_rate=500000
vim /etc/vsftpd/vconfig/l4
local_root=/var/www/web2/
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_max_rate=1000000

完成上述配置重启服务即可测试

service vsftpd restart



版权声明:本文为qq_62862605原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。