PureFTPd是一个centos中ftp服务器软件了,我们在网上有很多的关于PureFTPd安装教程了,下面小编来为各位介绍Linux下PureFTPd配置安装教程.
网上关于pureftp的安装教程很多,但是试了以后发现很多其实都不完善,很容易出错,自己安装摸索以后总结如下.
首先安装之前最好用netstat -ntl来查看ftp默认的21端口是不是已经被占用了,同时也可以用ps -ef 指令查看开启了哪些服务,看一下有没有类似sftp或者是vsftp的服务,如果开启,用killall sftp指令把这个服务kill掉.
1.下载pureftp,我下载的是pure-ftpd-1.0.30
指令:wget http://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.30.tar.bz2
2.解压:tar -xvjf pure-ftpd-1.0.30.tar.bz2
进入到解压后目录:cd pure-ftpd-1.0.30
3.编译方式,推荐使用全部安装:./configure –prefix=/usr/local/pure-ftpd/ –with-language=simplified-chinese –with-everything
4.安装:make && make check && make install
5.建立相应的安装目录:mkdir /usr/local/pure-ftpd/etc
6.把配置文件和主要执行文件拷到对应的文件夹下面:
- cpconfiguration-file/pure-ftpd.conf/usr/local/pure-ftpd/etc/
- cpconfiguration-file/pure-config.pl/usr/local/pure-ftpd/sbin/
- chmod755/usr/local/pure-ftpd/sbin/pure-config.pl
7.定制一下系统的环境变量:
- cd/usr/local/bin/
- ln-s/usr/local/pure-ftpd/bin/*.
- ln-s/usr/local/pure-ftpd/sbin/*/usr/local/sbin/
- ln-s/usr/local/pure-ftpd/man/man8/*/usr/local/share/man/man8/
8.启动pureftp服务器:
pure-config.pl /usr/local/pure-ftpd/etc/pure-ftpd.conf
屏幕上一般显示如下信息:
- Running:/usr/local/pure-ftpd/sbin/pure-ftpd-A-b-B-C20-d-e-fnone-H-I15-L2000:8-M-m4-p45000:50000-q1:10-s-t200-U133:022-u100-r-Oclf:/var/log/pureftpd.log-k99-Z
此时可以用在命令行窗口下telnet ip地址 21的方式探测一下这个端口是不是通的.
9.pureftp一般需要不用默认的root用户进行操作,一般会另外创建用户名和组,用虚拟用户进行登录.
创建组:groupadd ftpgroup
创建用户:useradd -g ftpgroup -d /dev/null -s /etc ftpuser
创建完成以后可以用cat /etc/passwd和cat /etc/group来查看组和用户是否已经创建好了
10.添加ftp虚拟用户
ure-pw useradd test -u ftpuser -d /home/ftpusers/test
如果添加完成以后想要删除可以使用pure-pw userdel test这条指令,想要修改密码可以使用pure-pw passwd test这条指令.
11.查看用户信息
pure-pw show test
12.生成数据库文件
pure-pw mkdb
13.一定要注意修改配置文件,因为很多配置文件数据库的默认安装位置并不是实际位置,这样就会造成每次登陆的时候都找不到密码,ftp一直显示passwd required,所以安装好以后一定要修改配置文件,尤其是粉红色的部位,注意修改,打开配置文件:vi /usr/local/pure-ftpd/etc/pure-ftpd.conf
- ChrootEveryoneyes#启用chroot
- BrokenClientsCompatibilityyes#兼容不同客户端
- Daemonizeyes#后台运行
- MaxClientsPerIP20#每个ip最大连接数
- VerboseLogyes#记录日志
- DisplayDotFilesno#显示隐藏文件
- AnonymousOnlyno#只允许匿名用户访问
- NoAnonymousyes#不允许匿名用户连接
- SyslogFacilitynone#不将日志在syslog日志中显示
- DontResolveyes#不进行客户端DNS解析
- MaxIdleTime15#最大空闲时间
- LimitRecursion20008#浏览限制,文件2000,目录8层
- AnonymousCanCreateDirsno#匿名用户可以创建目录
- MaxLoad4#超出负载后禁止下载
- PassivePortRange4500050000#被动模式端口范围
- #AnonymousRatio110#匿名用户上传/下载比率
- UserRatio110#所有用户上传/下载比率
- AntiWarezyes#禁止下载匿名用户上传但未经验证的文件
- #AnonymousBandwidth200#匿名用户带宽限制(KB)
- UserBandwidth8#所有用户最大带宽(KB)
- Umask133:022#创建文件/目录默认掩码
- MinUID100#最大UID限制
- AllowUserFXPno#仅运行用户进行FXP传输
- AllowAnonymousFXPno#对匿名用户和非匿名用户允许进行匿名FXP传输
- ProhibitDotFilesWriteno#不能删除/写入隐藏文件
- ProhibitDotFilesReadno#禁止读取隐藏文件
- AutoRenameyes#有同名文件时自动重新命名
- AnonymousCantUploadyes#不允许匿名用户上传文件
- AltLogclf:/var/log/pureftpd.log#clf格式日志文件位置
- PureDB/usr/local/pure-ftpd/etc/pureftpd.pdb#用户数据库文件
- MaxDiskUsage99#当磁盘使用量打到99%时禁止上传
- CreateHomeDiryes#如果虚拟用户的目录不存在则自动创建--phpfensi.com
- CustomerProofyes#防止命令误操作
PureDB /usr/local/pure-ftpd/etc/pureftpd.pdb这个地方一定要记得修改,不然会一直登不上去,修改完成以后可以再次执行.
14.重新生成数据库文件pure-pw mkdb
15.先把之前的pureftp服务kill掉 killall pure-ftpd
16.然后重新启动/usr/local/pure-ftpd/sbin/pure-config.pl /usr/local/pure-ftpd/etc/pure-ftpd.conf
17.此时一般已经可以成功登录,但是有可能还是无法上传到服务器上去,此时一般是权限问题,登录到ftp的家目录下 cd /home/ftpusers/test,修改test文件夹下的文件权限 chown ftpuser:ftpgroup wenjian1 再尝试重新连接以后上传.