设为首页 收藏本站
查看: 689|回复: 0

[经验分享] Ubuntu 12.04下Proftpd FTP服务器配置

[复制链接]

尚未签到

发表于 2018-5-5 12:45:37 | 显示全部楼层 |阅读模式
  Proftpd FTP服务器配置

操作系统 Ubuntu 12.04 64bit server LTS
方案一: 本地文件方式认证
1、安装软件包
apt-getinstall proftpd proftpd-doc proftpd-mod-mysql


ProftpdFTP服务器的配置类似apache配置文件风格,配置文件为/etc/proftpd/proftpd.conf


2、建立ftpuser用户,用于虚拟用户登录系统的身份
useraddftpuser


3、建立主FTP目录
mkdir-p /var/ftpdir
chownftpuser.ftpuser /var/ftpdir
chmod755 /var/ftpdir


4、建立虚拟用户
ftpasswd--passwd --file=/etc/proftpd/passwd/ftpd.passwd --name=test--uid=1001 --gid=1001 --home=/var/ftpdir/beijing/--shell=/usr/sbin/nologin


5、修改配置文件


DefaultRoot ~ 默认登录到用户的家目录
UseEncodingUTF-8 GBK 防止IE、资源管理器文件乱码神器
AllowRetrieveRestarton 下载续传
AllowStoreRestarton 上传续传
RequireValidShell off 不要求有合法的shell
PathDenyFilter\.exe$ 限制上传的文件格式
PS:proftpdLimit的使用介绍
我们用到的比较多的可能是Limit的使用,Limit大致有以下动作,基本能覆盖全部的权限了。
  CMDChangeWorking Directory 改变目录
  MKDMaKeDirectory 建立目录的权限
  RNFRReNameFRom 更改目录名的权限
  DELEDELEte删除文件的权限
  RMDReMoveDirectory 删除目录的权限
  RETRRETRieve从服务端下载到客户端的权限
  STORSTORe从客户端上传到服务端的权限
  READ:可读的权限,不包括列目录的权限,相当于RETRSTAT
  WRITE:写文件或者目录的权限,包括MKDRMD
  DIRS:是否允许列目录,相当于LISTNLST等权限,还是比较实用的
  ALL:所有权限
  LOGIN:是否允许登陆的权限
针对上面这个Limit所应用的对象,又包括以下范围
  AllowUser针对某个用户允许的Limit
  DenyUser针对某个用户禁止的Limit
  AllowGroup针对某个用户组允许的Limit
  DenyGroup针对某个用户组禁止的Limit
  AllowAll针对所有用户组允许的Limit
  DenyAll针对所有用户禁止的Limit
关于限制速率的参数为:
  TransferRateSTOR|RETR 速度(Kbytes/suser使用者
方案二:MYSQL数据库方式认证
proftp+mysql

apt-getinstall mysql-common mysql-server mysql-server-5.5


mysql-u root -p


createdatabaes ftpdb 创建数据库


grantall on ftpdb.* to proftpd@"%" identified by'password' 创建数据管理账户。


创建用户组表 UID、GID与系统用户一致
CREATETABLE ftpgroup (
groupnamevarchar(16) NOT NULL default '',
gidsmallint(6) NOT NULL default '1001',
membersvarchar(16) NOT NULL default '',
KEYgroupname (groupname)
);
插入一条信息,组名称
INSERTINTO ftpgroup VALUES ('ftpuser',1001,'ftpuser');
创建用户表
CreateTABLE ftpusers (
useridvarchar(30) NOT NULL default '',
passwdvarchar(80) NOT NULL default '',
uidint(10) unsigned NOT NULL default '1001',
gidint(10) unsigned NOT NULL default '1001',
homedirvarchar(255) NOT NULL default '',
shellvarchar(255) NOT NULL default '/sbin/nologin',
countint(10) unsigned NOT NULL default '0',
hostvarchar(30) NOT NULL default '',
lastloginvarchar(30) NOT NULL default '',
UNIQUEKEY userid (userid)
)ENGINE=MyISAM DEFAULT CHARSET=gbk;


建立FTP用户
INSERTINTO ftpusersVALUES('wujr','123',1001,1001,'/var/ftpdir/beijing/bj1y/','/sbin/nologin','','','');
修改proftpd.conf配置文件加入如下字段:
LoadModulemod_sql.c
LoadModulemod_sql_mysql.c
AuthOrdermod_sql.c
SQLBackendmysql
SQLConnectInfoftpdb@localhost proftpd 3sh6q9
SQLAuthTypesPlaintext
SQLUserInfoftpusers userid passwd uid gid homedir shell
SQLGroupInfoftpgroup groupname gid members
SQLAuthenticateusers groups
SQLNegativeCacheon
#如果用户目录不存在则自动创建

SQLNamedQuerygetcount SELECT "count from ftpusers where userid='%u'"
SQLNamedQuerygetlastlogin SELECT "lastlogin from ftpusers where userid='%u'"
SQLNamedQueryupdatelogininfo UPDATE "count=count+1, host='%h',lastlogin=current_timestamp() WHERE userid='%u'" ftpusers
SQLShowInfoPASS "230" "You've logged on %{getcount} times,lastlogin at %{getlastlogin}"
SQLLogPASS updatelogininfo
DeferWelcomeon
RootLoginoff
RequireValidShelloff
重启服务,serviceproftpd restart

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-456185-1-1.html 上篇帖子: Ubuntu12.04下LAMP的配置 下篇帖子: Ubuntu 12.04.2 安装 VMware
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表