Linux 学习 15
Posted zhopper
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux 学习 15相关的知识,希望对你有一定的参考价值。
1、部署分离的LAMP,部署到二台服务器上,php加载xcache模块
环境:centos7-01 192.168.30.7 (httpd php56 xcache)
centos7-02 192.168.30.17 (mariadb-server)
centos7-01:
导入php56的yum 源:
wget https://mirrors.tuna.tsinghua.edu.cn/remi/enterprise/remi-release-7.rpm
yum install -y remi-release-7.rpm
安装httpd php56 和依赖包
yum install httpd php56-php php56-php-mysqlnd gcc php56-php-devel
编译安装xcache:
tar xf xcache-3.2.0.tar.gz
cd xcache-3.2.0/
./configure --enable-xcache --with-php-config=/opt/remi/php56/root/usr/bin/php-config
make && make install
启动httpd服务
systemctl enable --now httpd
php 测试页:
vim /var/www/html/test.php
<?
phpinfo();
?>
打开测试页面:
数据库安装:
centos7-02:
yum install maria mariadb-server
创建用户:
grant all privileges on *.* to testuser@\'192.168.30.7\' identified by \'123456\';
centos7-01:
php 连接 mariadb 测试:
vim /var/www/html/dbtest.php
<?php
$conn = mysql_connect(\'192.168.30.17\',\'testuser\',\'123456\');
if ($conn)
echo "successfully";
else
echo "failure";
mysql_close();
?>
2、部署wordpress论坛,并实现正常访问登录论坛。
现有环境LAMP 数据库独立
下载wordpress,并解压到/var/www/html
wget https://wordpress.org/latest.tar.gz
tar xf latest.tar.gz -C /var/www/html/
chown -R apache.apache /var/www/html/wordpress 将所有文件直接放入html中,这样访问时不用加后缀
数据库设置:
create database wordpress;
grant all privileges on wordpress.* to wordpress@\'192.168.30.%\' identified by \'123456\';
访问:http://192.168.30.7/wordpress , 根据向导填写相关信息
3、收集apache访问日志,并实现图形化展示
使用loganalyzer 做界面展示
环境:centos8-01 192.168.30.8
安装httpd,php
yum install -y httpd php php-xml php-gd
下载并解压loganalyzer,复制src的内容 到/var/www/html/log/
cp -a src/ /var/www/html/log/
创建配置文件:
cd /var/www/html/log/
touch config.php
chmod 666 config.php
浏览器访问:http://192.168.30.8/log
点击 here ,然后默认next 直到数据源界面
日志文件选择httpd的日志文件/var/log/httpd/access_log,但是默认用户权限是root,需要给apache 用户授权:
setfacl -m u:apache:rwx /var/log/httpd/
4、实现基于MYSQL验证的vsftpd虚拟用户访问
环境:centos7-01 192.168.30.7 vsftpd server
centos8-01 192.168.30.18 mariadb server
通过pam_mysql进行认证,并将创建的用户映射成Linux 操作系统用户访问磁盘文件
数据库安装和相关准备:
centos8-01:
创建vsftpd 使用的数据库和表,存放虚拟用户
create database vsftpd;
use vsftpd;
create table users(
id int auto_increment not null primary key,
name char(50) binary not null, binary 表示大小写敏感
password char(48) binary not null
);
新建虚拟用户
insert into users(name,password) values(\'user01\',password(\'123\'));
insert into users(name,password) values(\'user02\',password(\'123456\'));
使用password()函数将密码加密
创建vsftpd连接数据库时的用户名,授权select权限即可
grant select on vsftpd.* to vsftpd@\'192.168.30.7\' identified by \'123456\';
安装vsftpd,编译安装pam_mysql
centos7-01:
安装vsftpd和依赖包:
yum install -y vsftpd gcc gcc-c++ make pam-devel mariadb-devel
下载pam_mysql包并编译安装:
wget http://prdownloads.sourceforge.net/pam-mysql/pam_mysql-0.7RC1.tar.gz
tar xf pam_mysql-0.7RC1.tar.gz
cd pam_mysql/
./configure --with-pam-mods-dir=/lib64/security
make install
建立pam认证文件:
vim /etc/pam.d/vsftpd.mysql
auth required pam_mysql.so user=vsftpd passwd=123456 host=192.168.30.18 db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2
account required pam_mysql.so user=vsftpd passwd=123456 host=192.168.30.18 db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2
这里指定数据库地址,连接数据库的用户名,密码,认证的数据库名,表,列的字段,加密方式
在vsftpd 中更改配置文件,映射成linux操作系统的用户,因此用必须提前存在
useradd -s /sbin/nologin -d /data/ftproot -r ftpuser
centos7 需要去除ftp根目录的写权限,否则无法登录
mkdir /data/ftproot/upload
setfacl -m u:ftpuser:rwx /data/ftproot/upload 这里除了vsftpd配置文件中的允许写入以外,还要对本身的文件夹做权限放开,否则无法上传文件
更改vsftpd的配置文件,指定通过mysql认证
vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES
guest_enable=YES
guest_username=ftpuser
pam_service_name=vsftpd.mysql
重启vsftp服务
systemctl restart vsftpd
测试:
5、通过NFS实现服务器/www共享访问
环境:centos8-02 192.168.30.18 nfs 服务器
centsos7-01 192.168.30.7 nfs 客户端
centos8-02:
安装nfs-utils:
yum install -y nfs-utils
systemctl start nfs-server
创建共享目录:
mkdir /www
设置目录共享:
vim /etc/exports,添加如下内容
/www *(rw) * 代表所有主机都可访问,rw表示对该目录可读可写
更改文件夹本身的权限:
chmod 777 /www
查看共享:
exportfs -v
生效nfs配置文件命令:
exportfs -r
centos7-01:
客户端查看nfs服务器的共享
showmount -e 192.168.30.18
挂载nfs共享的文件夹:
mount 192.168.30.18:/www /mnt/nfs/
挂载成功后,在文件夹内创建文件,可以发现,文件的主组都是nobody
新建文件的所属主和组更改成统一的帐号
vim /etc/exports
/www *(rw,anonuid=993,anongid=991) id 和 gid的用户需要提前存在
这样创建的文件会根据ID映射成相应的用户
6、配置samba共享,实现/www目录共享
环境:centos8-01 192.168.30.8 samba服务器
centos7-01 192.168.30.7 samba客户端
centos8-01:
安装samba 软件:
yum install -y samba samba-client cifs-utils
创建共享目录:
mkdir /www
设置共享目录:
vim /etc/samba/smb.conf ,在最下面手动添加如下:
[www]
path = /www
vaild users = user01,user02
writeable = Yes
browseable = Yes
创建连接samba服务器的用户名密码:
首先需要创建linux帐号,再将其转换成samba 用户名
useradd -s /sbin/nologin -r user01
转换smb 用户
smbpasswd -a user01 ,回车后会设置密码
cenos7-01:
客户端查看共享:
smbclient -L 192.168.30.8 -U user01
客户端连接共享:
smbclient //192.168.30.8/www -U user01
此状态只可以看,不可以上传,需要再对/www本身权限做授权:
setfacl -m u:user01:rwx /www
以上是关于Linux 学习 15的主要内容,如果未能解决你的问题,请参考以下文章