0x05 在Debian12.0中部署LNMP实现基础环境【base: Debian12+Nginx+MySQL+PHP+ESXI】

本文详细描述了如何在ESXi主机上安装Debian12,并通过SSH连接,配置Nginx、MySQL和PHP,形成完整的LNMP服务器环境,同时介绍了在私有云环境中的部署和相关技术细节。
摘要由CSDN通过智能技术生成

1.概要

LNMP 是一种使用 Linux、Nginx、MySQL 和 PHP 搭建的服务器环境,用于支持网站和应用程序的运行

其它内容传送门地址:

0x00 开局三层路由起内网【base:路由器+空闲物理主机(我是TP-LINK+台式机)】
0x01 在空闲物理主机上部署vSphere【base:空闲物理设备+ESXI 8.0+vCenter Server 】
0x02 在Debian12.0中部署BIND9实现主DNS服务【base:BIND9+ESXI+Debian12】
0x03 在Debian12.0中部署BIND9实现从DNS服务【base:BIND9+Debian12+vSphere】
0x04 在Debian12.0中部署NTP实现网络校时服务【base:NTP+Debian12+vSphere】
0x05 在Debian12.0中部署LNMP实现基础环境【base: Debian12+Nginx+MySQL+PHP+ESXI】
0x06 在vSphere中部署Openmediavault实现轻量NAS【base:Openmediavault+vSphere】
0x07 在vSphere中部署TrueNAS实现业务NAS ZFS【base:NTP+vSphere】
0x08 在Debian12.0中部署LDAP目录访问【base:LDAP+Debian12+vSphere】
0x09 在Debian12.0中部署SAMBA4活动目录,实现DC域控 【base:SAMBA4+Debian12+vSphere】

2.整体架构流程

  1. 准备一个终端工具(mobaxterm、xshell、windterm)。
  2. 准备Debian12系统镜像ISO。
  3. ESXI主机安装Debian12,开启SSH配置。
  4. 终终端工具连接Debian12的SSH。
  5. Debian12完成Nginx配置。
  6. Debian12完成MySQL 配置。
  7. Debian12完成PHP 配置。

3.技术细节

3.1 准备一个终端工具。

mobaxterm、xshell、windterm各有千秋,都好用。windterm全免费,但是各种密码输入界面BUG,但不影响使用。

3.2 准备Debian12系统镜像ISO。

Debian的官网:https://www.debian.org/
怎么读Debian,你可以开玩笑的喊它Dabian,当然基于Debian系列的Linux发行版可是很猛的噢。
Debian官网
点击下载,跳转页面,注意看图标注文字。
获取Debian
获取Debian页面的左边下面,找到完整安装映像。
在这里插入图片描述
点击“64位PCxxxxx”跳转到一个全英文介绍界面别慌,这些英文是教你如何安装的,直接鼠标滚动到最下面。找到最新版torrent种子文件。
在这里插入图片描述
这里我建议大家用迅雷来完成下载,国内种子P2P下载迅雷还是会快点。不过这才短短两个月,Debian12的版本都出到12.1了,我之前还是12.0呢,不过没影响,除非是大版本更新,不然子版本都没啥根本区别。下载完就可以进行下一步了。

3.3 ESXI主机安装Debian12,开启SSH配置。

通过浏览器登录你的ESXI主机,进入主界面,找到左侧的==“存储”==
在这里插入图片描述
找到你的存储设备,点数据存储浏览器
在这里插入图片描述
点击上载,把下载好的Debian12的ISO传输到你的ESXI主机中
在这里插入图片描述
上传完成后,点击左侧列表虚拟机,进入虚拟机界面,选择创建/注册虚拟机
创建/注册虚拟机

图太多了,要命不一步一步的写了,创建虚拟机这里,正常起名字,选择各种参数就行了,唯独在第四步“自定义设置”要把咱们上传的ISO镜像给放到CD/DVD介质里,最后点击创建即可。

在这里插入图片描述
内心OS:我得写精简点,这个不是保姆教程啊!!!这是随笔!

