Pereiti prie pagrindinio turinio

Nginx Reverse Proxy Manager (NPM) diegimas AlmaLinux / Rocky Linux sistemoje

Atnaujinta šiandien

Nginx Proxy Manager (NPM) yra galinga ir patogi sąsaja, skirta atvirkštiniams proxy serveriams valdyti naudojant Nginx. Tai puikus sprendimas savarankiškai paslaugas talpinantiems naudotojams ir sistemų administratoriams, norintiems paprasčiau valdyti SSL sertifikatus bei domenų nukreipimą. NPM leidžia saugiai talpinti kelias paslaugas už vieno IP adreso, naudojantis tvarkinga valdymo panele ir automatiniu Let's Encrypt palaikymu.

0. Reikalavimai

Prieš tęsdami įsitikinkite, kad turite:

  • Minimaliai įdiegtą AlmaLinux arba Rocky Linux 8 ar 9 versiją;

  • Root arba sudo naudotojo prieigą;

  • Įdiegtus Docker ir Docker Compose;

  • Domeno vardą, nukreiptą į jūsų serverio IP adresą;

  • Atidarytus 80 ir 443 ugniasienės prievadus.

  • Bazines CLI ir DNS įrašų žinias.

1. Diegimas

1.1. Sistemos atnaujinimas

Pradėkite nuo sistemos paketų indekso atnaujinimo, kad visi esami paketai būtų naujausių versijų:

sudo dnf update -y && sudo dnf install -y epel-release

1.2. Docker ir Docker Compose diegimas

AlmaLinux 9 pagal numatytuosius nustatymus Docker paketo saugykloje neturi. Todėl pirmiausia reikia pridėti Docker saugyklą prie sistemos ir įdiegti Docker variklį naudojant šias komandas:

sudo dnf install -y dnf-plugins-core
sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo dnf install -y docker-ce docker-ce-cli containerd.io
sudo systemctl enable --now docker

Įdiekite Docker Compose:

sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

Įsitikinkite, kad Docker ir Compose įdiegti teisingai.

docker --version
docker-compose --version

1.3. NPM Docker Compose katalogo sukūrimas

Tai bus jūsų darbinis katalogas konfigūracijai ir išliekamiesiems duomenims saugoti.

mkdir -p ~/npm && cd ~/npm

1.4. „docker-compose.yml“ failo sukūrimas

Sukurkite failą naudodami pasirinktą redaktorių, pavyzdžiui, Nano arba Vim. Ši konfigūracija apibrėžia NPM programą, jos MariaDB duomenų bazę, reikalingus prisijungimo duomenis ir prievadus.

services:
app:
image: 'jc21/nginx-proxy-manager:latest'
restart: unless-stopped
ports:
- '80:80'
- '443:443'
- '81:81'
environment:
DB_MYSQL_HOST: "db"
DB_MYSQL_PORT: 3306
DB_MYSQL_USER: "npm"
DB_MYSQL_PASSWORD: "npm"
DB_MYSQL_NAME: "npm"
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
depends_on:
- db
db:
image: 'jc21/mariadb-aria:latest'
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: 'npm'
MYSQL_DATABASE: 'npm'
MYSQL_USER: 'npm'
MYSQL_PASSWORD: 'npm'
MARIADB_AUTO_UPGRADE: '1'
volumes:
- ./mysql:/var/lib/mysql

Pakeiskite slaptažodžius stipriais ir saugiais.

1.5. NPM paleidimas

Ši komanda atsisiunčia atvaizdus ir paleidžia NPM bei jo duomenų bazę fone.

docker compose up -d

2. Prisijungimas prie web sąsajos

Valdymo panelėje galite pilnai valdyti proxy įrašus, sertifikatus ir naudotojų nustatymus.

Atidarykite naršyklę ir eikite į http://<your-server-ip>:81

Prisijunkite naudodami numatytuosius prisijungimo duomenis:

Email: [email protected]  
Password: changeme

Iškart po prisijungimo sistema paprašys juos pakeisti.

Dabar galite kurti pirmąjį proxy įrašą. Pakeiskite prisijungimo duomenis ir eikite į “Dashboard” -> “Add Proxy Host”:

Įrašykite domeno vardą, pasirinkite schemą, pagal kurią veikia jūsų dabartinė web aplikacija, nurodykite serverio IP adresą ir jo prievadą. Pažymėkite “Block Common Exploits” ir nustatykite, kad būtų išduotas SSL sertifikatas. Atminkite, kad domenas turi būti nukreiptas į jūsų serverio IP adresą!

Ar gavote atsakymą į savo klausimą?