Linux服务器管理面板 ,使用 AMH 自动部署LNMP环境
AMH 是国内首个支持弹性多环境面板,软件模块化架构设计,高扩展灵活性。自动部署LNMP环境,面板支持LNMP、LAMP、LNGX、LNAMP等不同WEB应用环境。AMH提供免费版本支持10年从未间断,最新版本再次增加提供商业授权可免费授权使用。以往收费授权软件,包括异常监控、数据库与文件同步、流量防护管理、负载均衡等全部免费可用。
AMH 是一款快速,简洁,轻便的Linux服务器管理面板,适合新手入门使用。可视化软件安装,简单方便,大大节省了服务器的维护时间。
下面使用AMH在RedHat 7上自动部署LNMP环境,微软云 Azure.com 提供免费Standard B1s (1 vcpu,1 GiB 内存)云服务器,Linux版本最高只支持RedHat 7.7
对于新手入门来说,足够使用了,可以使用wordpress搭建免费的Blog博客。也可以安装mysql5.6和php7.4,虽然每月只有100G的出站流量,博客中的图片可以使用亚马逊云的CDN分发至世界各地。
AMH官网:https://amh.sh/
使用AMH 自动部署LNMP环境
本次测试AMH自动部署LNMP环境选用的是Azure的B1s服务器。
配置好Linux基础环境
首先将Azure的B1s服务器配置好Linux基础环境。
SSH远程连接请参考:Azure Linux 微软云主机使用Root超级用户登录
安装YUM增强工具,因为是RedHat 7,当时还没有推出DNF命令,只能使用YUM命令进行软件安装。
DNF 命令(Dandified yum) 是基于RedHat 的系统的传统YUM 包管理器的下一代版本。 它是Fedora 22、CentOS8 和RHEL8 的默认包管理器。
yum install yum-utils yum update
安装dnf命令
yum install dnf
安装epel和remi软件源,dnf repolist all 命令可以查看全部的数据源
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm dnf install https://rpms.remirepo.net/enterprise/remi-release-7.rpm dnf makecachea
安装DNF命令自动更新
dnf install dnf-automatic systemctl start dnf-automatic.timer
安装开发工具软件包组
dnf group install 'Development Tools' -y
配置SWAP虚拟内存
Linux中的swap分区类似Windows的虚拟内存,当物理内存不足的情况下,可通过创建swap分区来解决内存过小的问题。
使用 free -m
查看服务器虚拟内存,微软的B1s默认启用了2G的虚拟内存,如果觉得2G的SWAP交换分区太小的话,删除掉Swap交换分区,重新创建一个4G的或者更大的虚拟内存SWAP交换分区。
使用 swapon -s
命令查看交换分区的位置。
#停止Swap交换分区 swapoff /mnt/resource/swapfile #删除交换分区 rm -rf /mnt/resource/swapfile #删除开机启动/etc/fstab配置内容 sed -i "/'\/mnt/resource/swapfile swap swap defaults 0 0'//" /etc/fstab
创建Swap交换分区
#创建8G大小的Swap交换分区虚拟内存 sudo dd if=/dev/zero of=/swapfile bs=1024 count=8388608 #查看Swap交换分区大小 ls -lh /swapfile #更改swap文件的权限 sudo chmod 600 /swapfile #格式化Swap文件 sudo mkswap /swapfile #启用Swap文件 sudo swapon /swapfile #设置开机启动 echo '/swapfile swap swap sw 0 0' | sudo tee -a /etc/fstab
修改服务器时区,这个很关键,有时候客户端和服务端的时间不一样,有些软件就会无法工作。
sudo timedatectl set-timezone Asia/Shanghai
永久关闭防火墙,如果需要防火墙功能,可以在Azure的B1s服务器的云平台上的网络选项中设置防火墙,云平台上的防火墙设置更灵活一些。
#查看防火墙状态 systemctl status firewalld #关闭防火墙 systemctl stop firewalld #永久关闭防火墙 systemctl disable firewalld
基本配置完毕之后,reboot重新启动服务器,开始安装LNMP环境。
自动部署LNMP环境
进入AMH面板安装页面:https://amh.sh/install.htm
点击定制安装,选择需要安装的版本,这里选择web服务器软件使用nginx1.20,数据库软件使用musql5.6,php选择php8.0版本。
使用 root 账号登录 Linux 服务器,执行以下命令安装AMH:
wget http://dl.amh.sh/amh.sh && bash amh.sh nginx-1.20,mysql-5.6,php-8.0
安装小提示
安装amh如果提示 wget: command not found
请先执行以下命令安装wget命令后再安装AMH:
#centos系统 yum install -y wget #Ubuntu系统 apt-get install -y wget
安装amh过程中如果服务器解析不了amh.sh域名的情况,
请先更换服务器的DNS再安装AMH。执行以下命令完成更换DNS解析:
echo -e "options timeout:1 attempts:1 rotate\nnameserver 8.8.8.8\nnameserver 114.114.114.114" >/etc/resolv.conf;
安装amh成功后无法访问面板情况,请您检查主机商是否有安全组/防火墙相关限制,请开放端口,如开放面板8888,9999端口。
AMH7.0 编译安装支持的系统
支持目前 CentOS、Ubuntu、Debian 已发行的所有稳定版本,全面支持使用 x86/x86_64、aarch64/arm64 架构的系统:
- CentOS Stream 9 x64 New
- CentOS Stream 8 x64
- CentOS 7 x64
- Debian 11 x64 (bullseye)
- Debian 10 x64 (buster)
- Debian 9 x64 (Stretch)
- Debian 8 x64 (Jessie)
- Debian 8 i386 (Jessie)
- Debian 7 x64 (wheezy)
- Debian 7 i386 (wheezy)
- Ubuntu 22 x64 New
- Ubuntu 20 x64
- Ubuntu 18 x64
- Ubuntu 16 x64
- Ubuntu 16 i386
- Ubuntu 14 x64
- Ubuntu 14 i386
中文安装界面,输入Y,然后回车进行AMH安装。
编译安装速度有些慢,耐心等待一会。
耗时37分钟LNMP环境的AMH面板安装成功。
输入访问地址登录主机面板:https://20.231.211.35:9999
AMH用户名:admin
AMH密码:70dddd708f17
主面板上有五项内容,服务器CPU信息、服务器磁盘信息、服务器网卡流量图表、服务器内存信息、服务器系统信息。在服务器系统信息中先同步服务器的系统时间。
接下来你可以在AMH面板上管理服务器上的网站和数据库,不需要使用SSH连接服务器了,在主机面板上可以操控服务器上的一切设置。
点击右上角的设置,在设置中可以修改访问端口,以及注册授权账户,现在AMH的授权账户是免费申请的,只需要在官网注册即可。
授权账户的注册也很简单,输入账号密码后,验证手机就可以了!之后你就可以在软件商店中安装服务器应用软件,一些需要购买授权的软件都是些专业级别的软件,新手用户基本上用不上,当你需要的时候再充值购买也来得及。
在软件商店中,有些可以安装的软件,按需安装即可。
如果想成功搭建一个博客站点,你需要在软件商店中安装如下软件。
CDN反向代理
更新升级至lngx-2.6版本。增加WebSocket(ws)反代选项,修复关闭或启动缓存https配置没更新问题,增加ipv6监听选项,修复网站存在并发限制、宽带限速或流量防护CDN模式时更换环境nginx出错问题,修复虚拟主机列表点击规则文件跳转切换了环境管理问题。AMH-LNGX反向代理的环境模块。LNGX即为Linux+Nginx+X,其中X为未限定。lngx网站环境提供支持缓存管理与设置反代站点,支持在线关键字添加、替换,支持设置不同类型文件替换、与支持添加自定义首尾html代码块等。您可以创建lngx环境做为其它环境应用前端,如在不同位置建立lngx环境并开启缓存做为站点的CDN加速镜像等。
伪静态规则
更新升级至amrewrite-2.0版本,增加防盗链规则设置选项,简化命令行运行,修复子域主机规则列表没显示关联问题,优化域名跳转、URL重写选项,调整与添加4个默认的新规则。AMRewrite是AMH面板环境主机URL重写模块,模块提供添加、编辑、删除规则、维护规则文件并校验规则正确性。
SSL证书管理
更新升级至amssl-3.6(v17)版本,更新修复应用证书默认站点没开启问题,修复有ipv6监听时,ipv4没能开启http2问题。AMSSL是AMH面板的HTTPS / SSL证书支持模块,支持自定义配置证书、支持Lets Encrypt证书一建自动快速部署(文件验证或DNS验证泛域名通配证书)、自动续期功能,支持证书优化、http/2、强制https(HSTS)等功能,支持的AMH环境有LNMP、LAMP、LNMH、LNGX。HTTPS是以SSL为基础的创建安全加密的HTTP通道,即HTTP的安全版。AMSSL模块支持在线自定义生成KEY私钥、CSR签名、CRT证书文件,与支持数据输入方式管理证书,为环境的虚拟主机开通HTTPS / SSL访问支持。
Memcached缓存软件
更新至1.6.18版本兼容最新的gcc12.2安装。Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。
Memcached PHP客户端加强版
更新升级到pecl_memcached-3.1(v5)版本,支持最新PHP8.0。pecl_memcache与pecl_memcached都为Memcached软件的php扩展,两者功能有些差别后者为前者的增强版。Memcached(客户端/php扩展)是一个可以应对任意多个连接,使用非阻塞的网络IO的缓存项目。由于它的工作机制是在内存中开辟一块空间,然后建立一个HashTable,Memcached便会自管理这些HashTable。
Redis缓存软件
更新至最新Redis-6.2.6(v3)版本,优化停止程序,处理有使用密码时停止redis失败问题。Redis是一个高性能开源的key-value数据库,Redis使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。Redis和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(有序集合)和hash(哈希类型)。
Redis PHP客户端
升级至pecl_redis-5.3版本,兼容支持最新的php8.0,可选择安装pecl_redis2.2、4.3或5.3版本。pecl_redis是AMH面板Redis软件的php环境扩展模块。Redis是一个高性能开源的key-value数据库,pecl_redis为Redis的PHP环境接口扩展模块,PHP环境使用Redis需要安装此扩展。
如需邮件服务,还需安装dovecot+postfix+amsmtp搭建SMTP邮局!