ubuntu server vsftpd 虚拟用户及目录

ubuntu server vsftpd 虚拟用户及目录

一:需求场景;

在ubuntu
server上开设一个虚拟网站,在网站目录建立一个ftp目录,允许用户通过ftp上传网站文件到网站目录;

同时,该ftp用户,只能用于ftp操作,不能用于登陆ubuntu server

二:配置

1:先建立虚拟网站;

同样先创建apache2 网站配置文件,然后启用站点;

比如这里我的测试 网站 :www.cocoa.com 内网访问 站点;

网站目录在:/var/www/cocoa/web

在该目录下,建立 一个 index.html ;

修改:hosts文件,添加记录:指定ip 对应域名 www.cocoa.com

重新启动apache2服务;

浏览器 输入 www.cocoa.com 测试虚拟网站是否成功;

2: 配置ftp用户;

因为由于vsftpd的安全策略,指定ftp用户的根目录,就是该ftp用户的home目录,但是此home目录,作为根目录,不允许修改,上传成功操作;

所以基于上面的网站 cocoa/web 我的思路是:建立ftp用户指定home目录为 /var/www/cocoa
并,把其子目录,web作为web网页文件目录;这样子目录ftp用户就有了读写操作;当然,前提该文件的权限可写;

配置流程;


sudo useradd cocoa #添加名为cocoa的用户
sudo usermod -d /var/www/cocoa cocoa #指定cocoa用户的home目录cocoa
sudo vim /etc/shells #打开登陆shells文件

#添加一条记录
/usr/sbin/nologin

sudo usermod -s /usr/sbin/nologin cocoa #指定cocoa用户的登陆shells为nologin 就是只能用于ftp连接,不能用于登陆服务器;

sudo chown -R cocoa:cocoa /var/www/cocoa #修改cocoa目录的所有者和组为cocoa

sudo chmod 555 /var/www/cocoa #个性cocoa目录的权限为可读可执行,不能设置可写,因为cocoa目录,作为ftp根目录,不允许有写的权限;

sudo chmod 755 /var/www/cocoa/web 修改其ftp子目录,并设置其为对自己可写可读可执行,这样用户就可以通过ftp上传网站文件到web目录里面了;

上面少了一步:就是设置用户的密码 passwd cocoa 设置密码;

然后;打开终端;

ftp 连接服务器,输入用户名和密码;即可;自行测试上传,下载,创建目录,删除目录,删除文件操作;

三:通过ftp上传一个写的网页文件,打开浏览器测试即可;

如果,想让用户ftp登陆之后,home作为根目录,就是别的目录访问不了;只需打开vsftpd配置文件里面的

chroot_local_user=YES

最后重新启动,vsftpd服务,测试即可

在ftp登陆成功之后

pwd 会出现;

ubuntu server vsftpd 虚拟用户及目录,布布扣,bubuko.com

时间: 2024-12-15 01:32:45

ubuntu server vsftpd 虚拟用户及目录的相关文章

ubuntu server vsftpd 匿名用户上传下载及目录设置

ubuntu server vsftpd 匿名用户上传下载及目录设置 1:vsftpd服务器安装: sudo apt-get install vsftpd #安装 cd /srv/ #切换到默认匿名用户ftp目录: 运行 ls -l 我们可以看到 默认的 ftp目录是,虚拟用户ftp的根目录,并且此目录是匿名用户管理的根目录, 无论是对 ftp,改组,改用户,改权限都不能在ftp根目录下,上传东西,要么就是ftp匿名无法连接,要么就是不能上传:折腾了几天,终于明白了! ftp 作为匿名用户根目录

烂泥:ubuntu下vsftpd虚拟用户配置

本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我微信ilanniweb. 以前搭建vsftpd都是在centos下,本以为在ubuntu按照以前的步骤搭建即可.可是实际情况告诉我是,我太想当然了.经过一番的折腾终于把ubuntu下vsftpd虚拟用户的配置搞定了,下面就把我的配置步骤贴出来供得为参考. 一.业务要求 现在要求创建一个FTP账号ailanni,该账号只能登录到/www目录下,不能切换到上级目录.同时处于安全考虑还要求该账号上传的文件权限为644