创建完虚拟机后,在虚拟机列表找到你的新虚拟机,右键——控制台——启动远程控制台,会打开提示:问你是否通过VMware workstation来管理,点击打开,你就跳转到你电脑本机安装的VMware workstation里了。什么?你电脑没有VMware workstation!装一个,别在ESXI的网页界面里折磨自己。
在这里插入图片描述
跳转到VMware workstation后,你发现ESXI其实是帮你在VMware workstation连接了一个远程服务器,接下来所有步骤就像正常的虚拟机哪有操作就行,安装Debian12过程中的重点地方,我会在下面截图中说明。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
最后等待安装就行,Debian12的安装真没啥说的,动手强的兄弟批量装机,这玩意可能就三分钟内点完安装了。安装完成后,你的ssh服务是默认打开的。

3.4 终端工具连接Debian12的SSH

先在Debian12里面打开终端,su提权到root身份

su

在这里插入图片描述
接着修改SSH配置文件,调整为默认允许root身份登录

nano /etc/ssh/sshd_config

在这里插入图片描述

把PermitRootLogin前面的#号去掉,后面改为yes,然后按ctrl+x再加Y确认修改(ctrl+u撤销上一步),接着重启ssh服务

systemctl restart sshd

以windtrem为例,右键新建会话,如下配置,root是你登录的用户名,正常连接即可。
在这里插入图片描述
进入到ssh后,正常情况DNS服务器IP地址是需要固定的,输入nmtui回车,进入Debian12的可视化网络配置界面

nmtui

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
配置完成后,正常保存退出,通过“ip a”命令检查IP地址是否正确,通过ping www.baidu.com检查是否与外网通讯正常。

ip a
ping www.baidu.com

开局都是0配置,你的内网是即插即用的,这一步应该没毛病,有问题ping不通就去检查你的路由器。
在这里插入图片描述
接着去修改Debian软件仓库源,我喜欢同时指定为国内的阿里和清华源,流程如下

nano /etc/apt/sources.list

把里面的所有内容清空,把下面的内容粘贴进去,这里就提醒终端软件的好处了,wind支持你直接你在CSDN复制,然后在终端里面右键直接粘贴

deb https://mirrors.aliyun.com/debian/ bullseye main non-free contrib
deb-src https://mirrors.aliyun.com/debian/ bullseye main non-free contrib
deb https://mirrors.aliyun.com/debian-security/ bullseye-security main
deb-src https://mirrors.aliyun.com/debian-security/ bullseye-security main
deb https://mirrors.aliyun.com/debian/ bullseye-updates main non-free contrib
deb-src https://mirrors.aliyun.com/debian/ bullseye-updates main non-free contrib
deb https://mirrors.aliyun.com/debian/ bullseye-backports main non-free contrib
deb-src https://mirrors.aliyun.com/debian/ bullseye-backports main non-free contrib

deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-free
deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-free
deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-free
deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian-security bullseye-security main contrib non-free
deb-src https://mirrors.tuna.tsinghua.edu.cn/debian-security bullseye-security main contrib non-free

编辑好如下,按ctrl+x再加Y确认修改(ctrl+u撤销上一步)
在这里插入图片描述
接着apt-get update更新源

apt-get update

3.5 Debian12完成Nginx配置

更新完源以后,执行下面命令安装Nginx,输入Y同意安装

apt-get install nginx

在这里插入图片描述
通过systemctl指令先开启ngnix服务,在检查状态。出现Active即为正常。

systemctl start nginx
systemctl status nginx

在这里插入图片描述
最后通过在浏览器访问Debian12的ip地址,你应该看到欢迎界面:
在这里插入图片描述

3.6 Debian12完成MySQL 配置

更新完源以后,执行下面命令安装MySQL ,但现在的Mysql你直接执行

apt-get install mysql-server

Debian12会报错:Package ‘mysql-server’ has no installation candidate,提示找不到包,应该是Oracle把mysql的包收回自己管理了,导致各种镜像厂库的包名改掉了,目前最好的方法是通过Oracle官网的MySQL apt存储库来安装,访问下面网址:

https://dev.mysql.com/downloads/repo/apt/

找到最新版本号
在这里插入图片描述
我不推荐你去点Download,还需要登录,这里直接使用wget拼接一下,下载地址就行

