در این مقاله نصب Webmin بر روی Ubuntu را توضیح خواهیم داد. در مقالات قبلی بهصورت کامل دربارهی Webmin و کاربردهای آن صحبت کردیم. همچنین روش نصب Webmin بر روی CentOS را آموزش دادیم. بنابراین بدون مقدمه به سراغ روش نصب Webmin بر روی Ubuntu میرویم.
با این آموزش شما میتوانید Webmin را در سرور خود نصب و پیکربندی کرده و دسترسی به آن را توسط گواهینامه Let’s Encrypt و وب سرور آپاچی (Apache) ایمن کنید.
پیش از شروع نصب به موارد زیر نیاز داریم:
در ابتدا باید مخزن Webmin را اضافه کنیم تا بتوانیم با استفاده از بستههای آن مراحل نصب و بهروزرسانی را انجام دهیم. ما این کار را توسط اضافه کردن مخزن به فایل etc/apt/source.list/ انجام میدهیم.
فایل را در ویرایشگر متن خود باز کنید:
sudo nano /etc/apt/sources.list
سپس این خط را به انتهای فایل ضمیمه کنید تا مخزن جدید اضافه شود:
etc/apt/sources.list/
. . .
deb http://download.webmin.com/download/repository sarge contrib
فایل را ذخیره کرده و از ویرایشگر خارج شوید.
سپس کلید PGP مؤلفهی Webmin را اضافه کنید تا سیستم شما بتواند مخزن جدید را بپذیرد:
wget http://www.webmin.com/jcameron-key.asc
sudo apt-key add jcameron-key.asc
لیست بستهها را بهروزرسانی کنید:
sudo apt update
اکنون میتوانید Webmin را نصب کنید:
sudo apt install webmin
هنگامیکه نصب به پایان رسید، پیغام زیر را مشاهده خواهید کرد:
Output
Webmin install complete. You can now login to
https://your_server_ip:۱۰۰۰۰ as root with your root password, or as any user who can use `sudo`.
مراحل نصب در این مرحله به پایان رسیده و اکنون میتوانیم دسترسی به webmin را با قرار دادن آن در وب سرور آپاچی و اضافه کردن گواهینامه معتبر TLS/SSL ایمن کنیم.
بهمنظور دسترسی به Webmin شما باید پورت شماره ۱۰۰۰۰ را مشخص کرده و مطمئن شوید که این پورت در فایروال شما باز است. البته این کار زیاد مناسب نیست؛ بهخصوص اگر برای دسترسی به Webmin از یک FQDN مانند webmin.your_domain استفاده میکنید. به همین دلیل ما از هاست مجازی آپاچی برای سرور Webmin در پورت ۱۰۰۰۰ استفاده میکنیم. سپس این هاست مجازی را با استفاده از گواهینامهی TLS/SSL از Let’s Encrypt ایمن خواهیم کرد.
ابتدا یک فایل هاست مجازی آپاچی در دایرکتوری پیکربندی آپاچی ایجاد کنید:
sudo nano /etc/apache2/sites-available/your_domain.conf
عبارات زیر را به فایل اضافه کنید (آدرس ایمیل و دامنهی خود را جایگزین کنید).
etc/apache2/sites-available/your_domain.conf/
<VirtualHost *:80>
ServerAdmin your_email
ServerName your_domain
ProxyPass / http://localhost:10000/
ProxyPassReverse / http://localhost:10000/
</VirtualHost>
این پیکربندی به آپاچی فرمان میدهد تا درخواستها را از http://localhost:10000 سرور Webmin عبور دهد. همچنین تضمین میکند که لینکهای درونی تولیدشده توسط Webmin از آپاچی عبور میکنند.
فایل را ذخیره کرده و از ویرایشگر خارج شوید.
سپس باید به Webmin فرمان دهیم که استفاده از TLS / SSL را متوقف کند، چون آپاچی این کار را برای ما فراهم خواهد کرد.
فایل etc/webmin/miniserv.conf/ را در ویرایشگر خود باز کنید:
sudo nano /etc/webmin/miniserv.conf
خط زیر را پیدا کنید:
etc/webmin/miniserv.conf/
…
ssl=1
…
عدد ۱ را به ۰ تغییر دهید. با این کار به webmin فرمان میدهید که استفاده از SSL را متوقف کند.
سپس دامنهی خود را به فهرست دامنههای مجاز اضافه خواهیم کرد. با این کار به Webmin میفهمانیم هنگامیکه از دامنهی خود به پنل متصل میشویم، خطری او را تهدید نمیکند.
فایل etc/webmin/config/ را در ویرایشگر خود باز کنید:
sudo nano /etc/webmin/config
خط زیر را به انتهای فایل اضافه کرده و دامنهی خود را جایگزین عبارت your_domain کنید:
etc/webmin/config/
. . .
referers=your_domain
فایل را ذخیره کرده و از ویرایشگر خارج شوید.
سپس webmin را ریستارت کنید تا تغییرات لحاظ شوند:
sudo systemctl restart webmin
سپس ماژول proxy_http آپاچی را فعال کنید:
sudo a2enmod proxy_http
خروجی زیر را مشاهده خواهید کرد:
Output
Considering dependency proxy for proxy_http:
Enabling module proxy.
Enabling module proxy_http.
To activate the new configuration, you need to run:
systemctl restart apache2
این خروجی پیشنهاد میدهد که آپاچی را ریستارت کنید. اما ابتدا باید هاست مجازی آپاچی جدیدی که ایجاد کردهاید را فعال کنید:
sudo a2ensite your_domain
خروجی زیر را مشاهده خواهید کرد که در آن مشخصشده سایت شما فعالشده است:
Output
Enabling site your_domain.
To activate the new configuration, you need to run:
systemctl reload apache2
اکنون آپاچی را ریستارت کنید تا ماژول proxy_http و هاست مجازی جدید فعال شوند:
sudo systemctl restart apache2
نکته: اطمینان حاصل کنید که مجوز ورود ترافیک به وب سرور را در پورتهای ۸۰ و ۴۴۳ داده باشید. این کار را میتوانید از طریق فرمان sudo “ufw allow in “Apache Full انجام دهید.
آدرس http://your domain را در مرورگر خود وارد کنید تا صفحهی ورود به Webmin باز شود.
هشدار: فعلاً وارد Webmin نشوید، چون هنوز SSL را فعال نکردهایم.
در این مرحله باید یک گواهینامه تنظیم کنیم تا هنگام استفاده از Webmin ارتباط ما کدگذاری شود. بدین منظور از Let’s Encrypt استفاده خواهیم کرد.
به Certbot فرمان دهید تا یک گواهینامه TSL/SSL برای دامنهی شما تولید کند و آپاچی را به نحوی پیکربندی کند که ترافیک به سمت سایت امن فرستاده شود:
sudo certbot –apache –email your_email -d your_domain –agree-tos –redirect –noninteractive
خروجی زیر را مشاهده خواهید کرد:
Output
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator apache, Installer apache
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for your_domain
Enabled Apache rewrite module
Waiting for verification…
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/your_domain-le-ssl.conf
Enabled Apache socache_shmcb module
Enabled Apache ssl module
Deploying Certificate to VirtualHost /etc/apache2/sites-available/your_domain-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/your_domain-le-ssl.conf
Enabled Apache rewrite module
Redirecting vhost in /etc/apache2/sites-enabled/your_domain.conf to ssl vhost in /etc/apache2/sites-available/your_domain-le-ssl.conf
——————————————————————————-
Congratulations! You have successfully enabled https://your_domain
You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=your_domain
——————————————————————————-
این خروجی مشخص میکند که گواهینامه نصبشده و آپاچی به صورتی تنظیمشده که درخواستها را از http://your_domain به https://your_domain بفرستد.
خوب تا اینجا موفق شدهایم Webmin را نصب و آن را ایمن کنیم. اکنون بیایید ببینیم که چگونه باید از آن استفاده کنیم.
Webmin ماژولی است که میتواند همهچیز را از BIND DNS سرور گرفته تا اضافه کردن کاربر در سیستم کنترل کند. بیایید ببینیم چگونه میتوانیم کاربر جدید اضافه کنیم و سپس چگونه با استفاده از Webmin بستههای نرمافزاری را بهروزرسانی کنیم.
برای ورود به Webmin آدرس http://your_domain را وارد کرده و سپس یا با کاربر روت یا با کاربر غیر روت با امتیازات sudo وارد شوید.
بهمنظور مدیریت کاربران و گروهها، ابتدا وارد سربرگ System شده و سپس بر روی دکمهی Users and Groups کلیک کنید. در اینجا شما میتوانید یک کاربر یا گروه اضافه کرده و آنها را مدیریت کنید.
ما یک کاربر جدید با نام Deploy ایجاد میکنیم و از آن برای برنامههای میزبانی وب استفاده خواهیم کرد. بدین منظور در بالای جدول کاربران، بر روی عبارت Create a new user کلیک کنید. وارد صفحهای با نام Creat User خواهید شد. در این صفحه شما میتوانید تنظیمات مربوط به نام کاربری، رمز عبور و گروهها را انجام دهید.
برای ایجاد کاربر جدید، مراحل زیر را دنبال کنید:
۱. در قسمت username عبارت deploy را وارد کنید.
۲. برای User ID گزینهی Automatic را انتخاب کنید.
۳. در قسمت Real Name یک نام توصیفی مانند Deployment user وارد کنید.
۴. برای Home Directory گزینهی Automatic را انتخاب کنید.
۵. برای Shell در قسمت پایینی فهرست، گزینهی bin/bash/ را انتخاب کنید.
۶. برای Password گزینهی Normal Password را انتخاب کرده و رمز عبور دلخواه خود را وارد کنید.
۷. برای Primary Group گزینهی New group with same name as user را انتخاب کنید.
۸. برای Secondary Group گزینهی sudo را از فهرست All groups انتخاب کنید. سپس دکمهی -> را بزنید تا گروه را به فهرست in groups اضافه کنید.
۹. گزینهی Create را بزنید تا کاربر جدید ایجاد شود.
در زمان ایجاد کاربر جدید میتوانید تنظیماتی مانند انقضای رمز عبور و Shell را انجام دهید.
اکنون میتوانیم وارد مرحلهی نصب بهروزرسانیها در سیستم خود شویم.
Webmin از طریق رابط کاربری خود به شما اجازه میدهد تا تمام بستهها بهروزرسانی کنید. برای بهروزرسانی بستهها ابتدا وارد لینک داشبورد شده، سپس وارد قسمت Package updates شوید. اگر آپدیت جدیدی در دسترس باشد، لینکی را مشاهده خواهید کرد که در آن به تعداد آپدیتهای در دسترس اشارهشده است. بهعنوانمثال میتوانید تصویر زیر را مشاهده کنید:
بر روی لینک کلیک کنید و Update selected packages را انتخاب کنید تا بهروزرسانی شروع شود. ممکن است از شما خواسته شود تا سرور را ریبوت کنید، که میتوانید این کار را با Webmin انجام دهید.
سینداد یعنی هدیهی سیمرغ، یا فرزند سیمرغ؛ به عبارتی یعنی خود سیمرغ، با همه ی شگفتی هایش، اما جوانتر و سرزنده تر. و این چیزی است که ما سعی می کنیم در سینداد باشیم. از سال ۱۳۸۵ دانش مان را به صورت خدماتی در حوزه ی هاستینگ، شبکه و تولید نرم افزار در اختیار مشتریان مان قرار داده ایم و به این افتخار می کنیم که تک تک آنها تا به امروز همراه ما مانده اند. باور داریم که سینداد صرفاً یک شرکت نیست، بلکه نوعی باور است به ارائه ی شگفت انگیز از هر چیز.