CentOS 搭建pure-ftpd
http://hi.baidu.com/sudoer/item/a2d66dd12db20295260ae7f4
转载试过以后有个问题,提示
331 User xm OK. Password required
Password:
530 Login authentication failed
Login failed.
Remote system type is UNIX.
Using binary mode to transfer files.
这个问题可以把pure-ftpd.conf中的以下注释去掉
PureDB /etc/pureftpd.pdb
CentOS 搭建pure-ftpd
本文主要讲解pure-ftpd服务器的搭建,以及虚拟用户的添加与使用【虚拟用户没有涉及到MYSQL,如需MYSQL的虚拟用户,请掠过此文】
1、找到最新版本的PureFTPd
去网站http://download.pureftpd.org/pub/pure-ftpd/releases/我们找到最新版本的的下载链接是http://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.35.tar.gz
2、下载并安装
# cd /usr/local/src
# wget http://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.35.tar.gz
# tar -zxvf pure-ftpd-1.0.35.tar.gz
# cd pure-ftpd-1.0.35
# ./configure --with-puredb --with-everything --with-rfc2640
# make
# make check
# make install
#注:
--with-puredb是启用虚拟用户数据库
--prefix是安装的目标目录
--with-eyerything是安装所有功能
--with-rfc2640,此参数UTF-8,gb2312等异构系统的语言集转换
另外如果需要与mysql连接,修改提示语言等还需要在此指定,例如:
--with-mysql=/opt/mysql
--with-language=simplified-chinese
本文不涉及。
如需了解configure的更多选项请看http://download.pureftpd.org/pub/pure-ftpd/doc/README
软件已经被安装到 /usr/local/sbin/pure-ftpd,我们只需执行以下代码即可启动PureFTPd。
# /usr/local/sbin/pure-ftpd &
#注:此处执行完命令有可能报一个错误: Unable to start a standaloneserver: Addressalready in use [大概意思就是端口被占用了]
解决方案:
切换到root权限,用命令:fuser -n tcp 21 查看,然后kill [pid]掉21端口的进程,继续执行 /usr/local/sbin/pure-ftpd & 此命令,如果依然不行,删除你之前安装过的ftp服务器,重启系统重复以上操作。
3、开机启动PureFTPd
# cp contrib/redhat.init /etc/init.d/pure-ftpd
# chmod 755 /etc/init.d/pure-ftpd
# chkconfig --add pure-ftpd
# chkconfig --level 3 pure-ftpd on
4、配置文件
# cp configuration-file/pure-ftpd.conf /etc
# cp configuration-file/pure-config.pl /usr/local/sbin/pure-config.pl
# chmod 744 /etc/pure-ftpd.conf
# chmod 755 /usr/local/sbin/pure-config.pl
编辑配置文件:[此步可以略过]
# vi /etc/pure-ftpd.conf
设置成以下值:
UnixAuthentication yes
#MinUID 100
UnixAuthentication yes表示系统用户可以登录FTP。
MinUID 100表示用户的ID大于100才能登录,我们注释掉它,任何的用户ID都能登录了。
5、启动和停止PureFTPd
# service pure-ftpd stop
# service pure-ftpd start
# service pure-ftpd restart
6、创建一个ftpgroup组
# groupadd ftpgroup
7、创建一个ftptestuser用户,并把用户添加到ftpgroup组
# useradd ftptestuser -g ftpgroup -s /sbin/nologin
8、为ftptestuser用户设置密码
# passwd ftptestuser
重复输入两次即可
9、创建pure-ftpd虚拟用户
# alias pure-pw=/usr/local/bin/pure-pw
# pure-pw useradd username1 -u 503 -g 503 -d /var/ftpdir
#注:
username1:ftp虚拟用户的用户名
-u 503:创建出来的虚拟用户属于哪个主用户[涉及到权限问题 属主]
-g 503:虚拟用户属于哪一个组[涉及到权限问题 属组]
至于上面的503是怎么来的可以用下面的命令查看
# cat /etc/passwd
之前添加的用户在最后一行,如我的:
ftptestuser:x:503:503::/home/ftptestuser:/sbin/nologin
前面的503意思就是说ftptestuser这个用户的id,后面的503就是此用户所属组的id,此处的id换成你们自己的就行了,
上面的命令运行完毕之后按了回车连续输入两次密码即可{也就是ftp密码}然后继续运行下面的命令
# pure-pw mkdb
# 注:
添加完用户一定要运行pure-pw mkdb命令,意思就是说把新添加的用户添加到数据库文件,然后可以使用下面的命令看下用户是否真的添加成功了
# pure-pw list
显示结果如下:
username1 /var/ftpdir/./
用户名 用户主目录
10、修改主目录权限
首先确认/var/ftpdir目录是否存在,不存在的话使用下面的命令创建
# mkdir /var/ftpdir
接下来修改目录的权限
# chown -R ftptestuser:ftpgroup /var/ftpdir
让ftpdir目录的属主权限变成ftptestuser的,组权限改成ftpgroup组,然后看下是否是正确修改了 ls -l /var 如果正确修改那应该就是下面显示的结果
drwxr-xr-x 2 ftptestuser ftpgroup 4096 2月 22 02:44 ftpdir
之前没修改前应该是 root root
到这就大功告成了,打开你的ftp客户端进行连接测试下看看是否成功了呢~
ip的话你应该知道吧? 不知道的话ifconfig 自己看下
用户名就是之前创建的那个虚拟用户username1
密码就是你自己输入的啦....
登录上去之后自己上传一些文件看看 是否正常,如果之前配置的都正常,在上传上面出现错误的话那就是你的ftpdir目录权限设置有问题了。
下面是我上传的一些东西,可以用命令自己看下权限什么的都对不对,主要的就是权限问题了。
[root@localhost pure-ftpd-1.0.35]# ls -l /var/ftpdir
总用量 4
drwxr-xr-x 2 ftptestuser ftpgroup 4096 2月 22 02:51 Downloads
[root@localhost pure-ftpd-1.0.35]# ls -l /var/ftpdir/Downloads
总用量 13464
-rw-r--r-- 1 ftptestuser ftpgroup 995808 2月 22 02:51 aliedit.exe
-rw-r--r-- 1 ftptestuser ftpgroup 76622 2月 22 02:51 cknebhggccemgcnbidipinkifmmegdel.crx
-rw-r--r-- 1 ftptestuser ftpgroup 9078981 2月 22 02:51 clbhjjdhmgeibgdccjfoliooccomjcab.crx
-rw-r--r-- 1 ftptestuser ftpgroup 1797989 2月 22 02:51 jy_www_wisecleaner_com (1).sql.gz
-rw-r--r-- 1 ftptestuser ftpgroup 1797989 2月 22 02:51 jy_www_wisecleaner_com.sql.gz
-rw-r--r-- 1 ftptestuser ftpgroup 25923 2月 22 02:51 lpkdnfkjhdkcpimadpdcgapffceacjem.crx
-rw-r--r-- 1 ftptestuser ftpgroup 1852 2月 22 02:53 X_GFWList.bak
扩展阅读:
如果在搭建的时候遇到这样的报错信息: 421 Unknown authentication method: puredb:/etc/pureftpd.pdb
一开始我自己搭建的时候也遇到了,然后在国外网站找到的答案,解决方案如下:
Do below. #做以下事情
wget ftp://ftp.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.21.tar.gz
tar -zxf pure-ftpd-1.0.21.tar.gz
./configure --with-puredb --with-ftpwho
make check
make
make install
Now make two files. #看看下面两个文件是否都存在不存在的话自己创建下 touch命令创建即可
/etc/pureftpd.pdb
/etc/pureftpd.passwd
Then execute below. #然后执行下面的命令
/usr/local/bin/pure-pw mkdb
/usr/local/sbin/pure-ftpd -A -B -j -lpuredb:/etc/pureftpd.pdb &
You can add virtual users like this: #然后你可以像这样子添加虚拟用户(就是下面的命令)
pure-pw useradd user -u username -d /home/username -m
具体连接:http://www.webhostingtalk.com/archive/index.php/t-686333.html 不明白的可以去看下。
另外这篇文章也很不错,写的很详细,有兴趣的可以去看下: http://dongfengyu.bokee.com/5781058.html
CentOS 搭建pure-ftpd相关推荐
- centos php管理面板,Centos 搭建LAMP平台 + Web控制面板管理
Centos 搭建LAMP平台 + Web控制面板管理 LAMP组合就是在Linux操作系统上配置Apache服务器.MySQL服务器,PHP应用程序服务器,组成强大的Web动态网站开发平台. Apa ...
- Centos 搭建高性能WEB服务 Nginx+PHP+MYSQL+Discuz论坛
Centos 搭建高性能WEB服务 Nginx+PHP+MYSQL+Discuz论坛 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,它已经在该站点运 ...
- php5.3 php7兼容,Centos搭建PHP7.0.x让php5.3和php7兼容共存教程
先安装php5.3 就不说,说Centos搭建PHP7.0教程: # wget http://php.net/get/php-7.0.4.tar.gz/from/a/mirror 解压安装 # ta ...
- [记录]CentOS搭建SVN服务器(主从同步)
CentOS搭建SVN服务器(主从同步) 1.安装步骤如下: 1)安装: #yum install subversion 2)查看安装位置: #rpm -ql subversion 3)查看版本: # ...
- Centos搭建PHP5.3.8+Nginx1.0.9+Mysql5.5.17
Centos搭建PHP5.3.8+Nginx1.0.9+Mysql5.5.17 操作环境 操作系统:Mac Os Loin 虚拟主机:VMware Fusion 虚拟系统:Centos 5.5+ 操作 ...
- ngrok linux开机自启动,CentOS 搭建ngrok服务器
原标题:CentOS 搭建ngrok服务器 1一.前提条件 1. 准备好一台主机,带公网IP 2. 准备一个一级域名,做好泛解析(二级域名的没有配置成功,汗...) 切记 一定要做好域名泛解析 二.安 ...
- Centos搭建FTP服务
前言: Centos 搭建FTP服务学习记录 FTP简介 FTP简称"文件传输协议",用于Internet上的控制文件的双向传输. 在FTP中常遇到两个概念: 下载和上传 &quo ...
- Centos 搭建activemq
Centos 搭建activemq 1,官方下载 http://activemq.apache.org/activemq-5122-release.html apache-activemq-5.15 ...
- lepus mysql 复制监控_MySQL数据库之CentOS搭建lepus3.8监控MySQL
本文主要向大家介绍了MySQL数据库之CentOS搭建lepus3.8监控MySQL ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. LNMP环境 yum -y install ...
- 阿里云服务器CentOS搭建
一. 阿里云服务器CentOS搭建 阿里云的CentOS云系统是一个集成了Python环境基于yum安装的镜像,包含Nginx.MySQL.Pyenv.IPython等. CentOS(Communi ...
最新文章
- RDKit | 基于SSSR区分环状化合物和链状化合物
- 人工智能第一股“旷视科技”赴港递交IPO材料 半年亏损52亿估值280亿
- js正則表達式--验证表单
- php支持ssi,让Apache支持SHTML(SSI)的配置方法
- 台达服务器型号,台达网络服务器机柜 42u 600宽 1200 2000mm SR1160标准机柜
- Objective-C基础3:内存管理续
- matlab双y轴作图_matlab双y轴作图两个y坐标轴设置问题,y轴刻度设置语句没发挥作用,求解答...
- python中goto如何使用,基于python goto的正确用法说明
- java 防御编程_用Java编程。实现两个人对决。有血量有防御。有攻击力
- samba和nfs的自动挂载
- ThinkPad工程师回答
- Java后台开发学习进阶路线
- 网页视频播放器代码大全 + 21个为您的网站和博客提供的免费视频播放器
- 实战教你刷显卡BIOS
- 2020最新版《神经网络与深度学习》中文版更新完毕,pdf开放下载
- 前端导出 xlsx文件
- matlab分解质因数函数,C 练习实例14 – 将一个正整数分解质因数 | 菜鸟教程
- 服务器修改传奇道士神兽升级,传奇游戏小道士关于神兽升级的研究——骨灰级传奇玩家分享...
- so easy 的 Vue3.0自定义指令(也搜一贼)
- HHKB-BT 入门指北
热门文章
- win10 VS2015社区版本 64位 TensorFlow 安装
- HTML 字体颜色 色号对照表
- 威纶通与三菱PLC条码枪解码程序 本程序是威纶通触摸屏USB接头直接插条形码扫码枪
- java 定义一个商品类_用java编写一个产品类, 1. 属性:产品编号,产品名称,产品单价,产品库存,2.构造方...
- Django学习笔记之form组件的局部钩子和全局钩子
- 低通滤波器转带通滤波器公式由来_无源滤波器应用或电路中的带通滤波器原理...
- 单片机控制可控硅调压
- 用Python写了一个带界面的聊天室
- 学而时习之语言篇: 我工作这么多年, 为什么不能准确读 “音标“ ?
- JAVA开发路线走向高级开发工程师