用Pureftpd+PureDB建立一个简单的Linux ftp网站

系统 Linux
Pureftpd是一款在多种类Unix上使用并符合GPL协议的原代码开放的软件,顾名思义,它就是一款纯粹的Ftp程序。怎么搭建一个属于自己的安全简单的Linux ftp网站,看下文!

Pureftpd是一款快速,高质量,功能齐全的ftp服务器,最重要的是可以支持设置客户端默认编码,今天我给大家详细介绍下:怎样用Pureftpd+PureDB建立一个Linux ftp网站。

  目的:

  建一个有多个虚拟用户的ftp站点,可匿名访问,也可验证访问。匿名用户只可下载可上传。验证用户可下载,也可上传。

  虚拟用户使用ftpgroup组的ftpuser帐户访问。

  admin2帐户不属于ftpgroup组,而属于管理员组admin2。

  目录结构:

  1,pureftpd的数据文件存放目录:/var/ftpd/*,属主admin2,组admin2。

  /var/ftpd/source/public [存放公共资料,匿名anonymous可访问。权限:777]。

  /var/ftpd/source [存放伙伴用户群内交流的资料,伙伴用户vuser可访问,权限:777。]

  /var/ftpd/home [存放管理员等高级人员的资料,管理用户admin2可访问,权限:755。]

  2,pureftpd的可执行文件存放位置:/usr/local/pureftpd/*,属主:root,组root。

  /usr/local/pureftpd/etc/ 里面有“参数及配置文件夹”:etc;pureftpd自动生成的bin,man,sbin文件夹等

  /usr/local/pureftpd/etc/ 有文件:ftpmsg(自创),pureftpd.log(自创),pure-ftpd.conf(从编译中拷贝),pureftpd.pdb(程序自动生成),pureftpd.passwd(程序自动生成)。

  用户分配

  虚拟用户:包括anonymous、vuser、admin2。

  匿名用户:anonymous

  可访问资源:/var/ftpd/source/public/* [可访问公共目录下面的所有资料public/* ]

  上传:不允许

  下载速率:受限

  伙伴用户:vuser

  可访问资源:/var/ftpd/source/* [可访问群内用户的所有资料,可创建、删除子目录,可创建、覆盖文件:source/*,包括/source/public/*]

  上传:允许

  上传空间:受限

  速率:受限

  管理用户:admin2

  可访问资源:/var/ftpd/* [可访ftp所有资料,可创建、删除子目录,可创建、覆盖文件:包括home/*,source/*,/source/public/*]

  上传:允许

  上传空间:受限

  速率:不限

  执行:

  建立数据文件目录、设置属主、权限 :

  代码:

 

  1.   #su  
  2.  
  3.   #mkdir /var/ftpd  
  4.  
  5.   #mkdir /var/ftpd/home  
  6.  
  7.   #mkdir /var/ftpd/source  
  8.  
  9.   #mkdir /var/ftpd/source/public 
  10.  
  11.   #groupadd admin2  
  12.  
  13.   #useradd admin2 -g admin2 -d /home/admin2 -s /bin/bash  
  14.  
  15.   #passwd admin2  
  16.  
  17.   #cd /var  
  18.  
  19.   #chown -R admin2 ftpd  
  20.  
  21.   #chgrp -R admin2 ftpd  
  22.  
  23.   #chmod -R 755 ftpd  
  24.  
  25.   #cd /var/ftpd  
  26.  
  27.   #chmod -R 777 source  
  28.  

 

  建立pureftpd的可执行文件目录 :

  代码:

 

  1.   #cd /usr  
  2.  
  3.   #mkdir /usr/local/pureftpd  
  4.  
  5.   #mkdir /usr/local/pureftpd/etc  
  6.  
  7.   #mkdir /usr/local/pureftpd/temp ##安装程序用的临时目录,用完后,可删除  
  8.  

 

  安装pureftpd

  下载: http://www.pureftpd.org

  拷贝、解压

  代码

  1.   #cp pure-ftpd-1.0.21.tar.gz /usr/local/pureftpd/temp  
  2.  
  3.   #cd /usr/local/pureftpd/temp  
  4.  
  5.   #tar xzvf pure-ftpd-1.0.21.tar.gz  
  6.  
  7.   #cd pure-ftpd-1.0.21  
  8.  

 

  编译

  代码:

 

  1.   ./configure --prefix=/usr/local/pureftpd --with-everything --with-rfc2640  
  2.  

 

  #注:

  --prefix是安装的目标目录

  --with-eyerything是安装所有功能

  --with-rfc2640,此参数UTF-8,gb2312等异构系统的语言集转换

  另外如果需要与mysql连接,修改提示语言等还需要在此指定,例如:

  --with-mysql=/opt/mysql

  --with-language=simplified-chinese

  本文不涉及。

#p#

  安装

  代码:

 

  1.   #make  
  2.  
  3.   #make check  
  4.  
  5.   #make install  
  6.  

 

  2.3 配置pureftpd

  拷贝配置文件到指定目录

  代码:

 

  1.   #chmod 755 configuration-file/pure-config.pl  
  2.  
  3.   #cp configuration-file/pure-config.pl /usr/local/pureftpd/sbin/  
  4.  
  5.   #cp configuration-file/pure-ftpd.conf /usr/local/pureftpd/etc/  
  6.  
  7.   #cd /usr/local/pureftpd/etc/  
  8.  
  9.   #gedit pure-ftpd.conf  

 

  pure-ftpd.conf全文注释(附件中):

  虚拟用户公共帐号设置

  代码:

 

  1.   #groupadd ftpgroup  
  2.  
  3.   #useradd ftpuser -g ftpgroup -d /dev/null -s /etc  

 

  或:

 

  1.   #mkdir /home/null 
  2.  
  3.   #chmod 777 /home/null 
  4.  
  5.   #useradd ftpuser -g ftpgroup -d /home/null -s /etc  

 

  添加ftp用户,让匿名支持:

  #useradd ftp -g ftpgroup #添加一个用户“ftp”必须是这个名,它与其它ftp用户都从属于上面的ftpgroup。

  (如果ftp用户已经存在,请修改ftp的默认组: #usermod -g ftpgroup ftp)

 

  1.   #usermod -d /var/ftpd/source/public ftp #更改“ftp”这个用户的主目录。  
  2.  
  3.   #chown ftp.ftpgroup /var/ftpd/source/public   

 

  虚拟用户帐号设置

  代码:

 

  1.   #cd /usr/local/pureftpd/bin  
  2.  
  3.   #./pure-pw useradd vuser -u ftpuser -d /var/ftpd/source  
  4.  
  5.   #./pure-pw useradd admin2 -u admin2 -d /var/ftpd  

 

  ##说明:vuser是用户名,-u ftpuser是其实际的linux用户,-d指定起始目录,并锁定于该目录。如果不锁定,则用-D

  ##如果需要限制IP段的加上: -r 192.168.0.0/24

  建立用户数据库

  代码:

 

  1.   #./pure-pw mkdb /usr/local/pureftpd/etc/pureftpd.pdb  

 

  #说明:今后每添加或修改用户数据库都应该执行一次mkdb,执行后不需要重起ftp

  启动pureftpd

  代码:

  1.  #/usr/local/pureftpd/sbin/pure-config.pl /usr/local/pureftpd/etc/pure-ftpd.conf  

 

  或设置执行文件pureftpd.sh为系统服务:

 

  1.   # vi pureftpd.sh  

 

  内容:

 

  1.   #!/bin/sh  
  2.  
  3.   echo "" 
  4.  
  5.   /usr/local/pureftpd/sbin/pure-config.pl /usr/local/pureftpd/etc/pure-ftpd.conf  
  6.  

 

  然后:

 

  1.   #chmod 755 pureftpd.sh  

 

  执行以下命令立即生效,#./pureftpd.sh

  重新启动系统,测试安装效果。

通过文章的介绍和分析,我们利用Pureftpd+PureDB构建一个简单又安全的Linux ftp网站,希望本文对大家有帮助!

【编辑推荐】

责任编辑:赵鹏 来源: 互联网
相关推荐

2021-06-24 06:00:51

EleventyJavaScript静态网站

2011-03-03 14:04:08

ProftpdFtp server

2020-07-20 10:00:52

Python翻译工具命令行

2017-06-08 15:53:38

PythonWeb框架

2020-06-04 12:55:44

PyTorch分类器神经网络

2012-08-07 11:28:13

卸载linux

2011-03-02 13:59:33

Pureftpd

2011-08-02 12:46:46

Oracle数据表建立索引

2009-07-25 17:24:45

2013-12-18 09:51:02

2010-03-02 16:33:14

linux数据备份

2019-09-23 09:11:02

Python文本编辑器操作系统

2011-02-23 13:52:07

vsftpd

2013-12-10 22:35:56

CloudStackIaaS自动化

2021-08-23 15:14:09

Linuxat命令任务

2013-09-22 14:42:55

鲍尔默微软

2010-03-02 13:23:02

VNC Linux服务

2011-03-03 10:57:47

pureftpdslackware

2010-07-01 14:13:48

建立FTP服务器

2022-10-21 14:21:46

JavaScript笔记技能
点赞
收藏

51CTO技术栈公众号