vsftpd+MySQL创建虚拟用户在Debian Linux之下
以下的文章主要讲述的是Debian Linux下对vsftpd+MySQL虚拟用户的具体作法,我前两天在相关网站看见Debian Linux下对vsftpd+MySQL虚拟用户的资料,觉得挺好,就拿出来供大家分享。 今天闲来无事做了个ftp,原因很简单就是为了能在别处看到的好东西直接放到我
以下的文章主要讲述的是Debian Linux下对vsftpd+MySQL虚拟用户的具体作法,我前两天在相关网站看见Debian Linux下对vsftpd+MySQL虚拟用户的资料,觉得挺好,就拿出来供大家分享。
今天闲来无事做了个ftp,原因很简单就是为了能在别处看到的好东西直接放到我的机器上,嘿嘿!linux下选择ftp服务器还真是不容易,经过一阵思索后就选择了vsftpd,理由就是它号称是linux下最安全的ftp服务器还有还有好多的大型站点都用它来做服务器(这样用起来也比较有面子 :) )。
为了怕在我输入密码时被别人偷看到然后登入我机器乱搞,在加上我本来就讨厌系统有那么多的用户(其实也是像显示自己的手平),所以我决定采用虚拟用户,因为机器中装有MySQL(和PHP搭配之最佳组合),于是我就想将vsftpd+MySQL虚拟用户数据放在MySQL(和PHP搭配之最佳组合)中,好了,就侃到这里,下面进入正题!
第一步:
安装vsftpd
apt-get install vsftpd (Debian就是爽啊!)
系统会自动生成一个配置文件和一个ftp用户供匿名用户使用,vsftpd使用pam方式来验证虚拟用户,因为vsftpd+MySQL虚拟用户的信息保存在数据库中,所以我们还需要一个能够读取数据库内容的本地用户,而且还需要设置它的本地目录:
<ol class="dp-xml"> <li class="alt"><span><span>#mkdir /var/ftp </span></span></li> <li><span>#useradd -d ftpguest /var/ftp </span></li> <li class="alt"><span>#chown ftpguest.nogroup /var/ftp </span></li> </ol>
第二步:安装MySQL(和PHP搭配之最佳组合)
apt-get install MySQL(和PHP搭配之最佳组合)-server MySQL(和PHP搭配之最佳组合)-clent
建立数据库,并添加用户
<ol class="dp-xml"> <li class="alt">#MySQL<span>(和PHP搭配之最佳组合) -p </span>MySQL<span>(和PHP搭配之最佳组合)</span><span>>create ftpu; </span> </li> <li>MySQL<span>(和PHP搭配之最佳组合)</span><span class="tag">></span><span>use ftpu; </span> </li> <li class="alt">MySQL<span>(和PHP搭配之最佳组合)</span><span class="tag">></span><span>create table user(name char(20) binary,passwd char(20) binary); </span> </li> <li>MySQL<span>(和PHP搭配之最佳组合)</span><span class="tag">></span><span>insert into user (name,passwd) values ('test1',password('1234567')); </span> </li> <li class="alt">MySQL<span>(和PHP搭配之最佳组合)</span><span class="tag">></span><span>insert into user (name,passwd) values ('test2',password('7654321')); </span> </li> <li>MySQL<span>(和PHP搭配之最佳组合)</span><span class="tag">></span><span>quit </span> </li> <li class="alt"><span>让ftpguest能访问ftpu和表user: </span></li> <li> <span>#</span>MySQL<span>(和PHP搭配之最佳组合) -u root </span>MySQL<span>(和PHP搭配之最佳组合) <br>-p </span>MySQL<span>(和PHP搭配之最佳组合)</span><span class="tag">></span><span>grant select on ftpu.user to ftpguest@localhost identified by '123456'; </span> </li> </ol>
MySQL(和PHP搭配之最佳组合)>quit
第三步:因为vsftpd是通过PAM验证
所以我们还需要一个MySQL(和PHP搭配之最佳组合)通过PAM验证的包,在Debian下它叫做libpam-MySQL(和PHP搭配之最佳组合)
apt-get install libpam-MySQL(和PHP搭配之最佳组合)
然后打开vsftpd的pam验证:
<ol class="dp-xml"><li class="alt"><span><span>#vi /etc/pam.d/vsftpd </span></span></li></ol>
将以前的内容注释掉,然后加入以下内容:
auth required pam_MySQL(和PHP搭配之最佳组合).so user=ftpguest passwd=123456 host=localhost db=ftpu table=user usercolumn=name passwdcolumn=passwd crypt=2
account required pam_MySQL(和PHP搭配之最佳组合).so user=ftpguest passwd=123456 host=localhost db=ftpu table=user usercolumn=name passwdcolumn=passwd crypt=2
上面的内容应该能看明白吧,那个crypt=2表示经过MySQL(和PHP搭配之最佳组合)的password()机密后的东西!
第四步:修改vsftpd.conf文件
<ol class="dp-xml"><li class="alt"><span><span>#vi /etc/vsftpd.conf </span></span></li></ol>
加入:
<ol class="dp-xml"> <li class="alt"><span><span class="attribute">uest_enable</span><span>=</span><span class="attribute-value">yes</span><span> </span></span></li> <li> <span class="attribute">guest_username</span><span>=</span><span class="attribute-value">ftpguest</span><span> </span> </li> <li class="alt"><span>#表示ftpguest为vsftp的虚拟用户 </span></li> <li> <span class="attribute">virtual_use_local_privs</span><span>=</span><span class="attribute-value">yes</span><span> </span> </li> <li class="alt"><span> </span></li> </ol>
vsftpd+MySQL虚拟用户与本地用户有相同的权限
<ol class="dp-xml"> <li class="alt"><span><span class="attribute">write_enable</span><span>=</span><span class="attribute-value">yes</span><span> </span></span></li> <li> <span class="attribute">anon_upload_enable</span><span>=</span><span class="attribute-value">yes</span><span> </span> </li> <li class="alt"> <span class="attribute">anon_other_write_enable</span><span>=</span><span class="attribute-value">yes</span><span> </span> </li> </ol>
允许虚拟用户上传,修改和删除文件
<ol class="dp-xml"><li class="alt"><span><span class="attribute">chroot_local_user</span><span>=</span><span class="attribute-value">yes</span><span> </span></span></li></ol>
虚拟用户只能访问自己的目录
<ol class="dp-xml"> <li class="alt"><span><span class="attribute">anonymous_enable</span><span>=no </span></span></li> <li> <span class="attribute">local_enable</span><span>=</span><span class="attribute-value">yes</span><span> </span> </li> </ol>
关闭匿名用户访问,开启本地用户访问
第五步:
本来来到第四步已经完成了,可是后来一想,不对,那要是每次上传的东西都不同,到时把那个目录弄得乱七八糟的怎么管理啊,能不能为每个vsftpd+MySQL虚拟用户创建一个目录呢,比如说将music用户上传的文件放在放在~/music下,将doc用户上传的文件放在~/doc下呢?
能!当然能了,看看我怎么做?
首先在数据库中添加music和doc两个vsftpd+MySQL虚拟用户接下来:
<ol class="dp-xml"> <li class="alt"><span><span>#mkdir /etc/vsftpd_user_conf </span></span></li> <li><span>#cd /etc/vsftpd_user_conf </span></li> <li class="alt"><span>#touch music </span></li> <li> <span>#echo "</span><span class="attribute">local_root</span><span>=/home/username/music" </span><span class="tag">></span><span> music </span> </li> <li class="alt"><span>#touch doc </span></li> <li> <span>#echo "</span><span class="attribute">local_root</span><span>=/home/username/doc" </span><span class="tag">></span><span> doc </span> </li> <li class="alt"><span>#mkdir /home/username/music </span></li> <li><span>#chown ftpguest.nogroup /home/username/music </span></li> <li class="alt"><span>#chmod 600 /home/username/music </span></li> <li><span>#chown ftpguest.nogroup /home/username/doc </span></li> <li class="alt"><span>#chmod 600 /home/username/doc </span></li> </ol>
然后在vsftpd.conf中加入: user_config_dir=/etc/vsftpd_user_conf,大功告成,你明白了吗?

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

随着社交媒体的迅速发展,小红书已经成为了备受青睐的社交平台之一。用户可以通过创建小红书号来展示个人身份,并与其他用户交流互动。如果你需要查找某个用户的小红书号码,可以按照以下简单步骤进行操作。一、如何用小红书号查找用户?1.打开小红书APP,点击右下角的“发现”按钮,然后选择“笔记”选项。2.在笔记列表中,找到你想查找的用户发布的那篇笔记。点击进入笔记详情页。3.在笔记详情页中,点击用户头像下方的“关注”按钮,即可进入该用户的个人主页。4.在用户个人主页右上角,点击三个点按钮,然后选择“个人信息

Snap是一个针对Linux系统设计的外部包管理器,它为您提供了安装容器化应用程序的便捷途径。通过Snap,您可以轻松地下载和安装软件包,无需担心安装额外的依赖项。该管理器会自动解决软件包所需的依赖项,确保软件包能够在您的系统上顺利运行。Snap与本地的apt包管理器相辅相成,为您提供了另一种在系统中安装和运行应用程序的选择。在本指南中,您将找到有关如何在Debian12上安装Snap的完整指南。提纲:如何在Debian12上安装Snap如何在Snap上查找包可用性如何在Snap上查找有关包的信

在Ubuntu系统中,root用户通常是禁用状态的。要激活root用户,可以使用passwd命令设置密码,然后使用su-命令以root身份登录。根用户是具有系统管理权限且不受限制的用户。他拥有访问和修改文件、用户管理、软件安装和删除,以及系统配置更改等权限。根用户与普通用户有着明显的区别,根用户拥有系统中最高的权限和更广泛的控制权。根用户可以执行重要的系统命令和编辑系统文件,而普通用户则无法做到这一点。在本指南中,我将探讨Ubuntu根用户,如何以根用户身份登录,以及它与普通用户的不同之处。注意

