新之助meow

Kratos
专注于用户阅读体验的响应式博客主题
  1. 首页
  2. 未分类
  3. 正文

suse 11 sp3 x64 系统安装 vsftpd pam_mysql 配置mysql 通过数据库校验用户名密码

2016年3月26日 715点热度 0人点赞 0条评论

安装pam_mysql验证模块
直接安装编译好的模块  pam_mysql-0.7RC1.complate libmysqlclient.so

tar -xvf pam_mysql-0.7RC1.complate.tar 
cd pam_mysql-0.7RC1/
make install

复制libmysqlclient.so.15到 /usr/lib64/libmysqlclient.so.15

自己编译的话需要这几个包
pam-devel
mysql-client
libmysqlclient-devel
libopenssl-devel
zlib-devel
配置pam认证模块

cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd_orig
cat /dev/null > /etc/pam.d/vsftpd
vi /etc/pam.d/vsftpd

修改 host指向mysql所在ip

auth required /lib/security/pam_mysql.so    user=vsftpd passwd=vsftpd host=192.168.238.101 db=vsftpd table=accounts usercolumn=username passwdcolumn=pass crypt=2  verbose=1
account required /lib/security/pam_mysql.so user=vsftpd passwd=vsftpd host=192.168.238.101 db=vsftpd table=accounts usercolumn=username passwdcolumn=pass crypt=2  verbose=1

保存

mysql建库表,创建用户


CREATE DATABASE vsftpd;

CREATE TABLE `accounts` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(30) NOT NULL,
  `pass` varchar(50) NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `username` (`username`)
) ENGINE=MyISAM AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;


GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP ON vsftpd.* TO 'vsftpd'@'%' IDENTIFIED BY 'vsftpd';
FLUSH PRIVILEGES;

安装vsftpd
zapper in vsftpd

修改vsftpd配置
mv /etc/vsftpd.conf /etc/vsftpd.conf.org
cat /dev/null > /etc/vsftpd.conf
vi /etc/vsftpd.conf

listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
#这个用户设置是指vsftpd服务运行的用户默认是nobody
nopriv_user=vsftpd
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/vsftpd.pem
guest_enable=YES
#guest_username 设置这个用户可以把所有ft登陆用户创建文件和目录的所有者和组映射为指定的系统用户
guest_username=vsftpd
local_root=/home/vsftpd/$USER
user_sub_token=$USER
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd_user_conf

# Limit passive ports to this range to assis firewalling
pasv_min_port=30000
pasv_max_port=31000
保存退出

 

创建vsftpd用户
useradd --home /home/vsftpd --gid nogroup -m --shell /bin/false vsftpd

创建local_root目录
mkdir /home/vsftpd
chwon vsftpd:nogroup /home/vsftpd

创建安全目录
mkdir /var/run/vsftpd
chown vsftpd:nogroup vsftpd

创建vsftpd用户配置文件目录
mkdir /etc/vsftpd_user_conf

添加ftp管理员
单独配置管理用户的根目录和权限,此用户根目录为/home/vsftpd

vi /etc/vsftpd_user_conf/admin

anon_world_readable_only=NO
write_enable=YES
anon_upload_enable=YES
anon_other_write_enable=YES
local_root=/home/vsftpd
anon_mkdir_write_enable=YES

USE vsftpd;
INSERT INTO accounts (username, pass) VALUES('admin', PASSWORD('admin'));
quit;

添加一般用户

USE vsftpd;
INSERT INTO accounts (username, pass) VALUES('E11001', PASSWORD('E11001'));
INSERT INTO accounts (username, pass) VALUES('E10001', PASSWORD('E10001'));
quit;

创建一般用户的ftp home目录,设置目录权限
mkdir /home/vsftpd/E11001
chown vsftpd:nogroup /home/vsftpd/E11001

启动vsftp服务
service vsftpd start

如不能登录可以到 /var/log/message 日志中,查看报错原因。

如过登录正常 可以取消 /etc/pam.d/vsftpd 中的 verbose=1 减少日志输出

 

参考文章 vsftpd结合mysql实现用户验证

标签: 64位 mysql pam_mysql suse11 vsftpd x64
最后更新:2016年3月26日

tjccn_wx@hotmail.com

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

归档

  • 2026 年 10 月
  • 2024 年 2 月
  • 2023 年 7 月
  • 2023 年 1 月
  • 2022 年 10 月
  • 2022 年 9 月
  • 2022 年 6 月
  • 2022 年 4 月
  • 2022 年 3 月
  • 2022 年 2 月
  • 2021 年 11 月
  • 2021 年 10 月
  • 2021 年 9 月
  • 2021 年 1 月
  • 2020 年 12 月
  • 2020 年 11 月
  • 2020 年 10 月
  • 2020 年 9 月
  • 2020 年 7 月
  • 2020 年 6 月
  • 2020 年 5 月
  • 2020 年 4 月
  • 2020 年 3 月
  • 2020 年 2 月
  • 2019 年 10 月
  • 2019 年 8 月
  • 2019 年 7 月
  • 2019 年 4 月
  • 2019 年 3 月
  • 2018 年 12 月
  • 2018 年 11 月
  • 2018 年 10 月
  • 2018 年 6 月
  • 2018 年 5 月
  • 2018 年 4 月
  • 2018 年 3 月
  • 2018 年 2 月
  • 2018 年 1 月
  • 2017 年 12 月
  • 2017 年 11 月
  • 2017 年 10 月
  • 2017 年 9 月
  • 2017 年 8 月
  • 2017 年 7 月
  • 2017 年 6 月
  • 2017 年 5 月
  • 2017 年 4 月
  • 2017 年 3 月
  • 2017 年 2 月
  • 2017 年 1 月
  • 2016 年 12 月
  • 2016 年 11 月
  • 2016 年 10 月
  • 2016 年 9 月
  • 2016 年 8 月
  • 2016 年 7 月
  • 2016 年 6 月
  • 2016 年 5 月
  • 2016 年 4 月
  • 2016 年 3 月
  • 2015 年 12 月
  • 2015 年 8 月

分类

  • android
  • mysql
  • nethunter
  • proxmark
  • 未分类

COPYRIGHT © 2026 新之助meow. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang