部署LAMP环境

红帽9搭建LAMP

  1. 安装Apache

   2.安装数据库服务

   3.安装php

    (1)使用IP访问/phpinfo.php

   4.安装phpMyAdmin

  (1)数据库端口改为学号后五位
  (2)登录phpmyadmin

  5.SSH增加一个端口10022,fttp增加两个端口10080和8080

  (1)修改防火墙规则用端口登录myadmin(只允许10080端口访问myadmin)

什么是LAMP?

LAMP 是一种常用于 web 开发的软件堆栈的缩写,它代表了 Linux(操作系统)、Apache(HTTP 服务器)、MySQL(数据库管理系统)和 PHP(编程语言)。这种组合因其高效、开源和免费的特点而广受欢迎,常用于搭建动态网站和 web 应用程序。

下面是 LAMP 堆栈中每个组件的简要说明:

Linux:Linux 是一个开源的操作系统,广泛应用于服务器环境。它提供了稳定、高效和安全的运行环境,是 web 服务器的基础。

Apache:Apache 是一个开源的 HTTP 服务器,用于处理 web 请求并返回 web 页面。它提供了丰富的功能和模块,支持各种 web 技术和标准。

MySQL:MySQL 是一个开源的关系型数据库管理系统,用于存储和管理网站的数据。它提供了高效的数据存储和查询功能,是 web 应用程序中不可或缺的部分。

PHP:PHP 是一种通用的脚本语言,尤其适合 web 开发。它可以嵌入到 HTML 中,用于生成动态页面和与数据库进行交互。PHP 的易用性和强大的功能使其成为 web 开发的流行选择。

LAMP 堆栈的流行部分归功于其开源和免费的特点,这使得用户可以轻松地获取、使用和定制这些软件。此外,LAMP 堆栈中的每个组件都经过了广泛的测试和验证,具有高度的稳定性和可靠性。

在搭建 LAMP 堆栈时,用户需要分别安装和配置这些组件。具体的安装和配置方法因 Linux 发行版和版本的不同而有所差异。一般来说,用户可以通过包管理器(如 apt、yum 等)来安装这些软件,并通过配置文件来设置它们的行为和参数。

总之,LAMP 是一种强大的 web 开发工具集,它提供了稳定、高效和可靠的运行环境,是搭建动态网站和 web 应用程序的常用选择。

环境准备

(ip为10.0.0.99的虚拟机为主机,然后分别克隆两台ip为10.0.0.119的客户机和ip为10.0.0.219的测试机;主机需安装Apache和PHP,客户机需安装Mysql,且三台虚拟机都能进行远程连接即开启SSH服务)

主机名及IP

主机名

        IP地址

wwg2(主机)

10.0.0.99

 wwg2(客户机)

10.0.0.119

wwg2(测试机)

10.0.0.219

 

 

安装Apache(主机内进行ip为10.0.0.99)

Apache:开放源码的网页服务器,跨平台、安全、流行,支持众多网站运行。

输入命令“yum install http”安装Apache,complete表示安装成功。

yum install http

安装成功后启动Apache,查看Apache是否为开启状态。running表示启动成功。启动成功后,输人命令行:systemctl enable httpd设置apache服务开机自启。

systemctl enable httpd

 

安装数据库服务(客户机内进行ip为10.0.0.119)

输入命令行:yum install mariadb-server mariadb安装mariadb(MariaDB是MySQL的开源分支,提供高性能、高可靠性,兼容MySQL且易于迁移。),安装完成后启动数据库服务。

yum install mariadb-server mariadb

启动成功后,输入命令“mysql_secure_installation”设置数据库密码。

还没密码直接回车,输入两次yH后设置数据库密码,用于后续登录。

mysql_secure_installation

选择是否删除匿名用户账户。

选择是否禁用远程登录。

选择是否删除测试数据库。

输入y重新加载权限表,保存更改。

完成设置后查看mariadb状态,running为服务开启。

输入命令行:systemctl enable mariadb设置mariadb开机自启。

systemctl enable mariadb

安装PHP(主机内进行ip为10.0.0.99)

PHP是开源的服务器端脚本语言,适用于Web开发,简单易学且功能强大。

输入命令行:yum install php安装php

输入命令行:yum install php-mysqli安装mysqli

yum install php
yum install php-mysqli

 

安装完毕后,重新启动Apache服务。

输入命令行:vim /var/www/html/phpinfo.php将以下代码复制到新创建的文件中保存并退出。关闭防火墙和守护进程。

vim /var/www/html/phpinfo.php

 

在测试机(ip为10.0.0.219)的浏览器内输入主机ip:10.0.0.99/phpinfo.php

成功安装便会出现以下界面。

安装phpMyAdmin(主机内进行ip为10.0.0.99)

phpMyAdmin是MySQL的Web管理工具,界面直观,易于管理数据库

输入命令行:yum install php-mbstring php-xml -y安装依赖包。

yum install php-mbstring php-xml -y

安装完成后重启Apache和php-ftp服务。

重启后切换cd /var/www/html切换到网页目录,下载phpmyadmin安装包。Wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz

Wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz

 

下载完成后输入命令行:mkdir phpMyAdmin && tar -xvzf phpMyAdmin-latest-all-languages.tar.gz -C phpMyAdmin --strip-components 1 解压文件。解压完成后重启Apache和php-fpm服务。

mkdir phpMyAdmin && tar -xvzf phpMyAdmin-latest-all-languages.tar.gz -C phpMyAdmin --strip-components 1

切换到测试机(ip为10.0.0.119)

输入命令行: vim /etc/my.cnf.d/mariadb-server.cnf修改数据库端口文件,修改端口为学号后五位30317。重启mariadb服务后输入命令“netstat -lntp”查看端口是否修改成功。

vim /etc/my.cnf.d/mariadb-server.cnf

 

输入命令行:mysql -u root -p 创建用户及密码CREATE USER root'@ 10.0.0.99 IDENTIFIED BY 123456';#此处为主机ip

GRANT ALL PRIVILEGES ON *.* TO root@ % IDENTIFIED BY 123456' WITH GRANT OPTION;

flush privileges;(刷新使之生效)

SELECT user,host FROM mysql.user ;(查看所创建用户)

完成后exit退出

输入命令行:mysql -u root -p 创建用户及密码CREATE USER ‘root'@ ‘10.0.0.99’ IDENTIFIED BY ‘123456';#此处为主机ip

GRANT ALL PRIVILEGES ON *.* TO ‘root’@ ‘%’ IDENTIFIED BY ‘123456' WITH GRANT OPTION;

flush privileges;(刷新使之生效)

SELECT user,host FROM mysql.user ;(查看所创建用户)

完成后exit退出

退出后需输入命令“systemctl restart mariadb”重启数据库。

systemctl restart mariadb

修改成功后回到到主机(ip为10.0.0.99),从/var/www/html目录切换到phpMyAdmin目录,查看当前命令下的文件输入命令 cp config.sample.inc.php config.inc.php 文件config.sample.inc.php 复制到文件config.inc.php

cp config.sample.inc.php config.inc.php 

编辑config.inc.php文件

 

关闭防火墙和守护进程后重启apache和php-fpm服务。

在测试机(ip为10.0.0.219)的浏览器内输入主机ip:10.0.0.99/phpMyAdmin/index.php登录phpmyadmin用户密码为数据库所创用户及密码。成功登录phpmyadmin。

 

SSH增加一个端口10022,fttp增加两个端口10080和8080

编辑/etc/ssh/sshd_config文件,在ssh中增加10022端口,重启ssh服务后查看是否成功增加10022端口。

 

 

编辑vi /etc/httpd/conf/httpd.conf文件在http中增加10080和8080的端口,重启http服务后查看是否成功增加10080和8080的端口。

 

开启防火墙,查看防火墙状态后输入命令行:sysystemctl firewall-cmd --zone=public --add-service=https --permanent

firewall-cmd --reload

firewall-cmd --zone=public --add-service=http --permanent

这个命令在public区域(zone)中永久添加http服务。这意味着,当firewalld启动时,或者你重新加载防火墙规则时,它会允许http(通常是80端口)的流量通过。

--zone=public 指定了要配置的区域,public是默认的区域。

--add-service=http 告诉firewalld要添加http服务。

--permanent 表示这是一个永久性的更改,但注意,它不会立即生效,除非你重新加载或重启firewalld。

firewall-cmd --zone=public --add-service=https --permanent

这个命令与上一个类似,但它添加的是https服务(通常是443端口)。

这意味着防火墙将允许https的流量通过。

firewall-cmd --reload

这个命令重新加载firewalld的配置。这意味着,任何你之前用--permanent标志做的更改现在都会生效。

重新加载与重启firewalld不同。重启会中断所有当前的连接,而重新加载则不会。

开启防火墙,查看防火墙状态后输入命令行:sysystemctl firewall-cmd --zone=public --add-service=https --permanent

firewall-cmd --reload



firewall-cmd --zone=public --add-service=http --permanent

这个命令在public区域(zone)中永久添加http服务。这意味着,当firewalld启动时,或者你重新加载防火墙规则时,它会允许http(通常是80端口)的流量通过。

