返回顶部
首页 > 资讯 > 操作系统 >浅析Linux中vsftpd服务配置(匿名,用户,虚拟用户)
  • 420
分享到

浅析Linux中vsftpd服务配置(匿名,用户,虚拟用户)

vsftpd服务配置linuxvsftpd 2022-06-04 23:06:59 420人浏览 泡泡鱼
摘要

vsftpd概述 vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点。vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 linux、BSD、

vsftpd概述

vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点。vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 linux、BSD、Solaris、 HP-UNIX等系统上面,是一个完全免费的、开放源代码的ftp服务器软件,支持很多其他的 FTP 服务器所不支持的特征。

特点

非常高的安全性需求、带宽限制、良好的可伸缩性、可创建虚拟用户、支持IPv6、速率高

小巧轻快,安全易用。

ftp、sftp、vsftp、vsftpd这四个的区别

ftp 是File Transfer Protocol的缩写,文件传输协议,用于在网络上进行文件传输的一套标准协议,使用客户/服务器模式。它属于网络传输协议的应用层。

sftp 是ssh File Transfer Protocol的缩写,安全文件传输协议;

vsftp 是一个基于GPL发布的类Unix系统上使用的ftp服务器软件,它的全称是Very Secure FTP从此名称可以看出来,编制者的初衷是代码的安全;

vsftpd 是very secure FTP daemon的缩写,安全性是它的一个最大的特点。vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux、BSD、Solaris、 HP-UNIX等系统上面,是一个完全免费的、开放源代码的ftp服务器软件;

一,匿名用户登录ftp(文件在/var/ftp)

1,安装vsftpd服务


[root@localhost ~]# yum install vsftpd -y ##安装服务
[root@localhost ~]# cd /etc/vsftpd/ ##此目录是配置文件目录
[root@localhost vsftpd]# ls
ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh
[root@localhost vsftpd]# systemctl start vsftpd ##开启vsftpd服务
[root@localhost vsftpd]# systemctl stop firewalld.service ##关闭防火墙
[root@localhost vsftpd]# setenforce 0 ##关闭增强功能
[root@localhost vsftpd]# ls /var/ftp/ ##切换到ftp目录下
pub
[root@localhost vsftpd]# echo "this is test" > /var/ftp/test.txt ##添加一个文本文件

2,用测试机cmd访问vsftpd服务(cmd连接ftp)并下载文件


C:\Users\xy007>ftp 192.168.13.140 ##访问ftp服务
连接到 192.168.13.140。
220 (vsFTPd 3.0.2)
200 Always in UTF8 mode.
用户(192.168.13.140:(none)): ftp ##匿名访问
331 Please specify the passWord.
密码: 
##密码无 回车
230 Login successful.
ftp> pwd  ##查看当前路径
257 "/"  ##ftp服务的根目录
ftp> ls -a  ##查看目录中的内容
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
.
..
pub
test.txt  ##服务器中的文件
226 Directory send OK.
ftp: 收到 25 字节,用时 0.00秒 25000.00千字节/秒。
ftp> get test.txt ##下载文件到本地(在哪个磁盘的访问就下载到哪里,可以切换磁盘来下载e:)
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for test.txt (13 bytes).
226 Transfer complete.
ftp: 收到 13 字节,用时 0.00秒 13000.00千字节/秒。
ftp> put test1.txt ##在c盘中创建一个test1.txt然后上传到Linux中
200 PORT command successful. Consider using PASV.
550 Permission denied. ##此时是权限受限的
Linux中vsftpd服务配置(匿名,用户,虚拟用户)

3,修改vsftpd配置文件将匿名访问开启最大权限