wget https://dev.mysql.com/get/mysql-apt-config_0.8.26-1_all.deb mysql-apt-config_0.8.26-1_all.deb
//把/get/后面的.deb包改成最新版本,然后后面给这个包取个名字

下载完成后,通过dpkg -i命令安装这个deb包,-i参数代表install

dpkg -i mysql-apt-config_0.8.26-1_all.deb

安装过程会出现第一个配置界面,让你选你的linux版本,虽然我是Debian12,但是你别管,选Debian就行了。

第二个界面才是主要的,我们在这里选择server和cluster
在这里插入图片描述

接着选版本,选第一个就行,第三个cluster是集群版。

在这里插入图片描述

注意这里你选择Mysql8.0版本,按回车以后,又回跑出来一个让你选server或者tools的界面,这不是遇到鬼,这是多选的意思,这里直接最下面的ok就行。

在这里插入图片描述

现在你完成了Mysql来自Oracle的apt源的添加,是的,你搞半天只是为了添加源列表。
放心,你去/etc/apt/sources.list是看不到添加的内容的,你只需要正常执行更新就行。

apt-get update

更新过程中你是可以看到mysql的源的,完成后我们再进行musql的安装
在这里插入图片描述

接着执行安装命令

apt-get install mysql-server

这回就有了,安装过程会提示一个root密码界面,请输入复杂一点的密码,并记住这个密码

在这里插入图片描述

重复输入后,同意协议

在这里插入图片描述

接下来设置默认认证类型,选第一个使用存储密码就行,不要用5.x几版本那个,后面忘记密码很难改。

在这里插入图片描述

正常来说,到这一步你就安装完mysql的服务端了,通过下面命令:

systemctl status mysql.service

在这里插入图片描述

你已经能看到正常的mysql服务启动了,注意,这时候你在一台window电脑上使用Sqlyog等程序,理论上,就已经能访问这个数据库了,但在mysql8.0这个版本,你一定会遇到权限不足的报错,如下:
在这里插入图片描述

------------接下来是修复----------------

这是因为mysql高版本以后对访问权限搞的很死,一开始只允许本机访问,如果是部署mysql的老玩家,一半开局都会起用户,然后给权限的。那么安装的sqlyog无法访问mysql,我们就在Debian12上安装mysql-client自己访问自己,执行下面命令。

apt-get install mysql-client

一般都是默认安装了的,那么直接登录mysql

mysql -u root -p

接着输入密码登录mysql,注意不显示密码,别输入错误
在这里插入图片描述
正常连接如下
在这里插入图片描述
接下来是开启远程访问mysql权限的步骤,这基本是必须的内容,当你以后遇到各种权限问题时候,也可以参考这部分。依次执行下面命令

use mysql  //选择本表

在这里插入图片描述

select 'host' from user where user='root';		//从user表里面选择查看uesr等于root的host名是啥,这里显示host代表只能本机访问,我们要改它

在这里插入图片描述

update user set host ='%' where user='root';		//通过update命令把user表里面user等于root的host值更新为通配符%

在这里插入图片描述

flush privileges;		//刷新一下刚才的修改

在这里插入图片描述

select host,user from mysql.user;	//执行这句,能看到root变成%通配符了

在这里插入图片描述
最后,把mysql服务重启后,去Sqlyog里面试试吧;

systemctl restart mysql.service

如果,我是说如果,你和我一样,又报错了,报2058错误码,那我们还需要继续调整,因为8.0这个版本太新了,配置安装的时候你输入的密码加密方式是sha2,sqlyog解析不出来,所以又报错了.
在这里插入图片描述
解决办法也有,重新进入mysql

mysql -u root -p

接着输入密码登录mysql,注意不显示密码,别输入错误,然后执行

select host,user,plugin from mysql.user;	//查看你的各个用户是用什么plugin方式加密

在这里插入图片描述
可以看到我们刚才改的%通配符,以及后面一堆的sha2加密方式,这里我们要把sha2改成普通的mysql_native_password,执行下面语句:

ALTER USER root IDENTIFIED WITH mysql_native_password BY '你的密码';

其实网上大部分修改语句都是使用下面,

alter user root@localhost IDENTIFIED with mysql_native_password BY '你的密码';

