嘤井智樹 阅读:147次 时间:2025-03-05 08:03:34配置这个虚拟用户的原因:如我要创建一个dd,com的网站,我就会在/web/目录下创建一个dd,com的目录,WEB服务器已经自动设置好解析,同时,我需要有一个对应的ftp账号来管理这个网站,但是我不希望使用系统账号,一来网站多了,系统账号必然多,二来我不希望管理网站的账号能通过ssh登陆,虽然ssh也可以配置哪些账号不允许登陆,但是不创建系统账号显然是最安全的做法,基于以上原因就有了我们要配置mysql+ ftp + pam 的原因,以下内容是由微蓝经验网用户发布Linux下mysql+ftp+pam 的添加虚拟用户配置详解,心得分享,希望对于用户有一定帮助,为朋友进行解决疑惑,如若想了解更多相关内容,可以向底部移动了解更多与本教程文章相关解决经验方法!
需要安装 mysql-server mysql-devel vsftpd;主安装包 pam_mysql-0.7RC1.tar.gz
首先我们解压缩进行编译安装MySQL,需要安装的软件mysql-server mysql-devel vsftpd
# tar zxvf pam_mysql-0,7RC1,tar,gz #解压
# cd pam_mysql-0,7RC1 #进入解压后的目录,# ,/configure --with-openssl #进行编译前的配置
# make #编译服务器程序
# make install #安装以以编译完成的程序
配置mysql
# cd /usr/lib/security/
# cp pam_mysql,so /lib/security/ #拷贝pam和mysql连接的库文件到/lib/security/下,或者lib64
# service mysqld start 启动服务
在mysql里面创建数据库、表以及在表里面插入用户名和密码,# mysqladmin -u root -p password test 为管理员更改密码
注意:——>下面在提示输入密码则回车,因为之前没有设置密码,# mysql -u root -p 登录mysql
create database chen; #注意结束的时候在命令后面加分号,use chen; #进入刚刚创建好的数据库里面去,create table jun (id int not null primary key auto_increment,name nvarchar(30),passwd nvarchar(20)); #创建一个表格叫jun的,并在里面插入两列,name和passwd
insert into jun values ('','user1','123');
insert into jun values ('','user2','123');
insert into jun values ('','user3','123'); #插入三个用户,可以用:show databases; #查看数据库是否创建正确,:show tables; #查看表格是否创建正确,:select * from jun; #查看用户插入是否正确。
授予virtual只能读chen数据库的jun表,grant select on chen,jun to virtual@localhost identified by '123';
flush privileges; 刷新表
验证刚刚才的操作是否成功:
mysql -u virtual -p123 chen
select * from jun; #可以看到刚刚插入的用户名。
建立虚拟用户所需的pam配置文件,vi /etc/pam,d/vsftpd,vu
auth required pam_mysql,so user=virtual passwd=123 host=localhost db=chen table=jun usercolumn=name passwdcolumn=passwd crypt=0
account required pam_mysql,so user=virtual passwd=123 host=localhost db=chen table=jun usercolumn=name passwdcolumn=passwd crypt=0
以上是配置文件需要自己创建,而且这是两行内容,不可分开写。
配置FTP的配置文件建立与Mysql数据库的连接,vim /etc/vsftpd/vsftpd,conf文件
在里面添加:
guest_enable=YES
guest_username=virtual
pam_service_name=vsftpd,vu
user_config_dir=/etc/vsftpd_user_conf
配置用户单独的配置文件
# mkdir /etc/vsftpd_user_conf 创建用户单独配置文件的目录,# touch use1 user2 use3
# vim user1创建与用户同名的文件在文件里面写入:local_root=/ftp/user1 指定用户的登录目录,# mkdir user1 user2和user3同上
注意:/ftp/user1 和 mkdir user1 的user1 是同一个下载目录
创建用户virtual修改权限:
# useradd virtual
# chown virtual,virtual /home/virtual
# chmod 700 /home/virtual
创建用户登录目录并修改所属用户和组,# mkdir -p /ftp/user1
# mkdir -p /ftp/user2
# mkdir -p /ftp/user3
# chown -R virtual,virtual /ftp
测试: lftp 192,168,2,95 -u user1 -p123
当显示的内容是user1目录中的文件,那么我们的配置就成功了,好了,熬夜写完了,希望对大家有帮助,更多分享欢迎大家关注我的帐号,未完待续哦,,。
创建用户目录的位置一定要正确,以上经验结束,与Linux下mysql+ftp+pam 的添加虚拟用户配置详解,心得分享,有关的经验教程内容,若解决问题请点击“有用”,没有解决请向下浏览“相关”内容或点击“无用”平台积极改进优质原创的内容文章,点击下方工具分享给更多的朋友吧!
声明 未经许可,请勿转载。
© 2025 VLPOS.com 版权所有 微蓝网 ICP备案号:黑ICP备20003952号-1