ubuntu下vsftpd虚拟用户配置

以下实验全部在ubuntu server 14.04 X64上进行. 业务要求: 现在要求创建一个FTP账号user1,该账号只能登录到/www目录下,不能切换到上级目录.同时处于安全考虑还要求该账号上传的文件权限为644,即上传的文件具有可读可写权限,但是没有可执行权限. 一:安装vsftpd sudo apt-get -y install vsftpd 查看下vsftpd都安装了那些文件 dpkg -L vsftpd |tac 二:vsftpd配置 1.创建用户,如下: sudo usera

烂泥:vsftpd单用户多目录配置

本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb. 一.实际问题 在使用vsftpd过程中,我们会经常发现vsftpd在默认情况下一个用户(无论是系统用户还是虚拟用户)只能拥有一个目录,一般是根目录. 如果此时再要向该用户添加其它目录的话,比如系统的其他目录也需要此用户访问,那么就无法直接添加了. vsftpd不像FileZilla_Server等类似的ftp服务器软件一样可以直接给用户添加多目录,如下: 所以我们只能借助其他方式实现

ahjesus配置vsftpd虚拟用户在Ubuntu

网上搜索了很多资料,过时,不全,货不对版 已下步骤亲测有效,不包含匿名用户登录 1.新建/home/loguser.txt 并填充内容,格式如下 用户名密码用户名密码用户名密码 2.生成db文件用于用户验证 执行db_load -T -t hash -f /home/loguser.txt /etc/vsftpd_login.db 如果没有装db会提示你apt-get install,根据提示的内容输入命令安装后再次执行生成db 3.设置数据库文件的访问权限 chmod 600 /etc/vsf

FTP服务学习笔记之基于MySQL+PAM的vsftpd虚拟用户

基于mysql+PAM的vsftpd虚拟用户配置 一.实验说明 操作系统:Redhat5.8_X64bit 实验平台:VMware Workstation 所需要的软件包:pam_mysql-0.7RC1.tar.gz 二.安装所需要程序 1.事先安装好开发环境和mysql数据库 # yum -y groupinstall "Development Tools" "Development Libraries" #yum -y install mysql-server

VSFTPD虚拟用户实现

VSFTPD虚拟用户 所有的虚拟用户会统一映射为一个指定的系统帐号:访问共享位置即为此系统帐号的家目录各虚拟用户可赋予不同的访问权限,通过匿名用户的权限控制参数进行指定. 1.创建虚拟用户的帐号密码数据库文件     a.创建帐号密码文件 格式:奇数行为帐号,偶数行为密码 [[email protected]~]# vim /etc/vsftpd/vusers.list test1     #用户 123456   #密码 test2 123456 test3 123456 b.将该文件转换为二

vsftpd虚拟用户整理

Vsftpd虚拟用户的配置 第一步.安装 # wget http://docs.linuxtone.org/soft/lemp/CentOS-Base.repo # yum clean all # yum -y install vsftpd # yum -y install db4-utils 第二步.建立虚拟用户 #vim /home/ftpusr.txt 1.  user1 2.  password1 3.  user2 4.  password2 5.  user3 6.  passwor

VSFTPD虚拟用户实战配置

FTP是文件传输协议,正是由于这种协议使得主机间可以共享文件. FTP 使用TCP生成一个虚拟连接用于控制信息,然后再生成一个单独的 TCP 连接用于数据传输. vsftpd是一款在LINUX发行版中最主流的FTP服务器程序:特点是小巧轻快,安全易用:能让其自身特点得发发挥和掌握.如果使用系统用户登录FTP,是比较危险的,所以我们主要采用vsftpd虚拟用户登录FTP服务器进行常见的操作,当然配置就相对复杂一点.(centos7安装) 1.首先安装FTP以及虚拟用户需要用到的软件及认证模块 yu