[root@localhost ftp]# cd /etc/vsftpd/
[root@localhost vsftpd]# vim vsftpd.conf
##在配置文件中查找开启下列选项
anonymous_enable=YES ##开启匿名用户
local_enable=YES ##本地用户
write_enable=YES ##写入权限
local_umask=022 ##本地用户反掩码
anon_upload_enable=YES ##上传权限开启
anon_mkdir_write_enable=YES ##开启创建目录并且能够写入
anon_other_write_enable=YES ##添加一个other的重命名和删除的权限
[root@localhost vsftpd]# systemctl restart vsftpd ##重启服务
[root@localhost vsftpd]# cd /var/ftp/ ##切换到ftp目录下
[root@localhost ftp]# ls
pub test.txt
[root@localhost ftp]# ls -l
总用量 4
drwxr-xr-x. 2 root root 6 10月 31 2018 pub
-rw-r--r--. 1 root root 13 11月 5 19:14 test.txt
[root@localhost ftp]# chmod 777 pub ##将pub目录权限给最大,注意不能直接给ftp权限最大

4,用测试机cmd访问ftp并上传本地文件到Linux上


C:\Users\xy007>ftp 192.168.13.140 ##访问ftp服务
连接到 192.168.13.140。
220 (vsFTPd 3.0.2)
200 Always in UTF8 mode.
用户(192.168.13.140:(none)): ftp
331 Please specify the password.
密码:
230 Login successful.
ftp> cd pub/    ##切换到pub目录下
250 Directory successfully changed.
ftp> put test1.txt   ##上传文件
200 PORT command successful. Consider using PASV.
150 Ok to send data.
226 Transfer complete.
ftp: 发送 13 字节,用时 0.03秒 0.41千字节/秒。
ftp> by ##退出
221 Goodbye.
##你也可以使用delete删除文件

5,查看上传的文件


[root@localhost ftp]# cd /var/ftp/pub ##切换到pub目录下
[root@localhost pub]# ls ##查看上传的文件
test1.txt

二,利用本地用户登录ftp(文件在家目录)

防止本地用户访问系统目录,限制仅访问用户家目录

1,创建系统用户


[root@localhost pub]# useradd zhangsan ##创建用户并设置用户密码
[root@localhost pub]# passwd zhangsan
[root@localhost pub]# useradd lisi ##创建用户并设置用户密码
[root@localhost pub]# passwd lisi

2,测试机上cmd使用用户登录ftp


C:\Users\xy007>ftp 192.168.13.140 ##登录ftp服务
连接到 192.168.13.140。
220 (vsFTPd 3.0.2)
200 Always in UTF8 mode.
用户(192.168.13.140:(none)): zhangsan ##使用本地用户
331 Please specify the password.
密码:
230 Login successful.
ftp> ls / ##查看用户/下的目录文件,直接到系统根目录下
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
/bin
/boot
/dev
/etc
/home
/lib
/lib64
/media
/mnt
/opt
/proc
/root
/run
/sbin
/srv
/sys
/tmp
/usr
/var
226 Directory send OK.
ftp: 收到 126 字节,用时 0.02秒 7.88千字节/秒。

3,防止本地用户访问系统目录,限制仅访问用户家目录


[root@localhost pub]# vim /etc/vsftpd/vsftpd.conf ##修改配置文件
chroot_local_user=YES ##开启限制本地访问系统目录模块
allow_writeable_chroot=YES ##添加写的权限
[root@localhost pub]# systemctl restart vsftpd ##重启服务

4,测试机cmd访问


C:\Users\xy007>ftp 192.168.13.140 ##访问ftp
连接到 192.168.13.140。
220 (vsFTPd 3.0.2)
200 Always in UTF8 mode.
用户(192.168.13.140:(none)): zhangsan ##用户zhangsan
331 Please specify the password.
密码:
230 Login successful.
ftp> cd / ##切换到系统根目录
250 Directory successfully changed.
ftp> ls ##查看发现还是在用户的家目录中,访问不到系统的其他目录了,增强了安全性
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
226 Directory send OK.
设置允许,拒绝指定用户访问ftp
1,设置user-list(默认拒绝),允许或者拒绝特定用户登录ftp
[root@localhost pub]# cd /etc/vsftpd/ ##切换到vsftpd配置文件目录
[root@localhost vsftpd]# vim vsftpd.conf

