LinuxVsFTPProFTP用户管理高级技巧
 
    FTP服务时互联网上比较古老的一种应用,至今Interner应用面非常广泛,但令管理员头痛不已的是其用户管理,既多且杂,如何解决这一问题呢?使用MySQL与ProFTP或VsFTP软件结合可以搭建一个高效、稳定且集中管理的FTP服务器。本来就来介绍一下如何搭建一个方便管理的基于MySQL数据库的FTP服务器。
一、软件版本的选择:
搭建基于数据库的FTP服务器首先要选择合适的软件。下面就是所选择软件的详细信息:
◆Linux版本RHEL5;
◆MySQL版本MySQL-standard-5.1.30-1.rhel5.src.rpm;
◆FTP服务器proftpd-1.3.2.tar.gz和vsftpd-2.2.1.tar.gz;
◆MySQL的PAM验证程序pam_mysql-0.8RC1.tar.gz;
    需要说明的是,RHEL5安装时自定义安装,“development tools”项必须选择,否则编译调试软件时需要的软件包需另行安装;其次,要确保所安装Linux系统时没有安装MySQL与FTP服务器等软件,如果有则先卸载;再次,ProFTPD与VsFTPD两者不要在同台计算机同时使用,这样会造成意想不到的问题,读者根据自己的需求和软件的具体功能选择其中之一。
建立程序安装目录
整个安装过程以root用户执行如下命令:
    #cd /soft/programe
    #mkdir mysq
  需要注意目录名称的大小写。
    #mkdir proftpd
    #mkdir pam_mods
MySQL的安装目录为/soft/program/mysql,ProFTPD的安装目录为/soft/program/proftpd,pam_mysq1.so的安装目录为/soft/program/pam_mods,/storage是一个已经存在的目录,所有的FTP用户上传和下载文件都存放在这里。
安装MySQL
◆ 增加一个管理MySQL的用户和组:
#groupadd mysqlgrp
#useradd  -g mysqlgrp mysqladm
#passwd  mysqladm
◆ 切换到MySQL-stan-dard-5.1.30-1.rhel5.src.rpm文件所在的目录,执行以下步骤安装:
#rpm-ivh MySQL-stan-dard-5.1.30-1.rhel5.src.rpm
此条命令解压出mysql-5.1.30.tar.gz文件存放在以下的目录中。
#cd /usr/src/redhat/SOURCE
#tar zxvf mysqt-5.1.30.tar.gz
#cd mysql-5.1.30
#./configure Prefix=/soft/program/mysql --with-extra-charsets=all
其中,“--prefix=/soft/program/mysql”参数是用来指定Mysql的安装目录,“--with-extra-charsets=all”是用来支持所有的字符集。
#make
#make install
◆ 初始化数据库
#cd /soft/program/mysql/bin
#./mysql_install_db
◆ 为了安全要修改数据库存放目录的属主信息和访问模式/soft/program/mysqll/var为数据库存放的缺省目录
#cd /soft/program/mysql
#chown –R mysqladm:mysqlgrp var
#chmod -R go-wrx var
◆ 修改配置文件
#cd /soft/program/mysql/share/mysql
#cp my-small.cnf /etc/my.cnf
#cd /etc
在my.cnf文件中,增加如下内容:
[mysql]
user=mysqladm  #表示用mysqladm 用户启动MySQL#
default-character-set=utf8  #表示使用UTF-8字符集,此种字符集通用性较好,也很好的支持中文,当然也可以直接使用GBK。
 [clent]
Default-character-set=utf8
◆ 启动
启动方式有两种,一种是手工启动,一种是自动启动,其中手工启动的操作如下:
#cd /soft/program/mysql/bin
#./mysqld_safe&
自动启动则需要在/etc/rc.d/rc/local中加入以下的内容,开机自动启动MySQL数据库:
If [-x /soft/program/mysql/bin/mysqld_safe]; then
    install_path_name /bin/mysqld_safe&
