Linux下VsFTP和ProFTP用户管理高级技巧 之一

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://chenguang.blog.51cto.com/350944/217853

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://os.51cto.com/art/200910/158830.htm

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

时间: 2024-11-01 04:10:04

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

Linux下vsftp的重新安装和配置虚拟用户

Linux下vsftp的重新安装和配置虚拟用户 重新安装和配置虚拟用户 以下都是在root用户下进行的 #tar zxvf vsftpd-2.0.5.tar.gz --解压 #cd vsftpd-2.0.5.tar.gz --解压后进入vsftpd-2.0.5.tar.gz目录 # mkdir /usr/share/empty/ --VSFTPD默认设置需要一个空目录:/usr/share/empty # mkdir /var/ftp/ --如果容许匿名用户(anonymous),那么你将需要一

Linux下基本的查看用户和管理用户密码命令

查看用户a),查看当前登录用户 代码如下: [root@krlcgcms01 ~]# w功能说明:显示目前登入系统的用户信息. 语法:w [-fhlsuV][用户名称] 补充说明:执行这项指令可得知目前登入系统的用户有那些人,以及他们正在执行的程序.单独执行w 指令会显示所有的用户,您也可指定用户名称,仅显示某位用户的相关信息. 参数: -f 开启或关闭显示用户从何处登入系统. -h 不显示各栏位的标题信息列. -l 使用详细格式列表,此为预设值. -s 使用简洁格式列表,不显示用户登入时间,终

Linux下软件包的安装与管理详解

一 源码安装方式 由于linux操作系统开放源代码,因而在其上安装的软件大部分也都是开源软件,例如apache.tomcat.php等软件.开源软件基本都提供源码下载,源码安装的方式:源码安装的好处是用户可以自己定制软件功能,安装需要的模块,不需要的功能可以不用安装,此外,用户还可以自己选择安装路径,方便管理,卸载软件也很方便,只需删除对应的安装目录即可.没有windows所谓的注册表之说. 源码安装软件一般有以下几个步骤组成:下载解压源码.分析安装平台环境(ifconfigure).编译安装软

smem – Linux 下基于进程和用户的内存占用报告

Linux 系统的内存管理工作中,内存使用情况的监控是十分重要的,在各种 Linux 发行版上你会找到许多这种工具.它们的工作方式多种多样,在这里,我们将会介绍如何安装和使用这样的一个名为 smem 的工具软件. Smem 是一款命令行下的内存使用情况报告工具,它能够给用户提供 Linux 系统下的内存使用的多种报告.和其它传统的内存报告工具不同的是,它有个独特的功能,可以报告 PSS(按比例占用大小Proportional Set Size),这种内存使用量表示方法对于那些在虚拟内存中的应用和

在Linux下安装RPM和TAR管理软件包

RPM是一个功能十分强大的软件包管理系统,它使得Linux下的安装,升级和删除软件包的工作非常简单易行,并且还有查询,验证软件包的功能.与图形化工具相比,使用命令的方式理灵活,更强大. 下面介绍的内容 都 以 example.1.2.3-1.i386 软件包为例来介绍安装,升级,更新用查询等操作和安装使用. 1.安装.升级和更新 安装一个新的软件包. rpm -U 升级一个系统中已有的软件包,如果不存在就进行安装. rpm -F 更新一个软件包,如果软件包不存在就不进行安装. 通常这几项还往往配

Linux系统中基本的用户管理方法

  用户管理的配置文件 用户信息文件:/etc/passwd 密码文件:/etc/shadow 用户组文件:/etc/group 用户组密码文件:/etc/gshadow 用户配置文件: /etc/login.defs /etc/default/useradd 新用户信息文件:/etc/ske1 登陆信息:/etc/motd /etc/issue /etc/passwd文件格式 用户类型 Linux用户分为三种: 超级用户(root UID=0) 普通用户(UID 500-60000) 伪用户(

Linux中SFTP配置与用户管理脚本

公司需要建立一个FTP来管理客户的文件上传,为了安全性我们打算采用SFTP,并要求每个客户通过SSHKEY登陆. 或许你会说:"SFTP不需要配置啊,有SSH直接就可以用了".的确,但是我们不希望用户能够通过SSH登陆到我们的服务器上,我们希望每个客户只能通过SFTP来管理自己的文件,同时我们还想统一的来管理所有客户的目录.有了这样的需求,默认的SSH配置就不能满足了. 下面,是SFTP的配置步骤,以及我编写的一个用户管理脚本: 1.修改SFTP相关配置 $ sudo vim /etc

linux下添加删除修改用户

  一.创建用户: 1.使用命令 useradd useradd 功能说明:建立用户帐号. 语 法:useradd [-mMnr][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-s ][-u ][用户帐号] 或 useradd -D [-b][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组&

linux下安装Rancher Docker容器管理平台

Rancher Labs 公司目前有2个产品. Rancher Docker容器管理平台 RancherOS 一种适合Docker运行的Linux发行版,类似于CoreOS Rancher Docker容器管理平台 如果说原生的Docker是一个一个集装箱,Rancher可以比喻成集装箱船,平台化管控,带着应用航行. rancher 承载 docker Docker环境安装 以下是在CentOS7的环境下安装Rancher Docker官方安装方式 curl -sSL https://get.d