STEAM是由ValveCorporation开发的一个流行的游戏平台,允许您购买、下载、安装和玩游戏。它提供自动更新、配对和社区论坛等功能,以解决与软件相关的问题。除此之外,你还可以使用STeam与其他玩家和开发者互动,因为它有广泛的社区支持。在本指南中,您将学习到:如何在Debian12上安装Steam如何在Debian12上运行STeam如何从Debian12中删除STeam结论如何在Debian12上安装Steam您可以在Debian12上安装Steam:Debian官方资料库deb包S

sudo(超级用户执行)是Linux和Unix系统中的一个关键命令,允许普通用户以root权限运行特定命令。sudo的功能主要体现在以下几个方面:提供权限控制:sudo通过授权用户以临时方式获取超级用户权限,从而实现了对系统资源和敏感操作的严格控制。普通用户只能在需要时通过sudo获得临时的特权,而不需要一直以超级用户身份登录。提升安全性:通过使用sudo,可以避免在常规操作中使用root账户。使用root账户进行所有操作可能会导致意外的系统损坏,因为任何错误或不小心的操作都将具有完全的权限。而

标题:真我手机新手指南:如何在真我手机上创建文件夹?在当今社会,手机已经成为人们生活中必不可少的工具。而真我手机作为一款备受欢迎的智能手机品牌,其简洁、实用的操作系统备受用户喜爱。在使用真我手机的过程中,很多人可能会遇到需要整理手机中的文件和应用的情况,而创建文件夹就是一种有效的方式。本文将介绍如何在真我手机上创建文件夹,帮助用户更好地管理自己的手机内容。第

很多朋友表示想知道在格力+软件里该怎么去创建家庭,下面为大家带来了操作方法,想要了解的朋友和我一起来看看吧。首先,打开手机上的格力+软件,并登录。接着,在页面底部的选项栏中,点击最右边的“我的”选项,即可进入个人账户页面。2.来到我的页面后,在“家庭”下方的选项里有一个“创建家庭”,找到后在它的上面点击进入。3.接下来跳转到创建家庭的页面里,根据提示在输入框里输入要设置的家庭名称,输入好后在右上角点击“保存”按钮。4.最后在页面下方会弹出一个“保存成功”的提示,代表家庭已经成功创建好了。

在iOS17中,Apple为其常用的“电话”和“通讯录”应用程序新增了联系人海报功能。这一功能允许用户为每个联系人设置个性化的海报,使通讯录更具可视化和个性化。联系人海报可以帮助用户更快速地识别和定位特定联系人,提高了用户体验。通过这一功能,用户可以根据自己的喜好和需求,为每个联系人添加特定的图片或标识,使通讯录界面更加生动iOS17中的Apple为iPhone用户提供了一种新颖的方式来表达自己,并添加了可个性化的联系海报。联系人海报功能允许您在呼叫其他iPhone用户时展示独特的个性化内容。您
