您好,欢迎来到思海网络,我们将竭诚为您提供优质的服务! 诚征网络推广 | 网站备案 | 帮助中心 | 软件下载 | 购买流程 | 付款方式 | 联系我们 [ 会员登录/注册 ]
促销推广
客服中心
业务咨询
有事点击这里…  531199185
有事点击这里…  61352289
点击这里给我发消息  81721488
有事点击这里…  376585780
有事点击这里…  872642803
有事点击这里…  459248018
有事点击这里…  61352288
有事点击这里…  380791050
技术支持
有事点击这里…  714236853
有事点击这里…  719304487
有事点击这里…  1208894568
有事点击这里…  61352289
在线客服
有事点击这里…  531199185
有事点击这里…  61352288
有事点击这里…  983054746
有事点击这里…  893984210
当前位置:首页 >> 技术文章 >> 文章浏览
技术文章

Linux下PureFtpd的基本安装使用

添加时间:2016-4-18 4:09:17  添加: 思海网络 
基本的安装使用方法

首先安装之前最好用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.把配置文件和主要执行文件拷到对应的文件夹下面:


代码如下:
cp configuration-file/pure-ftpd.conf /usr/local/pure-ftpd/etc/ 
cp configuration-file/pure-config.pl /usr/local/pure-ftpd/sbin/ 
chmod 755 /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
 
ChrootEveryone              yes         # 启用chroot
BrokenClientsCompatibility  yes         # 兼容不同客户端
Daemonize                   yes         # 后台运行
MaxClientsPerIP             20          # 每个ip最大连接数
VerboseLog                  yes         # 记录日志
DisplayDotFiles             no          # 显示隐藏文件
AnonymousOnly               no          # 只允许匿名用户访问
NoAnonymous                 yes         # 不允许匿名用户连接
SyslogFacility              none        # 不将日志在syslog日志中显示
DontResolve                 yes         # 不进行客户端DNS解析
MaxIdleTime                 15          # 最大空闲时间
LimitRecursion              2000 8      # 浏览限制,文件2000,目录8层
AnonymousCanCreateDirs      no          # 匿名用户可以创建目录
MaxLoad                     4           # 超出负载后禁止下载
PassivePortRange          45000 50000   # 被动模式端口范围
#AnonymousRatio                1 10     # 匿名用户上传/下载比率
UserRatio                 1 10          # 所有用户上传/下载比率
AntiWarez                   yes         # 禁止下载匿名用户上传但未经验证的文件
#AnonymousBandwidth            200      # 匿名用户带宽限制(KB)
UserBandwidth               8           # 所有用户最大带宽(KB)
Umask                       133:022     # 创建文件/目录默认掩码
MinUID                      100         # 最大UID限制
AllowUserFXP                no          # 仅运行用户进行FXP传输
AllowAnonymousFXP           no          # 对匿名用户和非匿名用户允许进行匿名 FXP 传输
ProhibitDotFilesWrite       no          # 不能删除/写入隐藏文件
ProhibitDotFilesRead        no          # 禁止读取隐藏文件
AutoRename                  yes         # 有同名文件时自动重新命名
AnonymousCantUpload         yes         # 不允许匿名用户上传文件
AltLog                     clf:/var/log/pureftpd.log                # clf格式日志文件位置
PureDB                     /usr/local/pure-ftpd/etc/pureftpd.pdb        # 用户数据库文件
MaxDiskUsage               99           # 当磁盘使用量打到99%时禁止上传
CreateHomeDir              yes          # 如果虚拟用户的目录不存在则自动创建
CustomerProof              yes          # 防止命令误操作
 
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
再尝试重新连接以后上传。

连接超时问题解决纪实
问题
最近在服务器安装了pureftpd提供给公司同事上传文件用。在交付前使用FileZilla测试没有问题,但是同事反映在Linux下ftp不能使用。
自己在Linux下测试了一下,一直卡在Entering Passive Mode,最后超时。


原因

而在windows下使用FileZilla测试并没有问题。仔细看了下FileZilla的日志,发现有一行


想到pureftpd用的是云主机,而云主机的网卡只绑定有内网IP,外网IP应该是绑定在路由了。猜测ftp客户端使用被动模式连接pureftpd的时候,pureftpd返回了一个内网IP。
通过wireshark抓包发现:


可以知道服务器的确返回了一个内网地址。
方法
那能不能强制pureftpd返回外网IP呢。通过查看pureftpd文档,发现在pureftpd.conf加入:



代码如下:ForcePassiveIP 1.1.1.1
1.1.1.1为pureftpd外网ip。重启之后问题解决。

关键字:Linux、PureFtpd、基本安装
分享到:

顶部 】 【 关闭
版权所有:佛山思海电脑网络有限公司 ©1998-2024 All Rights Reserved.
联系电话:(0757)22630313、22633833
中华人民共和国增值电信业务经营许可证: 粤B1.B2-20030321 备案号:粤B2-20030321-1
网站公安备案编号:44060602000007 交互式栏目专项备案编号:200303DD003  
察察 工商 网安 举报有奖  警警  手机打开网站