fi
◆ 修改管理员密码
使用如下命令修改数据库密码:
#cd /soft/program/mysql/bin
#./mysqladmin -h localhost -u root password '123456'
上述命令的意思是本机上(-h host)使用的管理数据库的缺省管理账号root。需要注意的事,此root并非Linux系统中的root用户,密码设置为123456.
 
安装ProFTPD
◆切换到proftpd-1.3.2.tar.gz文件所在的目录,执行以下步骤安装:
#tar zxvf proftpd-1.3.2.tar.gz
#cd proftpd-1.3.2
#./configure--prefix=/soft/program/proftpd --with-modules=mod_sql:mod_sql_mysql:mod_quotatab:mod_quotatab_sql
此参数将支持MySQL和Quota模块添加进来。
--with-includes=/soft/program/mysql/include/mysql
上述参数指定MySQL中include的目录路径。
--with-libraries=/soft/program/mysql/lib/mysql
此参数指定MySQL中lib的目录路径。
#make
#make install
使用如下命令建立一个用于管理ProFTPD的Linux系统账号和组。
#groupadd  -g  2009 ftpgroup
#useradd -u 2009 –s /bin/false -d /storage -g ftpgroup ftpuser
#chown  -R  ftpuser.ftpgroup /storage
#chmod –R go-wrx- /storage
#chmod –R u+wrx /storage
简单修改ProFTPD配置文件,使之正常运行:
#cd /soft/program/proftpd/etc
用编辑器打开proftpd.conf,修改一下的内容:
#Set the user and group under which the server will run.
User    ftpuser
Group   ftpgroup
◆启动ProFTPD
启动Proftpd同样有两种方法,即手工启动和自动启动,其中手工启动操作如下:
#cd /soft/program/proftpd/sbin/
#./proftpd
此时一个基本的FTP服务器已经搭建成,可以进行测试了。需要注意的是,启动时如果出现具有以下信息的错误:
error while loading shared libraries:libmysqlclient.so.15:cannot open shared object file:No such file or directory
通常的解决办法如下:
#cd  /etc
用文本工具打开ld.so.conf,添加以下的内容/soft/program/mysql/lib/mysql
#ldconflg
更新ld.so cache file。
要让ProFTPD自动启动在/etc/rc.d/rc.local中加入以下的内容,开机即可自启动ProFTPD:
/soft/program/proftpd/sbin/proftpd
 

本文出自 “李晨光原创技术博客” 博客,请务必保留此出处http://chenguang.blog.51cto.com/350944/217853