userlist_enable=YES ##确认user-list开启

[root@localhost vsftpd]# ls
ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh
[root@localhost vsftpd]# echo "zhangsan" >> user-list ##将zhangsan用户添加到列表中
[root@localhost vsftpd]# systemctl restart vsftpd ##重启服务
2,用测试机cmd测试
C:\Users\xy007>ftp 192.168.13.140
连接到 192.168.13.140。
220 (vsFTPd 3.0.2)
200 Always in UTF8 mode.
用户(192.168.13.140:(none)): zhangsan ##使用zhangsan登录
530 Permission denied.
登录失败。     ##直接拒绝登录
ftp>

3,设置列表为仅允许


[root@localhost ftp]# cd /etc/vsftpd/
[root@localhost vsftpd]# vim vsftpd.conf ##配置vsftpd配置文件
userlist_enable=YES
userlist_deny=NO ##添加列表允许

[root@localhost vsftpd]# systemctl restart vsftpd ##重启服务

4,测试机cmd测试


C:\Users\xy007>ftp 192.168.13.140
连接到 192.168.13.140。
220 (vsFTPd 3.0.2)
200 Always in UTF8 mode.
用户(192.168.13.140:(none)): zhangsan ##用zhangsan去登录
331 Please specify the password.
密码:
230 Login successful. ##登录成功
ftp> by
221 Goodbye.

C:\Users\xy007>ftp 192.168.13.140
连接到 192.168.13.140。
220 (vsFTPd 3.0.2)
200 Always in UTF8 mode.
用户(192.168.13.140:(none)): lisi ##用lisi去登录
530 Permission denied.
登录失败。    ##登录失败

三,建立虚拟用户账户使用ftp(文件在系统用户vuser家目录)

1,创建虚拟用户文件


[root@localhost vsftpd]# cd /etc/vsftpd/ ##切换到配置文件目录下
[root@localhost vsftpd]# vim vuser ##创建虚拟用户文件

lisa  ##奇数行为用户名
123123 ##偶数行为密码
tom
123123

2,转换数据库文件,设置安全权限


[root@localhost vsftpd]# db_load -T -t hash -f vuser vuser.db ##将vuser转换成数据库文件
##T转换,t类型,f指定文件
[root@localhost vsftpd]# chmod 600 vuser ##安全起见,不让别人看到,设置权限
[root@localhost vsftpd]# chmod 600 vuser.db

3,编辑pam认证模块支持虚拟用户登录


[root@localhost vsftpd]# useradd -d /opt/vuser -s /sbin/nologin vuser 
##创建系统用户,指定家目录,不能登录
[root@localhost vsftpd]# vim /etc/pam.d/vsftpd.vu ##编译pam认证模块

auth required pam_userdb.so db=/etc/vsftpd/vuser ##识别转换过的数据库文件
account required pam_userdb.so db=/etc/vsftpd/vuser ##连接的密码服务

4,开启虚拟用户,使用pam模块认证登录


[root@localhost vsftpd]# vim vsftpd.conf ##修改配置文件
##大G到末行
#pam_service_name=vsftpd ##注释
##添加下面三行内容
guest_enable=YES  ##开启来宾用户访问
guest_username=vuser ##使用vuser用户名
pam_service_name=vsftpd.vu ##pam模块
[root@localhost vsftpd]# systemctl restart vsftpd ##重启服务

5,测试机cmd测试


C:\Users\xy007>ftp 192.168.13.140
连接到 192.168.13.140。
220 (vsFTPd 3.0.2)
200 Always in UTF8 mode.
用户(192.168.13.140:(none)): tom ##使用虚拟用户tom登录
331 Please specify the password.
密码:
230 Login successful.
ftp> put test1.txt ##上传一个文件
200 PORT command successful. Consider using PASV.
150 Ok to send data.
226 Transfer complete.
ftp: 发送 13 字节,用时 0.00秒 13000.00千字节/秒。
##查看文件的权限为600
[root@localhost vsftpd]# ls -l /opt/vuser/
总用量 4
-rw-------. 1 vuser vuser 13 11月 5 22:51 test1.txt

