PIXNET Logo登入

無人部落格

跳到主文

就都是隨便亂寫,也沒有定時出文章的習慣,所以就乾脆叫無人部落格 XD

部落格全站分類:職場甘苦

  • 相簿
  • 部落格
  • 留言
  • 名片
  • 11月 10 週四 201122:29
  • PureFTPd安装+初步配置指南

原文出處 Tony的杂物仓库 http://tomem.info/blog/2010/03/139

PureFTPd安装+初步配置指南
Saturday, March 27th, 2010 @ 11:00 am

最近把原来的ProFTPd换成了Pure-FTPd。


促使本人做下这一决定的原因主要是ProFTPd效率实在太低,而且最近网络不稳定ProFTPd经常connection reset by peers,让人无法忍受,加上在网上看到PureFTPd相对效率更高,于是动手干掉了proftpd。


 


首先


 


sudo apt-get purge proftpd && sudo apt-get autoremove && sudo apt-get install pure-ftpd

 


注意pure-ftpd中间有个-,刚开始试了很久pureftpd都说找不到软件包 :shock:


安装的时候选standalone。


装好后先关掉


sudo /etc/init.d/pure-ftpd stop

 


pure-ftpd的配置文件比较特别,不是一个单一的conf而是在conf目录下创建以条目为名称的文件,值就是文件内容。


我的FTP加了这么几个:


在终端下输入


 


sudo sh -c "echo 'yes' > /etc/pure-ftpd/conf/ChrootEveryone" //把用户限制在home里面

NoAnonymous yes //不允许匿名登录

DontResolve yes//不反向解析,提高登录速度

MaxClientsPerIP 2 //每IP限制2个线程

UnixAuthentication no //不使用系统自带的用户(使用虚拟用户)

Bind 127.0.0.1,xx //端口号

MaxClientsNumber 5 //最大用户数5

MaxIdleTime 3 //发呆时间3分钟

ProhibitDotFilesRead yes//不允许读以.开头的文件

ProhibitDotFilesWrite yes//不允许写以.开头的文件

AllowUserFXP yes//不允许FXP

PureDB /etc/pure-ftpd/pureftpd.pdb //PureFTPD密码文件路径

 


 


然后配置虚拟用户。


在系统里面先加真实用户:


 


sudo groupadd ftpgroup
sudo useradd -g ftpgroup -d /dev/null -s /etc ftpuser

 


然后虚拟用户的数据库有两种,用mysql或者自带的puredb都行。我不想装mysql,所以就用自带的puredb。


 


sudo pure-pw useradd joe -u ftpuser -d /home/ftpusers/joe -N 20480 -y 2

 


以上命令代表建立一个名字为joe的用户,限制在home /home/ftpusers/joe里面,最大磁盘空间20G,同时最多两个线程。


建立用户后可以用pure-pw usermod来修改,语法和useradd几乎一样。更多参数:Pure-FTPD Virtual Users HOWTO


修改密码:pure-pw passwd 用户名


建好之后用


sudo pure-pw mkdb

生成数据库,在我的ubuntu下面默认放在/etc/pure-ftpd/pureftpd.pdb。


看更新,有解决方法


不知道为什么standalone的默认启动并不读取这个pdb,所以我把pure-ftpd从rc.d里面去掉了,手工加入命令强制读取pdb。


首先


sudo update-rc.d -f pure-ftpd remove


实际上就是把/etc/rc.0-rc.6下面的符号链接删掉


然后编辑


/etc/rc.local


加入



/usr/sbin/pure-ftpd -E -j -C 2 -H -B -l puredb:/etc/pure-ftpd/pureftpd.pdb


大功告成,重启。


Update1:PureFTPd判断权限是通过uid/gid的,所以如果想改权限的话需要建立真实用户,然后把虚拟用户的uid/gid改成真实用户的。


Update2:PureFTPd貌似比ProFTPd使用内存更少。


Update3:使用PureDB不仅要在conf下设立PureDB,以pdb路径作为内容,同时还要建立一个符号连接:


 


sudo ln -s /etc/pure-ftpd/conf/PureDB /etc/pure-ftpd/auth/PureDB

 


同时rc.local中间以命令行加载的方式是不会读取conf的,所以要去掉并且修复原先rc.0里面的:


sudo update-rc.d -f pure-ftpd enable



Tags: FTP, VPS
Posted in 伪技术向 | No Comments »
(繼續閱讀...)
文章標籤

