IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Linux的vsftpd服务常用配置项以及常用管理 -> 正文阅读

[系统运维]Linux的vsftpd服务常用配置项以及常用管理

设置后台监听

background=YES

改变该服务的监听地址和端口

listen_address=192.168.0.1

listen_port=2121

开启被动模式

pasv_enable=yes

connect_from_port_20=yes:表示主动模式下的数据连接的端口号为20

开启主动模式

port_enable=yes

被动模式的随机端口的设置

pasv_min_port=xxxx(大于1024)

pasv_max_port=xxxx(大于1024)

配置ASCII模式

ascii_download_enable=yes

ascii_upload_enable=yes

配置超时选项

data_connection_timeout=xxx(以秒为单位) :数据传输的最大时长

idle_session_timeout=xxx(以秒为单位) :会话的最大空闲时长

connect_timeout=xxx(以秒为单位) :在与服务器连接的时候最大的连接时长

配置用户的传输速率

anon_max_rate=5000(单位为b/s)(匿名用户)

local_max_rate=5000(单位为b/s)(本地用户)

最大用户连接数,以及每用户最大IP使用数

max_clients=xxx:最大用户连接数

max_per_ip=xxx:每用户最大IP使用数

设置用户登录时的提示

banner_file=xxx //如果提示信息比较多,就可以使用这个选项,将提示信息存入文件当中后再显示

ftpd_banner=xxxx:显示该选项后面的提示信息

设置进入目录的信息提示

diremessage_enable=YES :开启目录的信息提示

message_file=.message :定义信息提示文件的名字

对应信息提示文件我们应该放在想要进行提示的目录里面,然后再开启这两项即可。

匿名用户相关配置

1、开启匿名登录

anonmyous_enable=YES

默认匿名用户只能读取,不能改变目录结构,即不能上传,删除。

2、开启匿名用户创建文件夹的权限

anon_mkdir_write_enable=yes?

3、设置匿名用户上传的权限

anon_upload_enable=yes?

4、设置用户仅具有下载的权限

anon_world_readable_only=yes? //设置用户仅有下载权限

5、设置用户开启其他的权限

anon_other_write_enable=yes:开启其他的权限,比如重命名,删除

6、设置用户创建的内容的默认权限

anon_umask=xxx:设置匿名用户创建新内容时其对应的权限

7、修改匿名用户上传内容的默认拥有者

匿名用户上传后默认的拥有者都是对应的登录用户

chown_uploads=YES:当该选项为YES,所以匿名用户上传的文件的拥有者将会改变

chown_username=xxx:该项配合上面一项,所有匿名用户上传的文件拥有者变为该项指定的用户

匿名用户upload,mkdir,other三种权限的解读

upload权限意味着用户是否能够上传东西到服务器上面,如果只有这个权限就只能上传文件夹,因为它没有任何权限创建文件夹

mkdir意味着用户是否可以在服务器上创建文件夹

如果仅仅有upload和mkdir权限那么该用户只能上传文件和文件夹,不能删除任何东西,或者重命名,不能做任何修改

剩下的权限就是anon_other_write_enable=yes这条命令给与的。

ftp_username=xxx :表示使用xxx用户作为匿名用户,该用户的家目录为匿名登录时进入的目录

no_anon_password=NO :表示匿名用户默认不输入密码,yes则表示要输入密码

anon_root=目录路径 :表示将匿名登录时登录的路径进行切换

本地用户相关

1、设置是否支持本地登录

local_enable=YES

2、设置本地用户创建内容的默认权限

local_umask=nnn

3、设置本地用户的写权限

write_enable=YES

4、设置用户是否能够下载

download_enable=YES

5、设置用户是否能够修改文件权限

chmod_enable=YES

6、限制本地用户切换出主目录

chroot_local_user=YES

chroot_local_user设置为YES之后,一些特例外的用户还可以切换出主目录

chroot_list_enable=YES :表示有特例用户在限制之后还可以切换出主目录

chroot_list_file=/etc/vsftpd/chroot_list :特例用户记录在这个文件中

allow_writeable_chroot=YES:表示被限制在主目录的用户对主目录具备写权限

当我们设置了chroot_local_user=YES之后,默认登录的用户在其所被限制的目录中是没有写权限的,所以当登录之后会报错“500 OOPS: vsftpd: refusing to run with writable anonymous root Login failed”.只有加上allow_writeable_chroot=YES才能正常进入。

7、限制本地用户登录

userlist_enable=YES :代表限制本地用户登录的相关文件user_list生效

userlist_deny=YES :代表开启了本地用户限制

user_list_file=/etc/vsftpd/user_list :例外的用户填入此文件

上面几项配合产生的效果:

userlist_enable=YES && userlist_deny=YES这样只有user_list文件中的用户才能正常登录

userlist_enable=YES && userlist_deny=NO :这样只有文件中的用户不能正常登录

黑名单文件

/etc/vsftpd/ftpusers

在该文件添加用户名字就能限制对应的用户登录FTP服务器

虚拟用户

使用自己创建的与系统用户不相关的用户作为FTP服务器的登录用户

1、安装对应的数据库组件

yum ?-y install db4-utils?

2、使用数据库组件生成数据库文件
db_load -T -t hash -f /etc/vsftpd/vuser.txt /etc/vsftpd/vuser.db

其中/etc/vsftpd/vuser.txt文件是一个普通的文本文件,其记录了虚拟用户的信息,奇数行为用户名,偶数行为密码。

/etc/vsftpd/vuser.db是根据vuser.txt文本文件生成的数据库文件,是一个二进制文件,也是后面用于登录的凭据。

3、修改/etc/pam.d/vsftpd文件
将文件中原本的内容全部注释,其作用是禁止本地用户登录。

注释之后在文件中加入下面两行
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vuser
account required /lib/security/pam_userdb.so db=letc/vsftpd/vuser

4、建立本地用户作为虚拟用户的映射
useradd -d /home/vftproot -s /sbin/nologin :添加一个不能登录shell的用户,并指定家目录为/home/vftproot
chmod 755 /home/vftproot :修改家目录权限
guest_enable=YES :表示开启虚拟用户功能
guest_username=vuser :将我们数据库文件中的用户都映射成这个用户
pam_service_name=vsftpd :默认已经加入

?

PS:其中虚拟用户的相关权限的管理是使用匿名用户的权限管理项

比如要修改所有虚拟用户的速率:anon_max_rate=10000

针对个别用户的个别管理

1、在/etc/vsftpd/目录下面创建一个userconf目录

2、然后再该目录下创建对应用户名的具有针对性的配文件置

比如有一个用户user1不想要使用conf文件中的全局配置,那么就可以在userconf目录下面创建一个user1文件,然后在user1文件中写入该用户想要的配置,比如速率可以和其他用户不同,可以锁定该用户的家目录,或者其权限也可以不同

日志相关

1、启用日志

xferlog_enbale=YES

2、设置日志文件的路径与名称

xferlog_file=/var/log/vsftpd.log?

3、设置日志格式

xferlog_std_format=YES(一般默认)

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-02-01 20:59:17  更:2022-02-01 21:00:13 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 7:25:22-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码