标签:c style class blog code java
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
标签:c style class blog code java
原文地址:http://www.cnblogs.com/cocoajin/p/3768634.html