Linux下VsFTP和ProFTP用户管理高级技巧 之一的更多相关文章

  1. Linux下vsftp匿名用户配置

    Linux下vsftp匿名用户上传和下载的配置 配置要注意三部分,请一一仔细对照: 1.vsftpd.conf文件的配置(vi /etc/vsftpd/vsftpd.conf) #允许匿名用户登录FT ...

  2. Vsftp的PASV mode(被动模式传送)和Port模式及 Linux下VsFTP配置全方案

    什么叫做PASV mode(被动模式传送)?他是如何工作的? FTP的连接一般是有两个连接的,一个是客户程和服务器传输命令的,另一个是数据传送的连接.FTP服务程序一般会支持两种不同的模式,一种是Po ...

  3. Linux下如何创建新用户

    Linux下如何创建新用户 Linux系统中,只有root用户有创建其他用户的权限.创建过程如下:   useradd -d /home/newuser newuser(设定了该用户的主目录和用户名) ...

  4. Linux下基于LDAP统一用户认证的研究

    Linux下基于LDAP统一用户认证的研究                   本文出自 "李晨光原创技术博客" 博客,谢绝转载!

  5. Linux实战教学笔记14:用户管理初级(下)

    第十四节 用户管理初级(下) 标签(空格分隔): Linux实战教学笔记-陈思齐 ---更多资料点我查看 1,用户查询相关命令id,finger,users,w,who,last,lastlog,gr ...

  6. Linux实战教学笔记15:用户管理初级(下)

    第十四节 用户管理初级(下) 标签(空格分隔): Linux实战教学笔记-陈思齐 ---更多资料点我查看 1,用户查询相关命令id,finger,users,w,who,last,lastlog,gr ...

  7. 细说Linux下软件包的安装与管理

    一 源码安装方式      由于linux操作系统开放源代码,因而在其上安装的软件大部分也都是开源软件,例如apache.tomcat.php等软件.开源软件基本都提供源码下载,源码安装的方式:源码安 ...

  8. Linux下vsftp服务器—上传、下载

    一.  FTP 说明 Linux下常用的FTP Server是vsftp(Very Security File Transfer Protocol),及profpt(Professtional ftp ...

  9. Linux运维六:用户管理及用户权限设置

    Linux 系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统.用户的账号一方面可以帮助系统管理员对使用系统的用户进行 ...

随机推荐

  1. Android带弹性的View

    在Android开发中ListView.ScrollView用到的频率相当高,可是一个优秀的应用我们能看到它里面的效果绝对不会那么死板,安卓原生的ListView和ScrollView都不能满足这个要 ...

  2. c# 结构 struct

    结构是使用 struct 关键字定义的,与类相似,都表示可以包含数据成员和函数成员的数据结构. 一般情况下,我们很少使用结构,而且很多人也并不建议使用结构,但作为.NET Framework 一般型別 ...

  3. GoldenGate 应用系统升级

    (仅复制DML时)源端和目标端数据库增减复制表 增加复制表 在GoldenGate的进程参数中,如果通过*来匹配所有表,因此只要符合*所匹配的条件,那么只要在源端建立了表之后GoldenGate就能自 ...

  4. 运维派 企业面试题3 为上题中的 "十个随机字母_test.html" 文件 更名

    Linux运维必会的实战编程笔试题(19题) 企业面试题3 #将试题2中创建的文件名uopiyhgawe_test.html# test-->修改为omg,html-->HTML 方法一: ...

  5. python 自动广播机制 (broadcasting)

    一定要注意,执行 broadcast 的前提在于,两个 ndarray 执行的是 element-wise(按位加,按位减) 的运算,而不是矩阵乘法的运算,矩阵乘法运算时需要维度之间严格匹配.(且矩阵 ...

  6. dd---复制文件并对原文件的内容进行转换和格式化处理

    dd命令用于复制文件并对原文件的内容进行转换和格式化处理.dd命令功能很强大的,对于一些比较底层的问题,使用dd命令往往可以得到出人意料的效果.用的比较多的还是用dd来备份裸设备.但是不推荐,如果需要 ...

  7. spring mvc 防止重复提交表单的两种方法,推荐第二种

    第一种方法:判断session中保存的token 比较麻烦,每次在提交表单时都必须传入上次的token.而且当一个页面使用ajax时,多个表单提交就会有问题. 注解Token代码: package c ...

  8. 动态限制EdiText仅仅能输入特定字符

    怎样设置EditText,使得仅仅能输入数字或者某些字母呢? 一.设置EditText,仅仅输入数字: 方法1:直接生成DigitsKeyListener对象就能够了. et_1.setKeyList ...

  9. HDU 4714 Tree2cycle(树型DP)

    解题思路: 将一棵树变成一个环.假设一个结点的分叉数目大于等于2.则将它与父节点断开.而且断开子结点数目sum - 2条边,并再次连接sum-2个儿子形成一条直链然后这条游离链与还有一条游离链相连,共 ...

  10. 百度LBS开放平台个性化地图 制作一款独一无二的地图

    百度LBS开放平台个性化地图  制作一款独一无二的地图 天天用百度地图的亲们是否已不再满足仅仅看例如以下的地图样式了呢? 默认百度地图样式 是否特别渴望看特别不一样的地图呢.如带京城81号气息的午夜蓝 ...