6,单独用户配置,指定上传文件的权限644


[root@localhost vsftpd]# vim vsftpd.conf 
##大G末行添加
user_config_dir=/etc/vsftpd/vu_dir ##单独用户配置文件夹
[root@localhost vsftpd]# mkdir vu_dir ##创建文件夹
[root@localhost vsftpd]# cd vu_dir/
[root@localhost vu_dir]# vim lisa ##在配置文件夹里创建用户配置文件
anon_umask=022 ##指定上传文件的权限
[root@localhost vu_dir]# systemctl restart vsftpd ##重启服务

7,测试机cmd使用lisa用户登录,查看上传文件权限


C:\Users\xy007>ftp 192.168.13.140
连接到 192.168.13.140。
220 (vsFTPd 3.0.2)
200 Always in UTF8 mode.
用户(192.168.13.140:(none)): lisa ##使用lisa登录
331 Please specify the password.
密码:
230 Login successful.
ftp> put 111.txt ##上传文件
200 PORT command successful. Consider using PASV.
150 Ok to send data.
226 Transfer complete.
ftp: 发送 13 字节,用时 0.00秒 13000.00千字节/秒。

[root@loznwwnvcalhost vu_dir]# ls -l /opt/vuser/ ##查看上传文件的权限
总用量 8
-rw-r--r--. 1 vuser vuser 13 11月 5 22:58 111.txt ##lisa上传文件权限644
-rw-------. 1 vuser vuser 13 11月 5 22:51 test1.txt ##tom上传文件权限600

总结

以上所述是小编给大家介绍的Linux中vsftpd服务配置(匿名,用户,虚拟用户),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

--结束END--

本文标题: 浅析Linux中vsftpd服务配置(匿名,用户,虚拟用户)

