2020-03-16

[if !supportLists]1、[endif]配置ftp服务器

1.1、安装vsftpd服务


安装成功


1.2、清除防火墙规则链


1.3、设置SELinux临时失效


1.4、清除/etc/vsftpd/vsftpd.conf中的配置文件

1.4.1、将原配置文件进行备份


1.4.2、使用grep筛选出无注释的内容重定向输出到vsftpd.conf配置文件中


1.4.3、查看当前配置文件如下:


[if !supportLists]2、[endif]配置不同用户登录模式

2.1、配置匿名登录模式

Vsftpd服务启动后,默认可以使用anonymous匿名登录,但是没有其他的操作权限,需要进行配置。

2.1.1、修改/etc/vsftpd/vsftpd.conf配置文件,配置匿名用户配置项。


2.1.2、修改后配置文件如下:


2.1.3、修该ftp目录的属主为ftp用户


2.1.4、启动vsftpd服务


2.1.5、linux客户端登陆测试

2.1.5.1、在客户端安装ftp命令


2.1.5.2、使用ftp命令登陆ftp服务器:ftp 服务器地址


2.1.5.3、测试ftp


2.1.6、window连接ftp

2.1.6.1、在资源管理器或浏览器地址栏输入ftp地址


2.1.6.2、成功访问ftp服务器





2.2、配置本地用户登录模式

2.2.1、本地用户local_enable默认为YES,默认可以使用ftp服务器本地用户进行登录,可以禁止匿名用户登录,只允许本地用户登录,修改配置文件如下:



2.2.2、重启vsftpd服务


2.2.3、客户端测试连接



查看用户列表文件,存在root用户,禁止登录



修改配置文件,使用户列表文件中的用户成为允许登录用户,不存在于用户列表文件的用户将无法登录ftp服务器




teacher用户不在用户列表中将禁止登录


修改/etc/vsftpd/user_list文件,添加teacher用户



重新使用teacher登录,登录成功


2.3、配置虚拟用户模式

Vsftpd虚拟用户原理:虚拟用户就是没有实际的真实系统用户,而是通过映射到其中一个真实用户以及设置相应的权限来实现访问验证,虚拟用户不能登录Linux系统,从而让系统更加的安全可靠。

2.3.1、创建虚拟用户临时文件/etc/vsftpd/ftpusers.txt,新建虚拟用户和密码,其中奇数行为用户名,偶数行为密码:



2.3.2、生成Vsftpd虚拟用户数据库认证文件,设置权限777


2.3.3、删除用户文本文件


2.3.4、配置PAM认证文件,/etc/pam.d/vsftpd


添加如下内容并将原文件内容注释

auth      required        pam_userdb.so   db=/etc/vsftpd/ftpusers

account   required        pam_userdb.so   db=/etc/vsftpd/ftpusers


2.3.5、新建系统用户,将所有Vsftpd虚拟用户映射到该系统用户,该系统用户不需要密码,也不需要登录,主要用于虚拟用户映射使用


2.3.6、修改/etc/vsftpd/vsftpd.conf,配置虚拟用户配置项


2.3.7、创建虚拟用户配置文件目录


2.3.8、创建各虚拟用户的配置文件


配置内容如下:


2.3.9、创建虚拟用户目录


2.3.10、设置虚拟用户目录权限


2.3.11、重启vsftpd服务


2.3.12、测试登陆成功


[if !supportLists]3、[endif]附录

3.1、vsftpd默认配置文件

anonymous_enable=YES 开启匿名用户访问;

local_enable=YES     启用本地系统用户访问;

write_enable=YES     本地系统用户写入权限;

local_umask=022     本地用户创建文件及目录默认权限掩码;

dirmessage_enable=YES 打印目录显示信息,通常用于用户第一次访问目录时,信息提示;

xferlog_enable=YES 启用上传/下载日志记录;

connect_from_port_20=YES FTP使用20端口进行数据传输;

xferlog_std_format=YES 日志文件将根据xferlog的标准格式写入;

listen=NO Vsftpd不以独立的服务启动,通过Xinetd服务管理,建议改成YES;

listen_ipv6=YES 启用IPV6监听;

pam_service_name=vsftpd     登录FTP服务器,依据/etc/pam.d/vsftpd中内容进行认证;

userlist_enable=YES vsftpd.user_list和ftpusers配置文件里用户禁止访问FTP;

tcp_wrappers=YES     设置vsftpd与tcp wrapper结合进行主机的访问控制,Vsftpd服务器检查/etc/hosts.allow 和/etc/hosts.deny中的设置,来决定请求连接的主机,是否允许访问该FTP服务器。

3.2、vsftpd常用配置

listen=[YES|NO]是否以独立运行的方式监听服务。

listen_address=IP地址设置要监听的IP地址。

listen_port=21设置FTP服务的监听端口。

download_enable=[YES|NO]是否允许下载文件。

userlist_enable=[YES|NO]userlist_deny=[YES|NO]是否启用“禁止登陆用户名单”。

max_clients=0最大客户端连接数,0为不限制。

max_per_ip=0同一IP地址最大连接数,0位不限制。

anonymous_enable=[YES|NO]是否允许匿名用户访问。

anon_upload_enable=[YES|NO]是否允许匿名用户上传文件。

anon_umask=022匿名用户上传文件的umask值。

anon_root=/var/ftp匿名用户的FTP根目录。

anon_mkdir_write_enable=[YES|NO]是否允许匿名用户创建目录。

anon_other_write_enable=[YES|NO]是否开放匿名用户其他写入权限。

anon_max_rate=0匿名用户最大传输速率(字节),0为不限制。

local_enable=[YES|NO]是否允许本地用户登陆FTP。

local_umask=022本地用户上传文件的umask值。

local_root=/var/ftp本地用户的FTP根目录。

chroot_local_user=[YES|NO]是否将用户权限禁锢在FTP目录,更加的安全。

local_max_rate=0本地用户最大传输速率(字节),0为不限制。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • ftp 文件传输协议 跨平台 上传下载文件 vsftpd 工具:非常安全的文件传输协议;默认的命令端口21号,数据...
    柒夏锦阅读 9,566评论 1 9
  • 图片更清晰,文字在最下面 FTP是TCP/IP的一种应用,使用TCP而不是UDP,所以是可靠的,面向连接的。 FT...
    停下浮躁的心阅读 5,702评论 0 4
  • FTP服务概述 简单FTP构建及访问 VSFTP服务基础 用户禁锢、黑白名单 FTP并发及带宽限制 一、FTP服务...
    紫_轩阅读 12,359评论 3 25
  • 1、load和initialize的区别 +load和+initialize是 Objective-C runti...
    heigo阅读 1,882评论 0 0
  • 从小喜欢养宠物,但自从养了好几年的一只狼犬被老鼠药给害死了之后,我再也没有心思去养宠物,它曾经救过溺水的我,我将其...
    亦浮亦沉阅读 3,297评论 10 9

友情链接更多精彩内容