akiraken 發表在 痞客邦 留言(0) 人氣(92)

  • 個人分類:Linux相關
▲top
  • 11月 10 週四 201122:27
  • 在 Ubuntu 下安裝 pureadmin 管理 pure-ftpd

原文出處  http://ceasarfree.blogspot.com/2010/12/ubuntu-pureadmin-pure-ftpd.html
 
以 Ubuntu Lucid 為例安裝 pureadmin 管理 pure-ftpd

安裝 pureadmin , 一併會安裝 pure-ftpd 等需要套件
(繼續閱讀...)
文章標籤

akiraken 發表在 痞客邦 留言(0) 人氣(674)

  • 個人分類:Linux相關
▲top
  • 11月 10 週四 201122:25
  • ubuntu server 10.4下pure-ftpd配置

本文出自 “匠人” 博客,请务必保留此出处http://xuchengji.blog.51cto.com/160472/372181

前言:
什么是FTP,可以阅读"百度百科"http://baike.baidu.com/view/369.htm,在这我引用其中的觉的重要一的点:
FTP的工作方式
FTP支持两种模式,一种方式叫做Standard (也就是 PORT方式,主动方式),一种是 Passive
(也就是PASV,被动方式)。 Standard模式 FTP的客户端发送 PORT 命令到FTP服务器。Passive模式FTP的客户端发送
PASV命令到 FTP Server。
下面介绍一个这两种方式的工作原理:
Port模式FTP 客户端首先和FTP服务器的TCP
21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。
PORT命令包含了客户端用什么端口接收数据。在传送数据的时候,服务器端通过自己的TCP 20端口连接至客户端的指定端口发送数据。 FTP
server必须和客户端建立一个新的连接用来传送数据。
Passive模式在建立控制通道的时候和Standard模式类似,但建立连接后发送的不是
Port命令,而是Pasv命令。FTP服务器收到Pasv命令后,随机打开一个临时端口(也叫自由端口,端口号大于1023小于65535)并且通知客
户端在这个端口上传送数据的请求,客户端连接FTP服务器此端口,然后FTP服务器将通过这个端口进行数据的传送,这个时候FTP
server不再需要建立一个新的和客户端之间的连接。
很多防火墙在设置的时候都是不允许接受外部发起的连接的,所以许多位于防火墙后或内网的FTP
服务器不支持PASV模式,因为客户端无法穿过防火墙打开FTP服务器的高端端口;而许多内网的客户端不能用PORT模式登陆FTP服务器,因为从服务器
的TCP 20无法和内部网络的客户端建立一个新的连接,造成无法工作。
在ubuntu中pure-ftpd是什么样
子可以参考:http://wiki.ubuntu.org.cn/Pure-ftpd,引用其中的一段:
Ubuntu/Debian 提供了三个不同的 Pure-FTPd 的 deb 安装包,分别是
pure-ftpd、pure-ftpd-ldap 和 pure- ftpd-mysql,其中 ldap 和 mysql 分别表示
Pure-FTPd 跟 ldap 和 mysql 集成,另外这三个包都依赖于 pure-ftpd-common。如果我们不需要 ldap 和
mysql 的话,选择 pure-ftpd 就可以了。
配置方式
不同于其他的多数守护进程(daemon),Pure-FTPd
的配置比较特别:它不读取任何的配置文件,配置选项都是通过命令行参数来实现的。例如:参数 '-H' 被设计为通过避免 DNS
查询来加快服务器的速度。要启用该特性,我们只需要将其加到命令行中: pure-ftpd -H 。备选的长参数也被支持的,下面是一个等价的命令
pure-ftpd --dontresolve
针对喜欢配置文件的用户,Pure-FTPd
官方给出了一种方案:通过一个封装(wrapper)工具,将配置文件解析并将其转换成命令行参数。首先根据自己的需要编辑配置文件
pure-ftpd.conf,而后通过下面的命令启动 pure-config.pl
/etc/pure-ftpd.conf。pure-config.pl 是一个 perl 脚本,它根据配置文件采用合适的命令行选项来调用
pure-ftpd。
在 Ubuntu/Debian 中,开发人员采用了另外的一种 wrapper
方式:它没有采用单一的配置文件,而是在/etc下建立一个pure-ftpd的目录,其下又有 conf、auth、db 这三个目录和一个名为
pureftpd-alias-dir 的文件。每一个配置选项都以一个文件的形式存在于 /etc/pure-ftpd/conf
目录中,而且是以选项为文件名,选项值为文件内容。例如如果想配置AnonymousOnly=yes(只允许匿名用户),则在
/etc/pure-ftpd/conf 中创建一个名为 AnonymousOnly 的文件,里面只有一行内容:yes。
在 Ubuntu 中,我们只关注最后一种配置方式。
 