--zone=public 指定了要配置的区域,public是默认的区域。

--add-service=http 告诉firewalld要添加http服务。

--permanent 表示这是一个永久性的更改,但注意,它不会立即生效,除非你重新加载或重启firewalld。

firewall-cmd --zone=public --add-service=https --permanent

这个命令与上一个类似,但它添加的是https服务(通常是443端口)。

这意味着防火墙将允许https的流量通过。

firewall-cmd --reload

这个命令重新加载firewalld的配置。这意味着,任何你之前用--permanent标志做的更改现在都会生效。

重新加载与重启firewalld不同。重启会中断所有当前的连接,而重新加载则不会。

出现三个success后即操作成功。

输入命令行:firewall-cmd --zone=public --add-port=10080/tcp --permanent

firewall-cmd --zone=public --add-port=8080/tcp --permanent

firewall-cmd --reload

firewall-cmd --zone=public --add-port=10080/tcp --permanent

firewall-cmd --zone=public --add-port=8080/tcp --permanent

firewall-cmd --reload

在 public 区域中永久添加一个 TCP 端口规则,允许流量通过 TCP 协议的 10080 和8080的端口。重新加载防火墙配置后查看监听的端口发现为8080和10080还有80(本来就存在)

 

 

Firefox搜索界面。在地址栏输入about:config并回车。警告页面会告诉您修改这些设置可能会有风险,点击“我接受风险!”按钮继续。在搜索框中输入network.security.ports.banned.override。选择“切换”设置,输入10080到其值字段中。重启Firefox浏览器。10.0.0.99:10080/phpMyAdmin/index.php发现成功登录到myadmin。

此时三个端口都可进入phpmyadmin

v

此时打开主机(ip为10.0.99),输入命令行:firewall-cmd --zone=public --remove-port=8080/tcp --permanent永久移除对TCP端口8080的访问权限。重新加载防火墙配置后查看可访问防火墙的端口发现只有80和10080的端口了,此时再次打开火狐浏览器发现8080端口发现该端口已不可访问phpmyadmin。

firewall-cmd --zone=public --remove-port=8080/tcp --permanent

或者

在客户机(ip为10.0.0.119)中输入命令行: firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="10.0.0.99" port protocol="tcp" port="30317" accept允许从 IP 地址 10.0.0.99 发送的 TCP 流量(目标端口为 30317)通过防火墙。'后重启防火墙

 firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="10.0.0.99" port protocol="tcp" port="30317" accept

输入命令行:firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="10.0.0.219" port protocol="tcp" port="10080" accept'允许从 IP 地址 10.0.0.219 发送的 TCP 流量(目标端口为 10080)通过防火墙

firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="10.0.0.219" port protocol="tcp" port="10080" accept

输入命令行:firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="10.0.0.219" port protocol="tcp" port="80" reject'在 public 区域中,拒绝来自 IP 地址 10.0.0.219 的 TCP 流量到端口 80重启防火墙后输入命令“ sudo firewall-cmd --zone=public --list-rich-rules查询 Firewalld 中 public 区域的所有富规则(rich rules)。

firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="10.0.0.219" port protocol="tcp" port="80" reject'
 sudo firewall-cmd --zone=public --list-rich-rules

打开测试机(ip为10.0.0.219)输入10.0.0.99:80/phpMyAdmin/index.php发现找不到网页,可知在 public 区域中,拒绝来自 IP 地址 10.0.0.219 的 TCP 流量到端口 8080端口不允许访问防火墙。

通过本次实验,我能够掌握在Linux系统中搭建LAMP环境的基本步骤和要点。同时,我也了解到Web应用的基本架构和工作原理,以及如何在Linux系统中进行基本的服务器管理和配置。在实验过程中遇到的问题和解决方法也将成为我宝贵的经验,有助于我在未来的Web开发工作中更加得心应手。

在搭建LAMP环境时,需要注意以下几点:

确保系统的安全性:在安装和配置过程中,要注意设置合理的安全策略,如防火墙规则、数据库用户权限等,以防止恶意攻击和数据泄露。

选择合适的版本和配置:在选择Linux发行版、Apache服务器、MySQL数据库和PHP解释器的版本时,要根据实际需求和项目要求来选择。同时,也要根据实际需求来配置这些组件的参数和选项。

备份重要数据:在搭建和测试过程中,要定期备份重要的数据和配置文件,以防止意外丢失或损坏。

持续学习和更新:Web开发是一个不断发展的领域,新的技术和工具不断涌现。因此,作为Web开发者,要保持持续学习和更新的态度,不断提高自己的技能和能力。

大学生课程作业点赞加关注谢谢!

  • 29
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值