Excellent software and practical tutorials
Linux server management panel, using AMH to automatically deploy LNMP environment
AMH It is the first domestically-supported flexible multi-environment panel with a modular software architecture design and high scalability.Deploy the LNMP environmentThe panel supports different WEB application environments such as LNMP, LAMP, LNGX, and LNAMP. AMH has provided free version support for 10 years without interruption, and the latest version has added commercial licenses for free use. Previously, paid licensed software, including exception monitoring, database and file synchronization, traffic protection management, load balancing, etc., are all available for free.
AMH It is a fast, simple and lightweight Linux server management panel, suitable for beginners. Visual software installation is simple and convenient, which greatly saves server maintenance time.
Below is the use of AMH on RedHat 7Automatically deploy the LNMP environmentMicrosoft Azure.com provides free Standard B1s (1 vcpu, 1 GiB memory) cloud servers, and the Linux version only supports RedHat 7.7 at the highest.
For beginners, it is enough to use. You can use wordpress to build a free blog. You can also install mysql5.6 and php7.4. Although there is only 100G of outbound traffic per month, the pictures in the blog can be distributed to all parts of the world using Amazon Cloud's CDN.
AMH official website:https://amh.sh/
Automatically deploy LNMP environment using AMH
In this test, the AMH automatic deployment LNMP environment uses Azure's B1s server.
Configure the Linux basic environment
First, configure the Linux basic environment on Azure's B1s server.
For SSH remote connection, please refer to:Azure Linux Microsoft cloud host uses the Root super user to log in
Install the YUM enhancement tool. Because it was RedHat 7, the DNF command had not yet been launched, so only the YUM command could be used to install the software.
DNF command (Dandified yum) is the next generation version of the traditional YUM package manager for RedHat based systems. It is the default package manager for Fedora 22, CentOS8, and RHEL8.
yum install yum-utils yum update
Install dnf command
yum install dnf
Install the epel and remi software sources. The dnf repolist all command can view all data sources.
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
Install DNF command to automatically update
dnf install dnf-automatic systemctl start dnf-automatic.timer
Install the Development Tools Package Group
dnf group install 'Development Tools' -y
Configure SWAP virtual memory
The swap partition in Linux is similar to the virtual memory in Windows. When the physical memory is insufficient, you can create a swap partition to solve the problem of insufficient memory.
use free -m
Check the server virtual memory. Microsoft's B1s enables 2G virtual memory by default. If you think the 2G SWAP partition is too small, delete the Swap partition and recreate a 4G or larger virtual memory SWAP partition.
use swapon -s
Command to view the location of the swap partition.
#Stop Swap swap partition swapoff /mnt/resource/swapfile #Delete swap partition rm -rf /mnt/resource/swapfile #Delete the startup /etc/fstab configuration content sed -i "/'\/mnt/resource/swapfile swap swap defaults 0 0'//" /etc/fstab
Create a swap partition
#Create 8G Swap partition virtual memorysudo dd if=/dev/zero of=/swapfile bs=1024 count=8388608 #Check the size of the Swap partitionls -lh /swapfile #Change the permissions of the swap filesudo chmod 600 /swapfile #Format the Swap filesudo mkswap /swapfile #Enable the Swap filesudo swapon /swapfile #Set the startup echo '/swapfile swap swap sw 0 0' | sudo tee -a /etc/fstab
Modify the server time zone. This is very important. Sometimes the time on the client and server is different, and some software will not work.
sudo timedatectl set-timezone Asia/Shanghai
Permanently turn off the firewall. If you need the firewall function, you can set up the firewall in the network options of the Azure B1s server cloud platform. The firewall settings on the cloud platform are more flexible.
#Check the firewall status systemctl status firewalld #Shut down the firewall systemctl stop firewalld #Permanently shut down the firewall systemctl disable firewalld
After the basic configuration is completed, reboot the server and start installing the LNMP environment.
Automatically deploy the LNMP environment
Go to the AMH panel installation page:https://amh.sh/install.htm
Click Custom Installation and select the version you want to install. Here, select nginx1.20 as the web server software, musql5.6 as the database software, and php8.0 as the php version.
Log in to the Linux server using the root account and execute the following command to install AMH:
wget http://dl.amh.sh/amh.sh && bash amh.sh nginx-1.20,mysql-5.6,php-8.0
Installation Tips
Install AMH if prompted wget: command not found
Please execute the following command to install the wget command before installing AMH:
#centos system yum install -y wget #Ubuntu system apt-get install -y wget
If the server cannot resolve the amh.sh domain name during the installation of amh,
Please change the server's DNS before installing AMH. Execute the following command to complete the change of DNS resolution:
echo -e "options timeout:1 attempts:1 rotate\nnameserver 8.8.8.8\nnameserver 114.114.114.114" >/etc/resolv.conf;
If you are unable to access the panel after successfully installing AMH, please check whether the host provider has security group/firewall restrictions. Please open the port, such as opening the panel ports 8888 and 9999.
AMH7.0 Compilation and Installation Supported Systems
Supports all stable versions of CentOS, Ubuntu, and Debian currently released, and fully supports systems using x86/x86_64, aarch64/arm64 architectures:
- 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
In the Chinese installation interface, enter Y and press Enter to install AMH.
The compilation and installation speed is a bit slow, please wait patiently for a while.
The AMH panel in the LNMP environment was successfully installed in 37 minutes.
Enter the access address to log in to the host panel: https://20.231.211.35:9999
AMH username: admin
AMH password: 70dddd708f17
There are five items on the main panel: server CPU information, server disk information, server network card traffic chart, server memory information, and server system information. In the server system information, first synchronize the server system time.
Next, you can manage the websites and databases on the server on the AMH panel. There is no need to use SSH to connect to the server. All settings on the server can be controlled on the hosting panel.
Click the settings in the upper right corner. In the settings, you can modify the access port and register an authorized account. Now AMH's authorized account is free to apply for, and you only need to register on the official website.
It is also very simple to register an authorized account. After entering the account password, verify the phone and that's it! After that, you can install server application software in the software store. Some software that requires the purchase of authorization are professional-level software, which is basically not used by novice users. It is still in time to recharge and purchase when you need it.
In the software store, there are some software that can be installed and you can install them on demand.
If you want to successfully build a blog site, you need to install the following software in the software store.
CDN reverse proxy
Updated to lngx-2.6. Added WebSocket (ws) reverse proxy option, fixed the problem of not updating the https configuration when closing or starting the cache, added ipv6 listening option, fixed the problem of changing the environment nginx error when the website has concurrency restrictions, broadband speed limits or traffic protection CDN mode, and fixed the problem of switching the environment management when clicking the rule file in the virtual host list. AMH-LNGX reverse proxy environment module. LNGX is Linux+Nginx+X, where X is undefined. The lngx website environment provides support for cache management and setting up reverse proxy sites, supports online keyword addition and replacement, supports setting up different types of file replacement, and supports adding custom first and last html code blocks. You can create a lngx environment as the front end of other environment applications, such as establishing a lngx environment in different locations and enabling cache as a CDN acceleration mirror for the site.CDN accelerationMirror image, etc.
Pseudo-static rules
Updated to amrewrite-2.0, added anti-hotlink rule setting options, simplified command line operation, fixed the problem that the subdomain host rule list did not display the association, optimized domain name jump and URL rewriting options, adjusted and added 4 default new rules. AMRewrite is the URL rewriting module for the AMH panel environment host. The module provides the ability to add, edit, delete rules, maintain rule files, and verify the correctness of rules.
SSL Certificate Management
Updated to amssl-3.6 (v17) version, updated to fix the problem that the default site of the application certificate is not enabled, and fixed the problem that ipv4 cannot enable http2 when there is ipv6 listening. AMSSL is the HTTPS / SSL certificate support module of the AMH panel, which supports custom configuration certificates, supports automatic and rapid deployment of Lets Encrypt certificates (file verification or DNS verification wildcard certificates), automatic renewal functions, supports certificate optimization, http/2, forced https (HSTS) and other functions, and supports AMH environments such as LNMP, LAMP, LNMH, and LNGX. HTTPS is the creation of a secure and encrypted HTTP channel based on SSL, which is the secure version of HTTP. The AMSSL module supports online custom generation of KEY private keys, CSR signatures, and CRT certificate files, and supports data input to manage certificates, and enables HTTPS / SSL access support for the environment's virtual hosts.
Memcached caching software
Updated to version 1.6.18 compatible with the latest gcc12.2 installation. Memcached is a high-performance distributed memory object caching system used in dynamic Web applications to reduce database load. It reduces the number of database reads by caching data and objects in memory, thereby improving the speed of dynamic, database-driven websites.
Memcached PHP client enhanced version
Updated to pecl_memcached-3.1 (v5) version, supports the latest PHP8.0. Both pecl_memcache and pecl_memcached are PHP extensions of Memcached software. The functions of the two are slightly different. The latter is an enhanced version of the former. Memcached (client/php extension) is a cache project that can handle any number of connections and use non-blocking network IO. Because its working mechanism is to open up a space in memory and then create a HashTable, Memcached will manage these HashTables by itself.
Redis caching software
Updated to the latest Redis-6.2.6 (v3) version, optimized the stop program, and handled the problem of failure to stop redis when using a password. Redis is a high-performance open source key-value database. Redis is written in ANSI C language, supports network, memory-based and persistent log-type, Key-Value database, and provides APIs in multiple languages. Redis is similar to Memcached, and it supports relatively more value types for storage, including string, list, set, zset, and hash.
Redis PHP Client
Upgrade to pecl_redis-5.3 version, which is compatible with the latest php8.0. You can choose to install pecl_redis2.2, 4.3 or 5.3 versions. pecl_redis is the PHP environment extension module of the AMH panel Redis software. Redis is a high-performance open source key-value database. pecl_redis is the PHP environment interface extension module of Redis. This extension needs to be installed to use Redis in the PHP environment.
If you need mail service, you also need to install dovecot+postfix+amsmtp to build an SMTP post office!