当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > 用Ubuntu自带的FTP服务器vsftpd的一些技巧

Unix/Linux
linux查看内存的大小
在linux下写的代码,用的是utf-8,结果拿到XP下运行的时候,所有的中文都成乱码
linux su和sudo命令的区别
linux cron 下的定时执行工具使用技巧
linux 查找进程及终止进程操作的相关命令
redhat linux 安装 gcc编译器
Linux Mplayer播放各种格式的电影
一起回顾一下linux常用命令
Linux 网站项目发布要做哪些配置
linux SSH配合SecureCRT的密匙完美使用方法
GD 编译出错解决方法
Facebook Open Platform编译FAQ
Linux 系统硬盘 优化
linux 挂载详解
linux crontab定时命令
Linux 系统中确保访问三级域名畅通的方法
Linux 特权帐号VS普通帐号
确保Linux系统安全的前提条件 漏洞防护
Linux 监视系统资源使用率
Red Hat Linux上使用BIND建立DNS服务器

Unix/Linux 中的 用Ubuntu自带的FTP服务器vsftpd的一些技巧


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 136 ::
收藏到网摘: n/a

  实现了Apache多用户的虚拟主机设置,那么一般这些用户都会选择用ftp上传的方式来管理自己的web内容,这就需要我们再为他们开设FTP服务。

Ubuntu自带的FTP服务器是vsftpd.

1、安装vsftpd

Ubuntu安装软件倒不是件困难的事,输入:

sudo apt-get install vsftpd

如果没换源可能会提示你使用光盘,放进去再按回车就行了。

我用CN99的源,速度是300K每秒,够快吧。

安装了之后会在/home/下建立一个ftp目录。这时候你可以试着访问下ftp://IP地址。应该可以看到一个空白内容的ftp空间。

默认设置下匿名用户可以下载,但不能写入或是上传

2、设置 vsftpd.conf文件

现在我们要让匿名用户无法访问,并且得输入linux上的用户密码后才能访问到他们自己目录里的内容。

首先找到设置vsftpd的文件,位置在/etc/vsftpd.conf

修改之前最好先备份下这个文件:

sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.old

然后可以改动了:

#不让匿名用户使用

#anonymous_enable=YES

#本地用户可用

local_enable=YES

#可用写操作

write_enable=YES

#不需要显示某目录下文件信息

#dirmessage_enable=YES

#加点banner提示

ftpd_banner=Hello~~

#FTP服务器最大承载用户

max_clients=100

新的问题

1、输入用户名密码后显示的位置是在用户的根目录下,而我们的WEB内容是在public_html目录里

2、用户可以跳到任何其他目录

要解决这些问题我们还得设置下vsftpd.conf

#启动chroot列表(Change root)

chroot_list_enable=YES

#指定列表位置(我这用的是默认地址)

chroot_list_file=/etc/vsftpd.chroot_list

接下来我们得在vsftpd.chroot_list上写进去我们要限制哪些用户,不让他们“漂移”……

现在有用户linyupark,所以只要sudo nano一下,往里面写就行了

这样我们已经解决第2个问题了,登陆的用户只能在它的用户文件夹里活动,下面我们要更狠一点,让他只能在public_html里活动

依然还是找vsftpd.conf

#这句默认设置里是没有的,自己加

user_config_dir=/etc/自己定义一个设置个别用户用的文件夹地址

根据自己设置的地址,建立一个相应的文件夹,然后往里面建立和用户名相同的文件,nano一下:

#本地用户的根地址,假设用户是linyupark

local_root=/home/linyupark/public_html

重启下服务器。