网上的这个语句你会报错ERROR 1396 (HY000): Operation ALTER USER failed for ‘root’@‘localhost’,
为什么呢,因为我们把root的默认域改成通配符%所有域了啊。

所以大家要有学习书本,而又高于书本的精神来干技术!

全部改为后你会看到确认OK提示:
在这里插入图片描述
最后检查一下

select host,user,plugin from mysql.user;	//查看你的各个用户是用什么plugin方式加密

在这里插入图片描述
OK了,重启一次mysql再去试一下sqlyog吧。博主已经成功,你也试试吧,你也可以的。
在这里插入图片描述

3.7 Debian12完成PHP 配置

完成上面的mysql,你估计已经很累了,我也累啊,天菩萨我大晚上9点半写博客,绝了。接下来开始PHP的配置。
使用下面命令:

apt-get install php-fpm		//安装php本体

在这里插入图片描述

apt-get install php-mysql		//安装php与mysql的组件

在这里插入图片描述
安装基本没障碍,截止我写博客的8月28日,安装php默认最新版本是7.4版本
咱们可以通过下面命令,查看php运行状态。

systemctl status php7.4-fpm.service

在这里插入图片描述
OK,说明安装成功。

小结


花有重开日,人无再少年啊!


那么到此为止,我们的LNMP就全部搭建完成了,你说这套东西能用吗?其实不一定的,因为没有进行版本控制,但对于看博客的诸君,总有一个学习的过程,先装得上,再去进行版本控制,人终究会成长的嘛。

并且这一套LNMP配置是在vSphere上做的,其实就是在私有云上部署,这也是一种全新的体验。也是一种知识的整合,但是好想吐槽自己,BIND9,0x02编号的博文都没写完,我就跑来搞这个LNMP了,我真是想一出是一出。


