首先去官网下载proftpd源代码(非匿名访问)
http://www.proftpd.org/
或者直接下载ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.1.tar.gz (这是稳定版的)
./configure --prefix=/usr/local/proftpd
若出现cpp类错误请先安装 gcc-c++ (gcc-c++依赖libstdc++-devel),注意版本
proftpd.conf 将这个文件拷贝到安装etc目录下(配置好了的文件,别急底下贴出来了下有)
cp contrib/dist/rpm/proftpd.init.d /etc/rc.d/init.d/proftpd #在安装目录下拷贝(开机启动)
vi /etc/rc.d/init.d/functions #修改相关目录
PATH="/sbin:/usr/sbin:/bin:/usr/bin"将改为下面的
PATH="/sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/bin:/usr/local/proftpd/sbin"
chmod +x /etc/rc.d/init.d/proftpd #设置执行权限
chkconfig --level 35 proftpd on # 则下次系统启动以后,proftpd将自动启动。
chkconfig --add proftpd
这样就可以用
service proftpd start
service proftpd stop
service proftpd restart
来分别执行开启服
/usr/local/proftpd/sbin/proftpd -c /usr/local/proftpd/etc/proftpd.conf 第一次启动
/etc/rc.d/init.d/proftpd restart 重启
groupadd ftpuser //添加组 不想登陆SHLL请加 -s /sbin/nologin
添加用户并关联/www/att目录,如果只是添加用户直接useradd 用户名
useradd -d /www/att -g ftpuser -s /sbin/nologin username 不想登陆SHLL请加 -s /sbin/nologin
passwd username //设置密码
================下面是对目录的操作说明========================
chgrp ftpuser /www //将组 ftpuser 管理目录改为或设置为 /www目录
chown username /www/att //将用户att的管理目录改为或设置为 /www/att
chown -R username.ftpuser /www/att //设置目录/www/att归username这个用户和FTP这个组
chmod 755 /www/att //设置这个目录的权限
groups att 查看att用户属于哪个组
===============================================
上面是对用户的基本操作视情况操作
Limit参数说明:
CWD: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:所有权限
LOGIN:是否允许登陆的权限
3、limit说明
AllowUser 针对某个用户允许的Limit
DenyUser 针对某个用户禁止的Limit
AllowGroup 针对某个用户组允许的Limit
DenyGroup 针对某个用户组禁止的Limit
AllowAll 针对所有用户组允许的Limit
DenyAll 针对所有用户禁止的Limit
=============================================================================
proftpd.conf 代码
ServerName "Free FTP"
ServerType standalone
DefaultServer on
Port 21
Umask 022
MaxInstances 30 #这是最大连接数,如果机器够好,不妨修改的大点
ExtendedLog /var/log/proftpd.log ALL
ServerIdent off #关闭服务器信息的显示。关闭后,默认看不到welcome信息。可以在下面的对用户的设置中进行指定
User nobody
Group nobody
DefaultRoot ~ #不允许用户跳出目录
DefaultAddress 192.168.1.199
#DNS反查
UseReverseDNS off
IdentLookups off
#最大尝试连接次数
MaxLoginAttempts 3
#每用户线程
MaxClientsPerHost 2
#最大用户数
MaxClients 20
DisplayLogin /usr/local/proftpd/welcome.msg
<Limit LOGIN>
AllowGroup ftpuser
</Limit>
<Directory /www/deer>
AllowOverwrite on
AllowStoreRestart on #这2句是使proftpd支持断点续传
TransferRate RETR 500 group ftpuser
TransferRate STOR 100 group ftpuser
<Limit ALL>
AllowUser att #用户一
AllowUser att1 #用户二
</Limit>
</Directory>
<Directory /www/bbs>
AllowOverwrite on
AllowStoreRestart on #这2句是使proftpd支持断点续传
TransferRate RETR 500 group ftpuser
TransferRate STOR 100 group ftpuser
<Limit ALL>
AllowUser bbs
</Limit>
</Directory>
<Directory /www/dress>
AllowOverwrite on
AllowStoreRestart on #这2句是使proftpd支持断点续传
TransferRate RETR 500 group ftpuser
TransferRate STOR 100 group ftpuser
<Limit ALL>
AllowUser dress
</Limit>
</Directory>