快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

vsftpd的基于pam_mysql的虚拟用户机制实现数据传输

vsftpd基于MySQL服务实现:

站在用户的角度思考问题,与客户深入沟通,找到蓬安网站设计与蓬安网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:网站建设、成都网站建设、企业官网、英文网站、手机端网站、网站推广、申请域名、网页空间、企业邮箱。业务覆盖蓬安地区。

   查看是maradb中是否有pam-mysql,在目录/lib64/security/下。

   没有就编译安装pam-mysql

   步骤:

    1. # yum -y  groupinstall  "Development Tools" "Server Platform Development"

    2. # yum -y install pam-devel openssl-devel mariadb-devel mariadb-server

      

    3. # ./configure --with-mysql=/usr --with-openssl=/usr --with-pam=/usr --with-pam-mods-dir=/lib64/security

      注:可使用./configure -help查看配置指令

      # make && make install

    4. 之后在mysql数据库中创建数据库、表,在表中定义三个字段id,name,passwd。 授权等一系列操作

       在此步骤中需要创建以下内容:

       连上数据库:开启mariadb服务之后使用mysql命令

       a、CREATE DATABASE vsftpd;##创建数据库

       b、use vsftpd;#切换至数据库中

       c、CREATE TABLE users (id int AUTO_INCREMENT NOT NULL PRIMARY KEY,name char(30) NOT NULL,password char(48) binary NOT NULL );##创建表

       d、INSERT INTO users(name,password) VALUES ('tom',password('mageedu'));##创建一个用户

       e、INSERT INTO users(name,password) VALUES ('jerry',password('mageedu'));##创建一个用户

       f、SELECT * FROM users;##查看表

       g、GRANT select ON vsftpd.* TO vsftpd@’127.0.0.1‘ IDENTIFIED BY 'mageedu';##授权用户

       h、FLUSH PRIVILEGES;

        退出,可以再次连接数据库,检查是否创建数据库和表及表的内容是否成功。

   5. pam配置文件;在目录/etc/pam.d/下有个vsftpd,但在使用时要重新创建配置文件,在/etc/pam.d/目录下创建 vsftpd.mysql  在里面添加下面内容:(注意下面的内容都是在上一步当中的数据库中添加创建过的)

      auth required pam_mysql.so user=vsftpd passwd=mageedu host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2(加密方式类型)

      

      account required pam_mysql.so user=vsftpd passwd=mageedu host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2

    6.创建用户:useradd -s /sbin/nologin -d /ftproot vuser

       chmod go+rx /ftproot/

       配置文件:在配置文件/etc/vsftpd/vsftpd.conf中添加pam_service_name=vsftpd.mysql

                gusest_enable=YES

                gusest_username=vuser

                在此同时确保上面的配置正确。

    7.这时使用另一台主机尝试是否可以成功登陆。

       可以修改配置文件玩玩查看上传等功能。

    8.如果只允许其中一个用户上传,则可以通过以下方法:

      a、首先将主配置文件中的上传功能注释了

      b、创建一个用户的专一配置文件目录/etc/vsftpd/vusers.conf.d在此目录下vim tom 在tom文件中添加anon_upload_enable=YES

      vim jerry 在此文件中添加anon_upload_enable=NO

      c、此时在主配置文件中要明确告诉vsftpd要使用用户配置目录,则在主配置文件中添加user_config_dir=/etc/vsftpd/vusers.conf.d/

      d、重启服务


文章名称:vsftpd的基于pam_mysql的虚拟用户机制实现数据传输
当前地址:http://6mz.cn/article/ggisde.html

其他资讯