Ubuntu Debian(NGINX/PHP/MYSQL)快速配置工具LNMP云安装 Ubuntu Debian云安装基于debian apt-get 快速配置安装nginx php mysql等。LNMP云安装Ubuntu Debian(NGINX/PHP/MYSQL)快速配置工具经测试,整个过程约2-5分钟完成。各种组件均使用最新稳定版。加入php host功能限制每个网站的访问目录,防止跨目录,更安全!解决nginx 0day漏洞! DebianLNMP特点:1. 独特的DebianLNMP安全增强设置。2. 新软件库基于http://www.dotdeb.org/可保持同步更新。3. Nginx MySQL PHP 全部升级到最新稳定版本。4. 快捷的安装脚本,快速安装开源LNMP软件组合。5. 适合懒人+初学者。随着时间变迁,安装的版本会是更新版本。6. 最快安装、最新稳定版、最省资源! Ubuntu Debian(NGINX/PHP/MYSQL)LNMP云安装 直接给出安装方法:最快安装、最新稳定版、最省资源! root@DebianLNMP-Jimmyli:~# wget http://sourceforge.net/projects/debian-lnmp/files/DebianLNMP/DebianLNMP-Jimmyli.sh root@DebianLNMP-Jimmyli:~# sh DebianLNMP-Jimmyli.sh 输入域名,回车。 接着输入MYSQL root用户密码,再次输入确认MYSQL root用户密码,等待安装完成。整个过程约2-5分钟。 安装完成了! 一如既往,安装快捷方便、迅速! 直接给出安装方法:最快安装、最新稳定版、最省资源! 两步安装即完成命令(Pro加强版) root@DebianLNMP-Jimmyli:~# wget http://sourceforge.net/projects/debian-lnmp/files/DebianLNMP/DebianLNMP-Pro-Jimmyli.sh root@DebianLNMP-Jimmyli:~# sh DebianLNMP-Pro-Jimmyli.sh DebianLNMP加强版? 延续DebianLNMP全部功能...新增PHP5插件ImageMagick、XCache、memcache、curl、MCrypt。 DebianLNMP一键安装LNMP状态管理: 安装完成后,管理NginxPHP5、MySQL已经有标准管理命令,其状态管理沿用了Linux通用性。 Nginx状态管理 /etc/init.d/nginx {start|stop|restart|reload|force-reload|status|configtest}PHP5-FPM状态管理 /etc/init.d/php5-fpm {start|stop|status|restart|reload|force-reload}MySQL状态管理/etc/init.d/mysql {start|stop|restart|reload|force-reload|status} Nginx nginx.conf:/etc/nginx/nginx.conf MySQL my.cnf:/etc/mysql/my.cnf PHP php.ini:/etc/php5/fpm/php.ini DebianLNMP一键安装LNMP效果图: Ubuntu Debian(NGINX/PHP/MYSQL)快速配置工具 Debian6系统下使用之前发布的“DebianLNMP服务器软件套件,DebianLNMP一键安装包是一个快捷的服务器套件,轻轻松松全自动安装LNMP(NginxMySQLPHPphpMyAdmin)可直接用再生产环境。现在我们已经在Debian/UbuntuVPS(VDS)或独立主机安装LNMP,安装最快最新(NginxMySQLPHPphpMyAdmin)生产环境。 下面介绍配套的DebianLNMP虚拟主机管理工具,快速创建Nginx PHP5.3 MySQL配置。 什么是DebianLNMP虚拟主机管理工具? 使用DebianLNMP一键安装包,安装好Nginx/PHP5.3/MySQL环境后,需要创建添加、新建、删除虚拟主机。它能管理多域名(子域名)的虚拟主机,在Debian系统以向导的形式管理,按照向导问题选择相应功能即可快速创建。 Debian虚拟主机管理软件?Debian系统安装LNMP环境只需要两条命令,Debian6一键安装包DebianLNMP最快.最新.最省!同样,管理LNMP虚拟主机
05-27
Samba是一个开源的软件套件,可以让Unix/Linux系统共享文件和打印机,与Windows系统进行文件和打印机共享。使用Samba,你可以在Unix/Linux系统上创建一个Windows兼容的文件服务器,让Windows系统用户可以方便地访问共享文件和打印机。 以下是Samba的一些基本概念和使用方法: 1. Samba服务器:Samba服务器是运行Samba软件的Unix/Linux系统,它可以作为文件服务器和打印机服务器,与Windows系统进行文件和打印机共享。 2. Samba共享:Samba共享是Samba服务器上的一个目录或文件,可以被Windows系统用户访问和共享。 3. Samba用户:Samba用户是Samba服务器上的一个用户账户,用于访问Samba共享。你需要为每个需要访问Samba共享的用户创建一个Samba用户账户,并设置相应的访问权限。 4. Samba配置文件:Samba配置文件是Samba服务器的配置文件,用于指定Samba共享和Samba用户等信息。Samba配置文件通常位于/etc/samba/smb.conf。 5. Samba客户端:Samba客户端是运行Windows系统的电脑,可以访问Samba共享和打印机。 以下是一些基本的Samba命令: 1. 安装Samba软件: ``` sudo apt-get update sudo apt-get install samba ``` 2. 创建Samba用户账户: ``` sudo smbpasswd -a username ``` 其,username是要创建的Samba用户账户。 3. 修改Samba配置文件: ``` sudo nano /etc/samba/smb.conf ``` 在文件添加Samba共享的配置信息,如下所示: ``` [share-name] comment = My Samba Share path = /path/to/share browsable = yes read only = no guest ok = no valid users = username ``` 其,share-name是Samba共享的名称,comment是Samba共享的注释,path是Samba共享的路径,browsable指定Samba共享是否可浏览,read only指定Samba共享是否只读,guest ok指定是否允许访客访问该共享,valid users指定可以访问该共享的Samba用户。 4. 重启Samba服务: ``` sudo service smbd restart ``` 5. 在Windows系统访问Samba共享: 打开Windows资源管理器,输入Samba服务器的IP地址或主机名,例如: ``` \\192.168.0.100 ``` 或者: ``` \\samba-server ``` 其,192.168.0.100是Samba服务器的IP地址,samba-server是Samba服务器的主机名。然后,输入Samba用户账户和密码,即可访问Samba共享。 在使用Samba时,需要注意安全问题,避免未授权用户访问Samba共享。你可以在Samba配置文件设置相应的安全选项,以保护Samba共享的安全性。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Leoioz

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值