http://www.5ilinux.com/blog/archives/000091.html
转载地址
proftpd学习笔记(一)
这几天,公司终于放假了,终于能够安下心来好好学些proftp mysql quota。
安装proftp之前,必须先做一个工作,假如您的mysql是自己编译的,那就必须先修改/etc/ld.so.conf,否则后面运行proftp会报错。
vi /etc/ld.so.conf
添加下面一行:
/usr/local/mysql/lib/mysql
注意大家假如mysql的安装路径于我不相同,则填写相应的路径,有关mysql的编译安装请参考《Linux Apache Mysql PHP典型配置》。
1。下载相关软件
wget ftp://ftp.proftpd.org/distrib/source/proftpd-1.2.9.tar.gz下载proftp的最新版本1.2.9
wget http://www.castaglia.org/proftpd/modules/proftpd-mod-quotatab-1.2.11.tar.gz这是配合proftp的磁盘限额的模块
2。解压编译
tar zvxf proftpd-1.2.9.tar.gz
tar zvxf proftpd-mod-quotatab-1.2.11.tar.gz
cp mod_quotatab/*.c proftpd-1.2.9/contrib/
cp mod_quotatab/*.h proftpd-1.2.9/contrib/
vi proftpd-1.2.9/contrib/mod_sql_mysql.c找到#include
编译:
./configure \
--prefix=/usr/local/proftpd \
--with-modules=mod_sql:mod_sql_mysql:mod_quotatab\
:mod_quotatab_sql:mod_ratio \
--with-includes=/usr/local/mysql/include/mysql \
--with-libraries=/usr/local/mysql/lib/mysql
makemake install
这里我们编译的时候已加进了mysql,quota,ratio等模块的支持,我会在后面讲他们的应用
ok, 现在我们能够来启动proftp了,只要
/usr/local/proftpd/sbin/proftpd
用您的ftp客户端试验以下,应该能够正常登陆,包括匿名和linux用户名能够。
其实默认的proftp满足日常的服务器管理用还是绰绰有余的,有个地方还是要修改一下,就是默认proftp的配置文档不支持ftp续传,所以我们只要
vi /usr/local/proftpd/etc/proftpd.conf
添加以下两行
AllowRetrieveRestart on
AllowStoreRestart on
重新启动以下proftp,就能够正常续传文档了。
创建proftpd脚本
只要在proftp的源代码目录
cp proftpd-1.2.9/contrib/dist/rpm/proftpd.init.d /etc/rc.d/init.d/proftpd
记得修改proftpd文档,一般要修改proftpd的实际路径
chmod 755 /etc/rc.d/init.d/proftpd
ok
以后就能够用这个教本来启动,停止,重启proftp
呵呵,今天就讲这些,明天讲些proftp的一些基础配置:)
proftpd学习笔记(二)
上次我们讲了proftp的基本安装,由于我们后面有关于mysql和quota的配置,所以编译的时候把相应的模块都编译进去了,假如您无需mysql和磁盘限额的功能,完万能够无需这么编译。
这里要讲一个很实用的命令,
/usr/local/proftpd/sbin/ftpshut
这个命令还是比较实用的,因为您可能需要不断的调整您的服务器,而这个命令就很灵活,能够在不停止proftpd进程的前提下,定时停止ftp连接,这里将会周详说他是怎么使用的。
ftpshut [ -l min ] [ -d min ] time [ warning-message ... ]
-l min: 在ftp关闭服务之前的几分钟内,尝试建立新的ftp连接均不被接受
-d min: 在ftp关闭服务之前的几分钟内,已建立的ftp连接将被中止
time: 在多少时间后,服务器将关闭ftp服务,格式有两种
+number 经过number分钟后关闭
MMHH 在今天MM:HH服务器将关闭
注意,这里我们用这个命令是把ftp服务给停了,但实际的proftpd进程还没停止,所以一般调试ftp会使用到这个命令。
举例:
再经过30分钟后,FTP服务将关闭,在这之前的20分钟不可接受任何新的ftp连接,已建立的在服务关闭前10分钟强制断线,并在客户端显示“FTP Server Will shutdown at time”
ftpshut -l 20 -d 10 30 "FTP Server Will shutdown at time"
其实ftpshut就是产生/etc/shutmsg ,您只要删除这个文档ftp又能够重新服务,或
直接
ftpshut -R
好了,开始讲一些proftpd的基本配置吧,其实大家假如熟悉apache的配置的话,您会发现proftpd的配置基本都是类似的,他的配置基本格式是
#全局配置
配置项目1 参数1
配置项目2 参数2#某个目录的配置
<Directory "路径名">
...
...
</Directory>#关于匿名用户的配置
<Anonymous "匿名登陆的目录">
...
...
<Limit 限制动作>
...
...
</Limit>
</Anonymous>
我们用到的比较多的可能是Limit的使用,Limit大致有以下动作,基本能覆盖全部的权限了,大家灵活使用就是了。
CMD:Change Working Directory 改变目录
MKD:MaKe Directory 建立目录的权限
RNFR: ReName FRom 更改目录名的权限
DELE:DELEte 删除文档的权限
RMD:ReMove Directory 删除目录的权限
RETR:RETRieve 从服务端下载到客户端的权限
STOR:STORe 从客户端上传到服务端的权限
READ:可读的权限,不包括列目录的权限,相当于RETR,STAT等
WRITE:写文档或目录的权限,包括MKD和RMD
DIRS:是否允许列目录,相当于LIST,NLST等权限,还是比较实用的
ALL:任何权限文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!