环境:
1,在一台ubuntu server 10.4 服务器上安装pure-ftpd配置成FTP服务器
2,在客户端上用FileZilla Client登录测试
操作:
1,安装pure-ftpd
#sudo apt-get install pure-ftpd
#sudo netstat –nl
查看21端口是否已开启。
2,在FileZilla Client用本地一账号登录,会 出现如下错误
ftp1-1
解决:在/etc/pure-ftpd/conf下创建DontResolve文件内容为yes,即可解决。这时本地账户已经可以使用FTP服务了。
3,利用虚拟账户的方式管理用户。
(1)手动创建主目录
#sudo mkdir /var/ftp
#sudo mkdir /var/ftp/js
(2)创建组及用户
#sudo groupadd ftpadmins
#sudo groupadd ftpusers
#sudo useradd –g ftpadmins –d /dev/null –s /bin/false ftpadmin
#sudo useradd –g ftpusers –d /dev/null –s /bin/false js
(3)改变相应的访问权限
#sudo chown –R ftpadmin /var/ftp/
#sudo chmod  -R 775 /var/ftp/js
*:为了防止同组中的一个用户删除另一个用户的文件作以下设置
在/etc/pure-ftpd/conf下建KeepAllFiles文件内容为yes #禁止用户删除文件,TrustedGID组中的除外
在/etc/pure-ftpd/conf下建TrustedGID文件内容为2002 #管理员组ftpadmins的GID,允许管理员删除文件,此处的2002是ftpadmins的GID
(4)增加虚拟用户
#sudo pure-pw useradd admin –u ftpadmin –d /var/ftp
#sudo pure-pw useradd  js001 –u js –d /var/ftp/js
这时会在/etc/pure-ftpd/下新增pureftpd.passwd及pureftpd.pdb两个文件
#sudo pure-pw list
#sudo pure-pw show js001
用以上两个命令查看相应用户信息,更多的pure-pw用法可以 man pure-pw查看
(5)使虚拟用户生效
#sudo pure-pw mkdb
(6)使用pureDB验证方式,如果没有以下步骤,虚拟用户是无法登录的,会出现530的错误信息。
#cd /etc/pure-ftpd/auth
#sudo ln –s ../conf/PureDB 60puredb
(7)重启pure-ftpd服务
#sudo /etc/init.d/pure-ftpd restart
总结:pure-ftpd配置完成了,简单的一个FTP搭建起来了。详细配置可以参考http://wiki.ubuntu.org.cn/Pure-ftpd。也可以参考http://www.ubuntu-howto.info/howto/how-to-install-and-configure-pure-ftpd。
可是权限问题来了,在pure-ftpd的配置中没有看到严格的权限设置,相关的有:
1,如果你的 pure-ftpd 编译时加入了 pure-uploadscript 支持,这个指令将会使 pure-ftpd
     发送关于新上传的情况信息到 /var/run/pure-ftpd.upload.pipe,这样 pure-uploadscript
   就能读然后调用一个脚本去处理新的上传。
   在/etc/pure-ftpd/conf下建CallUploadScript内容为 yes 就会在/var/run下产生pure-ftpd.upload.pipe,pure-ftpd.upload.lock
这个方法我还没试用。
http://linux.die.net/man/8/pure-uploadscript
http://blog.derjohn.de/space/start/2006-11-14/1
2,KeepAllFiles=yes #禁止用户删除文件,TrustedGID组中的除外
TrustedGID=1001 #管理员组ftpadmins的GID,允许管理员删除文件
ChrootEveryone=yes #把所有用户限制在其homedir下
3,把虚拟用户映射到不同的本地用户上,这样就可控制权限了。缺点是要建不同本地组和用户。
本文出自 “匠人” 博客,请务必保留此出处http://xuchengji.blog.51cto.com/160472/372181
(繼續閱讀...)
文章標籤

akiraken 發表在 痞客邦 留言(0) 人氣(43)

  • 個人分類:Linux相關
▲top
  • 11月 10 週四 201122:15
  • [zz]How to install and configure pure-ftpd

