نحوه نصب رابط کاربری Nginx در اوبونتو – یک رابط کاربری وب متنباز برای Nginx #
رابط کاربری Nginx یک رابط کاربری گرافیکی (GUI) متنباز مبتنی بر وب برای مدیریت پیکربندی Nginx است. این رابط از پیکربندیهای تک گرهای و خوشهای با آمار لحظهای سرور، گواهیهای خودکار TLS با Let’s Encrypt، نظارت بر عملکرد Nginx پشتیبانی میکند و با مدلهای زبان بزرگ (LLM) برای مدیریت پیکربندیها روی سرور ادغام میشود.
در این مقاله، شما رابط کاربری Nginx را روی اوبونتو ۲۴.۰۴ نصب خواهید کرد تا پیکربندیهای وب سرور Nginx را با استفاده از یک رابط مدیریت مبتنی بر وب ایجاد و مدیریت کنید. شما پیکربندیهای میزبان مجازی را ایجاد کرده و رابط کاربری Nginx را برای استفاده از یک مرجع صدور گواهی معتبر (CA) مانند Let’s Encrypt پیکربندی خواهید کرد تا گواهیهای TLS را برای اتصالات امن TLS روی سرور خود مدیریت کنید.
پیش نیازها #
قبل از شروع، شما نیاز دارید:
- به عنوان یک کاربر غیر ریشه با امتیازات sudo به یک نمونه اوبونتو ۲۴.۰۴ دسترسی پیدا کنید.
- یک رکورد دامنه A جدید ایجاد کنید که به آدرس IP عمومی نمونه اشاره کند. به عنوان مثال،
nginx-ui.example.com. - اگر میخواهید Nginx UI را با استفاده از Docker نصب کنید، Docker را روی سرور خود نصب کنید.
آموزش نصب Nginx UI #
رابط کاربری Nginx در مخازن پیشفرض بستههای اوبونتو موجود نیست. میتوانید رابط کاربری Nginx را با استفاده از Docker یا آخرین نسخه پایدار اسکریپت نصب کنید. یکی از دو روشی که در این بخش پوشش داده شده است را انتخاب کنید.
- بستههای سیستم خود را بهروزرسانی کنید.console
$ sudo apt update - Nginx را نصب کنید.console
$ sudo apt install nginx -y
نصب رابط کاربری Nginx با استفاده از اسکریپت #
برای دانلود آخرین اسکریپت نصب و نصب Nginx UI جهت مدیریت پیکربندیهای وب سرور، مراحل زیر را دنبال کنید. این روش، Nginx UI را به عنوان یک سرویس سیستمی نصب میکند.
- آخرین اسکریپت نصب رابط کاربری Nginx را دانلود کنید.console
$ curl -O https://cloud.nginxui.com/install.sh - اسکریپت را با استفاده از Bash و گزینه
installاجرا کنید.console$ sudo bash install.sh install - نسخه رابط کاربری Nginx نصب شده را تأیید کنید.console
$ nginx-ui --versionخروجی:
nginx-ui 2.1.17 1(468) 876213ad (go1.24.5 linux/amd64) Yet another Nginx Web UI - سرویس Nginx UI را شروع کنید.console
$ sudo systemctl start nginx-ui - وضعیت سرویس Nginx UI را بررسی کنید و از فعال بودن آن اطمینان حاصل کنید.console
$ sudo systemctl status nginx-uiخروجی:
● nginx-ui.service - Yet another WebUI for Nginx Loaded: loaded (/etc/systemd/system/nginx-ui.service; enabled; preset: enabled) Active: active (running) since Fri 2025-08-29 00:42:49 UTC; 2min 22s ago ...
نصب رابط کاربری Nginx با استفاده از Docker #
ایمیج Nginx UI Docker بر اساس جدیدترین ایمیج Nginx ساخته شده است و به عنوان یک راهکار وب سرور مستقل برای برنامههای کانتینری عمل میکند. اگر Nginx UI با استفاده از Docker نصب شده باشد، نمیتوانید پیکربندیهای وب سرور Nginx میزبان را تغییر دهید. برای نصب Nginx UI با استفاده از Docker Compose، این مراحل را دنبال کنید.
- یک دایرکتوری برای استقرار Nginx UI Docker در خانه خود ایجاد کنید و به آن بروید.console
$ mkdir -p ~/nginx-ui-docker $ cd ~/nginx-ui-docker
- دایرکتوری دادههای پایدار را برای فایلهای پیکربندی NGINX ایجاد کنید.console
$ sudo mkdir -p /opt/nginx-ui/nginx - دایرکتوری دائمی برای پیکربندی رابط کاربری Nginx ایجاد کنید.console
$ sudo mkdir -p /opt/nginx-ui/config - دایرکتوری دائمی برای فایلهای وبسایت ایجاد کنید.console
$ sudo mkdir -p /opt/nginx-ui/www - یک فایل پیکربندی Docker Compose ایجاد کنید.console
$ nano docker-compose.yml - پیکربندی Docker Compose زیر را اضافه کنید.yaml
version: '۳.۸' services: nginx-ui: image: uozi/nginx-ui:latest container_name: nginx-ui restart: always environment: - TZ=UTC volumes: - /opt/nginx-ui/nginx:/etc/nginx - /opt/nginx-ui/config:/etc/nginx-ui - /opt/nginx-ui/www:/var/www ports: - "۱۲۷.۰.۰.۱:۹۰۰۰:۸۰" networks: - nginx-ui-net networks: nginx-ui-net: driver: bridge
فایل را ذخیره کنید و ببندید.
پیکربندی فوق:
- از ایمیج رسمی Nginx UI Docker استفاده میکند.
- پورت ۸۰ کانتینر را به پورت ۹۰۰۰ میزبان محلی نگاشت میکند.
- دادهها را در دایرکتوریهای
/opt/nginx-ui/ذخیره میکند. - راهاندازی مجدد خودکار در صورت خرابی را پیکربندی کنید.
- کانتینر Nginx UI را با استفاده از Docker Compose آغاز کنید.console
$ sudo docker compose up -d - تأیید کنید که کانتینر در حال اجرا است.console
$ sudo docker compose ps - دسترسیپذیری کانتینر رابط کاربری Nginx را آزمایش کنید.console
$ curl -X GET http://localhost:9000شما باید خروجی HTML حاوی منابع رابط کاربری Nginx را مشاهده کنید.
پیکربندی پروکسی معکوس Nginx #
رابط کاربری Nginx به طور پیشفرض به پورت localhost 9000 گوش میدهد. برای ایجاد پیکربندی پروکسی معکوس با HTTPS با استفاده از Let’s Encrypt، این مراحل را دنبال کنید.
- به دایرکتوری sites-available در Nginx بروید.console
$ cd /etc/nginx/sites-available
- یک پیکربندی میزبان مجازی جدید Nginx UI ایجاد کنید.console
$ sudo nano nginx-ui.conf - پیکربندی پروکسی معکوس زیر را اضافه کنید.
nginx-ui.example.comرا با دامنه خود جایگزین کنید.inimap $http_upgrade $connection_upgrade { default upgrade; '' close; } server { listen 80; listen [::]:۸۰; server_name nginx-ui.example.com; location / { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $connection_upgrade; proxy_pass http://۱۲۷.۰.۰.۱:۹۰۰۰; } }
فایل را ذخیره کنید و ببندید.
- پیکربندی پیشفرض را از sites-enabled حذف کنید.console
$ sudo rm -f /etc/nginx/sites-enabled/default - پیکربندی میزبان مجازی Nginx UI را فعال کنید.console
$ sudo ln -s /etc/nginx/sites-available/nginx-ui.conf /etc/nginx/sites-enabled/ - پیکربندی Nginx را برای خطاها آزمایش کنید.console
$ sudo nginx -tخروجی:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful - برای اعمال تنظیمات، Nginx را مجدداً راهاندازی کنید.console
$ sudo systemctl restart nginx
رابط کاربری Nginx را با Let’s Encrypt TLS ایمن کنید #
- Certbot و افزونه Nginx را نصب کنید.console
$ sudo apt install certbot python3-certbot-nginx -y - فایروال را طوری پیکربندی کنید که ترافیک HTTP و HTTPS را مجاز کند.console
$ sudo ufw allow ۸۰,۴۴۳/tcp
- فایروال را دوباره بارگذاری کنید.console
$ sudo ufw reload - یک گواهی TLS با Let’s Encrypt ایجاد کنید. به جای
nginx-ui.example.comدامنه خود و به جایadmin@example.comایمیل خود را قرار دهید.console$ sudo certbot --nginx -d nginx-ui.example.com -m admin@example.com --agree-tos --no-eff - سرویس nginx-ui را مجدداً راه اندازی کنید.console
$ sudo systemctl restart nginx-ui
دسترسی به رابط کاربری Nginx #
اکنون میتوانید با استفاده از دامنه خود و از طریق HTTPS به رابط وب Nginx UI دسترسی پیدا کنید. برای تکمیل تنظیمات اولیه، این مراحل را دنبال کنید.
- با استفاده از یک مرورگر وب به دامنه خود دسترسی پیدا کنید.
https://nginx-ui.example.com - بررسی کنید که صفحه اطلاعات سیستم بدون خطا نمایش داده شود، سپس روی «Next» کلیک کنید.
- با وارد کردن دستور زیر، یک حساب کاربری مدیر (administrator) ایجاد کنید:
- Your email address
- A username
- A strong password
- برای اعمال پیکربندی، روی Install کلیک کنید.
- با اطلاعات کاربری مدیر خود وارد شوید.
- تأیید کنید که داشبورد، آمار سرور شامل زمان روشن بودن، حافظه، فضای ذخیرهسازی و اطلاعات شبکه را نمایش میدهد.
- برای نظارت بر عملکرد وب سرور، در منوی ناوبری روی Nginx کلیک کنید.
- برای فعال کردن مانیتورینگ Nginx، Enable stub_status module را فعال کنید.
مدیریت گواهینامههای TLS #
رابط کاربری Nginx از مدیریت خودکار گواهی TLS با Let’s Encrypt و سایر مجوزهای گواهی پشتیبانی میکند. برای پیکربندی مدیریت گواهی، این مراحل را دنبال کنید.
- در منوی اصلی، به بخش Certificates بروید.
- برای مشاهده گواهینامههای موجود، روی Certificates List کلیک کنید.
- برای افزودن گواهیهای موجود، روی «Import » یا برای ایجاد گواهیهای جدید، روی « Issue Certificate» کلیک کنید.
- برای پیکربندی APIهای ارائهدهنده DNS برای گواهیهای wildcard، به بخش DNS Credentials بروید.
- برای پیکربندی ارائه دهنده DNS خود، روی Add کلیک کنید.
- برای مدیریت حسابهای مرجع صدور گواهینامه، به ACME User بروید.
- برای ایجاد یک کاربر ACME روی Add کلیک کنید:
- نام کاربری را وارد کنید
- آدرس ایمیل خود را وارد کنید
- از منوی کشویی CA Dir، گزینه https://acme-v02.api.letsencrypt.org/directory را انتخاب کنید.
- فیلدهای Proxy و EAB را خالی نگه دارید.
- برای فعال کردن ثبت خودکار، گزینه Register on Startup را فعال کنید.
- برای ایجاد کاربر ACME، روی Save کلیک کنید.
- بررسی کنید که وضعیت کاربر ACME، «Valid» را نشان دهد.
- برای بررسی جزئیات کاربر ACME، روی View کلیک کنید.
🇫🇷 سرور مجازی فرانسه 🇫🇷
ایجاد پیکربندیهای میزبان مجازی #
برای ایجاد پیکربندیهای جدید میزبان مجازی با استفاده از رابط کاربری Nginx، این مراحل را دنبال کنید.
- یک رکورد DNS زیر دامنه جدید ایجاد کنید که به آدرس IP سرور شما اشاره کند. به عنوان مثال،
app.example.com. - به Terminal در رابط کاربری Nginx بروید.
- یک دایرکتوری برای برنامه وب خود ایجاد کنید.console
$ sudo mkdir -p /var/www/app.example.com - یک فایل HTML نمونه ایجاد کنید.console
$ sudo nano /var/www/app.example.com/index.html - محتوای HTML زیر را اضافه کنید.html
<html> <head> <title>Sample Nginx Virtual Host Application</title> </head> <body> <h1 align="center">Greetings from Negarnovin!</h1> </body> </html>
فایل را ذخیره کنید و ببندید.
- مجوزهای مالکیت مناسب را تنظیم کنید.console
$ sudo chown -R www-data:www-data /var/www/app.example.com - در منوی اصلی، به بخش Manage Sites بروید.
- برای مشاهده پیکربندیهای موجود، روی Sites List کلیک کنید.
- برای ایجاد یک میزبان مجازی جدید، روی Add کلیک کنید.
- میزبان مجازی را پیکربندی کنید:
- نام پیکربندی را وارد کنید
- پورتهای شنود IPv4 و IPv6 را بررسی کنید (۸۰)
- دامنه خود را در فیلد
server_nameوارد کنید. - در فیلد ریشه،
/var/www/app.example.comرا وارد کنید.
- ترتیب فایل فهرست را تنظیم کنید:
index.html,index.htm,index.php. - برای پیکربندی TLS روی Next کلیک کنید.
- گزینه Enable TLS را فعال کنید و روی OK کلیک کنید.
- گزینه Encrypt website with Let’s Encrypt و روی OK کلیک کنید.
- تنظیمات Let’s Encrypt را پیکربندی کنید:
- HTTP01 را به عنوان روش چالش حفظ کنید
- EC256 را به عنوان نوع کلید انتخاب کنید
- کاربر ACME خود را انتخاب کنید
- روی Next کلیک کنید و تولید گواهی را نظارت کنید.
- پنجرهی Let’s Encrypt را ببندید و جزئیات گواهی را تأیید کنید.
- برای اعمال پیکربندی، روی «Next » کلیک کنید.
- بررسی کنید که وضعیت میزبان مجازی Enabled باشد.
- در صورت نیاز، برای تغییر پیکربندی، روی Edit کلیک کنید.
- برای دسترسی به پیکربندی خام، حالت پایه (Basic Mode) را تغییر دهید تا به حالت پیشرفته (Advanced Mode) بروید.
- برای تأیید پیکربندی، به دامنه میزبان مجازی خود دسترسی پیدا کنید.
https://app.example.com
نتیجه گیری #
در این مقاله، شما Nginx UI را روی اوبونتو ۲۴.۰۴ نصب کرده و پیکربندیهای Nginx را روی سرور خود مدیریت کردهاید. میتوانید از Nginx UI برای مدیریت کاربران، پیکربندیهای پیشرفته Nginx، پیکربندیهای میزبان مجازی، ایجاد پشتیبانگیری و نظارت بر عملکرد وب سرور Nginx با استفاده از گزارشها استفاده کنید. علاوه بر این، میتوانید Nginx UI را با MCP ادغام کنید و از مدلهای زبان بزرگ (LLM) برای مدیریت پیکربندیهای خود با استفاده از ویژگی چت در داشبورد وب استفاده کنید. برای اطلاعات بیشتر و پیکربندیها، به مستندات Nginx UI مراجعه کنید.