本文链接: https://lsjlt.com/news/20724.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 浅析Linux中vsftpd服务配置(匿名,用户,虚拟用户)
    vsftpd概述 vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点。vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 linux、BSD、...
    99+
    2022-06-04
    vsftpd服务配置 linux vsftpd
  • vsftpd怎么配置虚拟用户
    小编给大家分享一下vsftpd怎么配置虚拟用户,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! vsftpd的虚拟用户配置:PAM + PgSQL + F...
    99+
    2023-06-13
  • CentOS 6.2中怎么配置vsftpd虚拟用户
    本篇文章为大家展示了CentOS 6.2中怎么配置vsftpd虚拟用户,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。代码如下:[root@linuxde ~]# mount /dev/cdrom /...
    99+
    2023-06-10
  • Vsftpd+Mysql+Pam如何配置虚拟用户
    这篇文章主要介绍Vsftpd+Mysql+Pam如何配置虚拟用户,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!  一、VSFTPD的安装  目前,VSFTPD的最新版本是1.2.0版...
    99+
    2024-04-02
  • vsftpd配置虚拟用户登录的方法
    yum安装vsftpd [root@localhost etc]# yum -y install vsftpd</font> 创建虚拟用户和密码 [root@localhost etc]# cd /...
    99+
    2022-06-04
    vsftpd虚拟用户 vsftpd配置虚拟用户
  • Linux下如何安装vsftpd以及配置FTP虚拟用户
    这篇文章主要为大家展示了“Linux下如何安装vsftpd以及配置FTP虚拟用户”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux下如何安装vsftpd以及配置FTP虚拟用户”这篇文章吧。...
    99+
    2023-06-16
  • Proftpd配置中如何匿名用户
    今天就跟大家聊聊有关Proftpd配置中如何匿名用户,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。ProFTPD是继Wu-FTP之后最为流行的FTP服务器软件。那要用Proftpd,...
    99+
    2023-06-16
  • CentOS6.4下怎么安装vsftpd并配置虚拟用户
    这篇文章主要介绍“CentOS6.4下怎么安装vsftpd并配置虚拟用户”,在日常操作中,相信很多人在CentOS6.4下怎么安装vsftpd并配置虚拟用户问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Cen...
    99+
    2023-06-10
  • Linux下vsftpd+mysql虚拟用户有什么用
    这篇文章将为大家详细讲解有关Linux下vsftpd+mysql虚拟用户有什么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。第一步:安装vsftpd apt-get i...
    99+
    2024-04-02
  • ubuntu vsftpd匿名用户上传下载文件的配置方法
    这篇文章主要讲解了“ubuntu vsftpd匿名用户上传下载文件的配置方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ubuntu vsftpd匿名用户上传下载文件的配置方法”吧!1 s...
    99+
    2023-06-13
  • linux 中怎么配置vsftp虚拟用户
    本篇文章为大家展示了linux 中怎么配置vsftp虚拟用户,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1.生成虚拟用户口令库文件。为了建立此口令库文件,先要生成一个文本文件。该文件的格式如下,单...
    99+
    2023-06-13
  • 建立基于虚拟用户的VSftpd服务
    上一篇文章给大家介绍了Linux中搭建FTP服务器的方法,说了vsftpd的基本配置,也就是匿名和本地,这回来说一下配置虚拟用户使用vsftpd,下面是具体步骤: 一、建立虚拟用户口令文件 可以使用...
    99+
    2022-06-04
    用户 VSftpd
  • vsftpd操作——配置虚拟用户登录的详细步骤
    笔者重新整理了文章的结构和内容,看这篇会舒服很多Linux笔记之配置vsftpd服务的虚拟用户登录 配置虚拟用户,使用独立的用户帐号进行登录vsftp 1.环境准备 安装vsftpd及相关组件 rpm -qa | grep vsftpd...
    99+
    2023-09-06
    服务器 linux 运维
  • 怎么建立基于虚拟用户的VSftpd服务
    这篇文章主要介绍“怎么建立基于虚拟用户的VSftpd服务”,在日常操作中,相信很多人在怎么建立基于虚拟用户的VSftpd服务问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么建立基于虚拟用户的VSftpd服务...
    99+
    2023-06-09
  • 浅析php怎么设置用户名
    PHP是一种广泛使用的编程语言,常常被用来开发动态网站和Web应用程序。如果你想在自己的计算机上安装PHP,本文会告诉你如何为PHP设置用户名。下载PHP软件包首先,你需要下载PHP的最新版本。可以在官方网站http://www.php.n...
    99+
    2023-05-14
  • CentOS5.3系统设置vsftpd虚拟用户的详细步骤
    这篇文章主要介绍“CentOS5.3系统设置vsftpd虚拟用户的详细步骤”,在日常操作中,相信很多人在CentOS5.3系统设置vsftpd虚拟用户的详细步骤问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C...
    99+
    2023-06-10
  • ubuntu中怎么利用Pureftpd配置虚拟用户
    今天就跟大家聊聊有关ubuntu中怎么利用Pureftpd配置虚拟用户,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。ubuntu 的 pure-ftpd 的配置文件很特别,都是放到 ...
    99+
    2023-06-16
  • Linux中Postfix虚拟用户及虚拟域的示例分析
    这篇文章主要为大家展示了“Linux中Postfix虚拟用户及虚拟域的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux中Postfix虚拟用户及虚拟域的示例分析”这篇文章吧。Po...
    99+
    2023-06-05
  • MySQL中怎么利用pam_mysql模块实现vsftpd虚拟用户
    MySQL中怎么利用pam_mysql模块实现vsftpd虚拟用户,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。一、实验环境的...
    99+
    2024-04-02
  • Linux文件服务器实战详解(匿名用户)
    一、进程与线程 二、vsftp服务器   1.文件传输协议(file transfer protocol,FTP)   基于该协议ftp客户端和服务端实现文件共享,上传下载文件   FTP基于TCP协议生成一个虚拟的连接...
    99+
    2022-06-04
    linux文件服务器
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作