来源:http://hi.baidu.com/lidongxing1005/blog/item/df3e378e19babaf3513d92fb.html

This is how to install and configure the pure-ftpd ftp server on your Ubuntu or Debian server or workstation.

(下面是在你的ubuntu或者Debian服务器中安装和部署pure-ftpd ftp服务)
(繼續閱讀...)
文章標籤

akiraken 發表在 痞客邦 留言(0) 人氣(46)

  • 個人分類:Linux相關
▲top
  • 8月 29 週一 201112:33
  • Virtualbox無法啓動問題

只要透過以下 Command 把自己的帳號加入 vboxusers 群組就行

# sudo usermod -G vboxusers -a youraccount
/ * youraccount 為要加入此群組的帳號 * /
(繼續閱讀...)
文章標籤

akiraken 發表在 痞客邦 留言(0) 人氣(14)

  • 個人分類:Linux相關
▲top
  • 2月 23 週三 201116:35
  • 別對成功討價還價

若想要成功
就別對成功討價還價
(繼續閱讀...)
文章標籤

akiraken 發表在 痞客邦 留言(0) 人氣(4)

  • 個人分類:
▲top
  • 7月 21 週二 200918:37
  • 要學會教育別人,不是教訓別人

我相信這是很多人會犯的錯. 一直很希望能教會別人,但卻沒用好的方式, 用自己的耐心愛心恆心慢慢教育. 而是迫不急待的指責別人的錯誤. 然後自己跳下來說"不然我自己來" 然後就把別人隔在一邊.
這些人往往認為是別人的遲鈍,錯誤. 卻沒想到是自己的教育出了問題.
教育可以使一個人偉大
(繼續閱讀...)
文章標籤

akiraken 發表在 痞客邦 留言(0) 人氣(49)

  • 個人分類:msn暱稱日記
▲top
  • 2月 12 週四 200915:08
  • 090212_[新聞] 千萬別被Y拍上的低價或0元或1元手機.電玩賣家給騙了

轉錄自以下網頁
http://www.hacken.cc/bbs/thread-358142-1-1.html
千萬別被Y拍上的低價或0元或1元手機.電玩賣家給騙了
1.[知識+轉載]
(繼續閱讀...)
文章標籤

akiraken 發表在 痞客邦 留言(0) 人氣(298)

  • 個人分類:轉錄文章
▲top
  • 11月 23 週日 200817:31
  • [轉貼]現在的國中生塗鴉,超有創意的!!

不轉貼過來了,請大家直接去他的網站看吧~ 這個夠讚!
我最欣賞騎車卡普,超有創意的!!
http://www.wretch.cc/blog/andy760101/25740097
(繼續閱讀...)
文章標籤

akiraken 發表在 痞客邦 留言(0) 人氣(65)

  • 個人分類:耍冷貓專區
▲top
  • 8月 15 週五 200813:19
  • [測試]Alteam AH-305耳機

前言

  剛拿到這隻耳機時,腦中首先浮現的就是“到底要如何才能做出最佳測試?”。
因為之前我所試聽的耳機主要是各家旗艦,在那種情況下會盡量使用較高階的器材搭
配以得到最佳數據。換言之,AH-305應該歸類為入門小耳罩,若使用同樣的方法測試
(繼續閱讀...)
文章標籤

akiraken 發表在 痞客邦 留言(0) 人氣(1,815)

  • 個人分類:音響相關
▲top
123»

自訂側欄

近期文章

  • PureFTPd安装+初步配置指南
  • 在 Ubuntu 下安裝 pureadmin 管理 pure-ftpd
  • ubuntu server 10.4下pure-ftpd配置
  • [zz]How to install and configure pure-ftpd
  • Virtualbox無法啓動問題
  • 別對成功討價還價
  • 要學會教育別人,不是教訓別人
  • 090212_[新聞] 千萬別被Y拍上的低價或0元或1元手機.電玩賣家給騙了
  • [轉貼]現在的國中生塗鴉,超有創意的!!
  • [測試]Alteam AH-305耳機

個人頭像

akiraken
暱稱:
akiraken
分類:
職場甘苦
好友:
累積中
地區:

文章彙整

文章分類

  • Linux相關 (5)
  • 轉錄文章 (1)
  • 生活悟語 (1)
  • msn暱稱日記 (10)
  • 耍冷貓專區 (2)
  • 音響相關 (3)
  • 未分類文章 (1)