lamp+pureftp实现虚拟映射登录
环境的搭建
应用环境要求:linux 5.4 lamp环境
所需软件 pure-ftpd-1.0.36.tar.gz
PureAdmin-0.3.tar.gz
lamp环境搭建:
本地yum安装:
配置本地yum服务器:
挂载本地光驱:
mount /dev/cdrom /mnt/cdrom
配置本地yum服务器
vim /etc/yum.repos.d/rhel-debuginfo.repo
本地yum安装lamp环境:
yum install httpd mysql mysql-server mysql-devel php php-mysqlphp-gd php-mbstring
启动http服务:servicehttpd start
设置http开机自起:chkconfighttpd on
启动mysql服务:servicemysqld start
为mysql创建管理员密码:mysqladmin -u root-p password '123'
配置php
vim /etc/httpd/conf/httpd.conf 391
重启服务:service httpd restart
配置pureftp的mysql用户信息:vim pureftp.sql
数据库导入
mysql -u root -p </root/pureftp/pureftp.sql
添加连接mysql用户
查看数据库
先用root登录mysql,执行
grant all privileges on ftpusers.* to ftp@localhostidentified by 'tmppasswd'; 对ftpusers内的表格实现授权
flush privileges; 刷新权限
安装pure-ftpd-1.0.36.tar.gz
[root@server pureftp]# tar -zxvfpure-ftpd-1.0.36.tar.gz -C /usr/local/src 拆解文件到指定目录
cd /usr/local/src
./configure \
--prefix=/usr/local/pureftpd \ 安装目录的位置
--with-mysql \ 与mysql结合
--with-shadow \ 支持本地账号
--with-pam \ 借助pam实现身份验证
--with-welcomemsg \ 支持欢迎消息
--with-uploadscript \
--with-cookie \ 跟踪用户
--with-virtualchroot \ 支持虚拟目录
--with-virtualhosts \ 支持虚拟主机
--with-diraliases \ 目录别名
--with-quotas \ 支持配额
--with-puredb \ 支持本地账号与虚拟账号映射
--with-sysquotas \
--with-ratios \ 支持速率限制
--with-ftpwho \
--with-throttling \
--with-language=simplified-chinese
安装 make && make install
切换到安装目录:
cd /usr/local/pureftpd/
创建配置文件存放目录 mkdir etc
创建控制文件
cd /usr/local/src/pure-ftpd-1.0.36/
cdcontrib/ 控制文件存放目录
拷贝控制文件cp redhat.init /etc/init.d/pureftpd
改变权限可执行chmod a+x/etc/init.d/pureftpd
cd /usr/local/src/pure-ftpd-1.0.36/
cd configuration-file/ 配置文件存放位置
拷贝配置文件:cp pure-ftpd.conf /usr/local/pureftpd/etc/
服务器文件:
改变权限 chmod a+x pure-config.pl
拷贝文件cppure-config.pl /usr/local/pureftpd/sbin/
配置pureftp
vim /etc/init.d/pureftpd
启动服务service pureftpd start
查看端口netstat -tupln |grep 21
安装:PureAdmin-0.3.tar.gz
cd 回到主目录
切换到软件包存放目录:cd pureftp/
拆解:tar -zxvfPureAdmin-0.3.tar.gz -C /var/www/html/
切换到拆解目录:cd /var/www/html/
更改目录名称:mv PureAdmin-0.3 pureadmin
进入到拆解目录cd pureadmin
编辑配置文件:vim config.php
重启各种服务:
service httpd restart
service mysqld restart
service pureftpd restart
浏览器测试http://192.168.30.128/pureadmin/ (主机地址依情况而定)
创建接口文件用于mysql的连接用户登录等
主目录下 cd pureftp/
cp pureftpd-mysql.conf /usr/local/pureftpd/etc/
cd /usr/local/pureftpd/etc/
vim pureftpd-mysql.conf
编辑配置文件用于调用接口文件
vim pure-ftpd.conf
创建家目录 mkdir /ftproot
创建账号指明家目录useradd -d /ftproot/ -s/sbin/nologin virtualuser
改变所属组 chown virtualuser:virtualuser /ftproot/
设置权限 chmod -R 777 /ftproot/
关联虚拟映射 /usr/local/pureftpd/bin/pure-pwuseradd user1 -u virtualuser -g virtualuser -d /ftproot/user1 �Cm
user1是用户名,-u virtualuser是其实际的linux用户,-d指定起始目录,并锁定于该目录。如果不锁定,则用-D;如果需要不同的权限,可以建立新的linux用户与组
如果用的系统自带的ftp用户,这样的话还需修改配置文件pure-ftpd.conf中的MinUID为ftp用户的UID 14,否则登录时会出现530错误;所以这里建议创建另一个非系统自带的用户做映射
建立用户数据库:
/usr/local/pureftpd/bin/pure-pwmkdb /usr/local/pureftpd/etc/pureftpd.pdb
说明:今后每添加或修改用户数据库都应该执行一次mkdb
http://192.168.30.128/pureadmin/
新建用户user2测试:
新建用户user3测试:
查看本地用户
发现并没有user2 user3 的存在。只用virtualuser用户。由此实现了虚拟映射的登录。