白小姐资料,白小姐开奖结果,白小姐输尽光,www.3444123.com,www.772773a.com

您的位置:主页 > 白小姐资料 >

vsftpd虚拟用户配置:PgSQL+FreeD

发布日期:2019-10-07 20:37   来源:未知   阅读:

  •   如果你已经对pam有所了解,请跳过,我知道的可能还不如你多。你不感兴趣也请跳过,因为不看这个也可配置。

      vsftpd用了一种很聪明同时也是unix/linux规范的方法来认证用户,就是PAM。大家对于PAM,也许有些陌生,但是一直在用。所谓PAM,英文是:Pluggable Authentication Modules,可拔插认证模块(不知道这样翻译对不对)。看见plug这个关键字,就知道是很灵活的。

      现在几乎所有daemon程序一般都是用PAM来进行认证的,包括telnet/sshd/imapd,甚至你的login,都是用PAM。在fbsd 4上的朋友,圆通快递单号查询 圆通快递查询你可以打

      PAM的最大好处是灵活。它不管你的用户和密码用什么数据格式存储(数据库也好,通常用的密码文件也好),只要有相应的PAM模块就可以存储。比如说,大家不仅可以用vsftpd + PgSQL做用户登陆验证,只要你喜欢你还可以用MySQL,Oracle,LDAP数据库存储用户数据,只要有相应的PAM就可以。所有的daemon都可以用一个后台数据库来做用户验证登陆,包括telnet/sshd等等。

      本文不打算详细叙述PAM的配置。PAM的配置不是很难,毕竟,只是要你配置一些参数,不是叫你开发一个pam模块出来。而且本文的篇幅所限,偶刚刚知道的一点东西希望能够起到抛砖引玉的作用。等偶对pam再玩得深入和熟一点的时候,再写一篇关于深入一点关于pam的东东?

      我都是使用port来安装的,请大家用port/package来安装,不要自己下载源码来编译,否则可能根据本文的方法可能无法正常使用。其中vsftpd和pam-pgsql一定要用port/package来安装。

      简单提提用port来装PostgreSQL的过程,因为BSD版上的装PgSQL的方法都是自己下载源码编译的。我是用port来编译安装,因为这是fbsd推荐的安装方法,而且安装的软件会根据bsd的hier(目录结构)来安装,比较便于管理。

      当用port来安装好PostgreSQL,默认的数据库管理用户是pgsql(port里头的安装程序自动添加的),其他系统默认的是postgres。www.33354.com,初始化PostgreSQL的程序如下:

      更多详细的帮助,请看freebsddiary上面的一篇用port来安装PostgreSQL的文章,全英文。

      我是PgSQL的初学者,命令行用得不熟,因而要借助phpPgAdmin来管理数据库。

      2、建立一个数据表叫做ftp,用来存储用户名和帐号。这个数据表的结构是pam_pgsql模块规定的最简单的表了,每一个字段都是必须的,你可以扩展这个表的结构,但是不要删除这些字段。我导出了一个SQL脚本,方便大家创建。

      这是我的ftp表,这些记录名字都是随便起的。但请注意只有expired为f(假)的可以成功登陆。

      3、创建一个pgsql用户叫做pamusr,密码也是pamusr。赋予pamusr对于ftp表的select权限,注意select就够了。pam_pgsql只是读数据表,而不是修改它。你也可以用其他用户,比如管理PgSQL的pgsql/postgres用户,但是从安全角度着想,建一个专门提供给pam_pgsql的弱权限的用户更好!

      数据库,数据表,用户名都不必跟我一样,pam_pgsql没有规定,但是这些设定,必须跟pam_pgsql的配置文件/etc/pam_pgsql.conf的一致。

      这个不需要,默认是本地连接的。如果要连接远程服务器,请设置你的IP,并且去掉#

      5-current上尝试过配置,但总不成功,无论是pam_pgsql还是pam_mysql,总是提示说找不到这些pam。google了一下,发现这个错误好像是fbsd

      建立一个文件:/etc/pam.d/vsftpd。注意,该文件就是pam服务的名称

      #我们刚才增加的本地用户,虚拟用户将会享有这个名为virtual本地用户的权限。

      这个就是我在pam.conf里头设置的pam服务的名称,没有这一项,vsftpd是用名为ftp的pam服务。