当前位置: 首页 > 图文教程 > 服务器 > Linux服务器 > ubuntuLinux下建立FTP服务器如何操作

Linux服务器
在Apache环境下成功的运行ASP.NET
NoMachine,NX远程遥控的新典范
用gnump3d架设流体服务器
LinuxNFS(网络文件系统)服务器性能优化
Linux中建立安全的ProFTPD应用经验谈
手把手教你配Liunx流媒体服务器(上)
Linux系统中搭建LAMP动态博客网站
实例教你在Linux下建立代理服务器
简单架设Jabber局域网即时通讯服务器
ldap大容量邮件系统数据库应用指南
超全的NFSserver教程手册
用slackware架设虚拟主机管理系统(一)
用slackware架设虚拟主机管理系统(二)
slackware10.1下架设apache+tomcat+jk实例
SFTPD服务器架设菜鸟手记
手把手教你wuftp服务器的配置
使用TSIG和DNSSEC加固域名服务器
Linux上构建一个RADIUS服务器详解(1)
用CoyoteLinux制作好的打印服务器
routeros常用命令详解

Linux服务器 中的 ubuntuLinux下建立FTP服务器如何操作


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

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

Ubuntu自带的FTP服务器是vsftpd。

1)安装vsftpd

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

sudoapt-getinstallvsftpd

如果没换源可能会提示你使用光盘,放进去再按回车就行了。
我用CN99的源,速度是300K每秒,够快吧.

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

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

2)设置vsftpd.conf文件

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

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

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

sudocp/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

#限制每个IP的进程
max_per_ip=5

#最大传输速率(b/s)
local_max_rate=256000

#隐藏帐号
hide_ids=YES

好了,重启下ftp服务器看看效果

重启后还是和原来一样对吗?呵呵,这是默认的ftp目录在做鬼,我们把它删除,再看看。怎么样?要你输入用户名和密码了吧。
新的问题

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

2.用户可以跳到任何其他目录(非常危险..)

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

#启动chroot列表(Changeroot)
chroot_list_enable=YES

#指定列表位置(我这用的是默认地址)
chroot_list_file=/etc/vsftpd.chroot_list

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

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

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

依然还是找vsftpd.conf

#这句默认设置里是没有的,自己加
user_config_dir=/etc/自己定义一个设置个别用户用的文件夹地址

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

#本地用户的根地址,假设用户是linyupark
local_root=/home/linyupark/public_html

好咯,重启下服务器。看看效果吧。