首页 >> IT知识库 >> Linux >>如何在Linux建立FTP服务器
详细内容

如何在Linux建立FTP服务器

当用户实现了Apache多用户的虚拟主机配置,那么一般这些用户都会选择用ftp上传的方式来管理自己的web内容,这就需要我们再为他们开设FTP服务。在linux平台中,有很多优秀的FTP软件,其中vsftpd用的最为广泛,Ubuntu自带的FTP服务器是vsftpd,下面我们一起来看看当用户实现了Apache多用户的虚拟主机配置,那么一般这些用户都会选择用ftp上传的方式来管理自己的web内容,这就需要我们再为他们开设FTP服务。在linux平台中,有很多优秀的FTP软件,其中vsftpd用的最为广泛,Ubuntu自带的FTP服务器是vsftpd,下面由韦柏IT外包工程师我们一起来看看:
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

#限制每个IP的进程
max_per_ip=5
#最大传输速率(b/s)
local_max_rate=256000

#隐藏帐号
hide_ids=YES
好了,重启下ftp 服务器看看效果

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

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
重启下服务器。

希望能帮助到大家。

在线客服
- 客户经理
  • 点击这里给我发消息
  • 点击这里给我发消息
技术支持: 建站ABC | 管理登录