Thứ năm, 17/05/2018 | 00:00 GMT+7

Cách cài đặt Webmin trên Ubuntu 18.04

Webmin là một console dựa trên web cho bất kỳ máy Linux nào, cho phép bạn quản lý server của bạn thông qua giao diện dựa trên web hiện đại. Với Webmin, bạn có thể thay đổi cài đặt cho các gói phổ biến một cách nhanh chóng, bao gồm web server và database , cũng như quản lý user , group và gói phần mềm.

Trong hướng dẫn này, bạn sẽ cài đặt và cấu hình Webmin trên server của bạn và truy cập an toàn vào giao diện với certificate hợp lệ bằng Let's Encrypt và Apache. Sau đó, bạn sẽ sử dụng Webmin để thêm account user mới và cập nhật tất cả các gói trên server của bạn từ trang tổng quan.

Yêu cầu

Để hoàn thành hướng dẫn này, bạn cần :

Bước 1 - Cài đặt Webmin

Đầu tiên, ta cần thêm repository Webmin để có thể dễ dàng cài đặt và cập nhật Webmin bằng trình quản lý gói của ta . Ta thực hiện việc này bằng cách thêm repository vào file /etc/apt/sources.list .

Mở file trong editor :

  • sudo nano /etc/apt/sources.list

Sau đó, thêm dòng này vào cuối file để thêm repository mới:

/etc/apt/sources.list
 . . .  deb http://download.webmin.com/download/repository sarge contrib 

Lưu file và thoát khỏi editor .

Tiếp theo, thêm khóa Webmin PGP để hệ thống của bạn sẽ tin cậy vào repository mới:

  • wget http://www.webmin.com/jcameron-key.asc
  • sudo apt-key add jcameron-key.asc

Tiếp theo, cập nhật danh sách các gói để bao gồm repository Webmin:

  • sudo apt update

Sau đó cài đặt Webmin:

  • sudo apt install webmin

Sau khi quá trình cài đặt kết thúc, bạn sẽ thấy kết quả sau:

Output
Webmin install complete. You can now login to https://your_server_ip:10000 as root with your root password, or as any user who can use `sudo`.

Bây giờ, hãy truy cập an toàn vào Webmin bằng cách đặt nó phía sau web server Apache và thêm certificate TLS / SSL hợp lệ.

Bước 2 - Bảo mật Webmin bằng Apache và Let's Encrypt

Để truy cập Webmin, bạn phải chỉ định cổng 10000 và đảm bảo cổng đó đang mở trên firewall của bạn. Điều này thật bất tiện, đặc biệt nếu bạn đang truy cập Webmin bằng FQDN như webmin. your_domain Ta sẽ sử dụng server ảo Apache để gửi các yêu cầu proxy đến server của Webmin đang chạy trên cổng 10000 . Sau đó, ta sẽ bảo mật server ảo bằng certificate TLS / SSL từ Let's Encrypt.

Đầu tiên, tạo một file server ảo Apache mới trong folder cấu hình của Apache:

  • sudo nano /etc/apache2/sites-available/your_domain.conf

Thêm phần sau vào file , thay thế địa chỉ email và domain của bạn :

/etc/apache2/sites-available/your_domain.conf
 <VirtualHost *:80>         ServerAdmin your_email         ServerName your_domain         ProxyPass / http://localhost:10000/         ProxyPassReverse / http://localhost:10000/ </VirtualHost>  

Cấu hình này yêu cầu Apache chuyển các yêu cầu đến http://localhost:10000 , server Webmin. Nó cũng đảm bảo các liên kết nội bộ được tạo từ Webmin cũng sẽ đi qua Apache.

Lưu file và thoát khỏi editor .

Tiếp theo, ta cần yêu cầu Webmin ngừng sử dụng TLS / SSL, vì Apache sẽ cung cấp điều đó cho ta về sau.

Mở file /etc/webmin/miniserv.conf trong editor :

  • sudo nano /etc/webmin/miniserv.conf

Tìm dòng sau:

/etc/webmin/miniserv.conf
... ssl=1 ... 

Thay đổi 1 thành 0 Điều này sẽ thông báo cho Webmin ngừng sử dụng SSL.

Tiếp theo, ta sẽ thêm domain của bạn vào danh sách các domain được phép, để Webmin hiểu rằng khi ta truy cập console từ domain của bạn , đó không phải là điều gì đó độc hại, chẳng hạn như cuộc tấn công Cross-Site Scripting (XSS) .

Mở file /etc/webmin/config trong editor :

  • sudo nano /etc/webmin/config

Thêm dòng sau vào cuối file , thay thế your_domain bằng domain đủ điều kiện của bạn.

/ etc / webmin / config
 . . .  referers=your_domain 

Lưu file và thoát khỏi editor .

Tiếp theo, khởi động lại Webmin để áp dụng các thay đổi cấu hình:

  • sudo systemctl restart webmin

Sau đó, kích hoạt module proxy_http của Apache:

  • sudo a2enmod proxy_http

Bạn sẽ thấy kết quả sau:

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

Đầu ra đề xuất bạn khởi động lại Apache, nhưng trước tiên, hãy kích hoạt server ảo Apache mới mà bạn đã tạo:

  • sudo a2ensite your_domain

Bạn sẽ thấy kết quả sau cho biết trang web đã được bật:

Output
Enabling site your_domain. To activate the new configuration, you need to run: systemctl reload apache2

Bây giờ hãy khởi động lại Apache hoàn toàn để kích hoạt module proxy_http và server ảo mới:

  • sudo systemctl restart apache2

Lưu ý : Đảm bảo rằng bạn cho phép lưu lượng truy cập đến web server của bạn trên cổng 80 và cổng 443 như trong hướng dẫn yêu cầu Cách cài đặt ngăn xếp Linux, Apache, MySQL, PHP (LAMP) trên Ubuntu 18.04 . Bạn có thể thực hiện việc này bằng lệnh sudo ufw allow in "Apache Full" .

Điều hướng đến http:// your_domain trong trình duyệt của bạn và bạn sẽ thấy trang đăng nhập Webmin xuất hiện.

Cảnh báo: KHÔNG đăng nhập vào Webmin vì ta chưa kích hoạt SSL. Nếu bạn đăng nhập ngay bây giờ, thông tin đăng nhập của bạn sẽ được gửi đến server dưới dạng văn bản rõ ràng.

Bây giờ, hãy cấu hình một certificate để kết nối của bạn được mã hóa trong khi sử dụng Webmin. Để làm điều này, ta sẽ sử dụng Let's Encrypt.

Yêu cầu Certbot tạo certificate TLS / SSL cho domain của bạn và cấu hình Apache để chuyển hướng lưu lượng truy cập đến trang web an toàn:

  • sudo certbot --apache --email your_email -d your_domain --agree-tos --redirect --noninteractive

Bạn sẽ thấy kết quả sau:

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 -------------------------------------------------------------------------------

Kết quả cho biết rằng certificate đã được cài đặt và Apache được cấu hình để chuyển hướng các yêu cầu từ http:// your_domain đến https:// your_domain .

Đến đây bạn đã cài đặt một version hoạt động, bảo mật của Webmin. Hãy xem cách sử dụng nó.

Bước 3 - Sử dụng Webmin

Webmin có các module có thể kiểm soát mọi thứ từ BIND DNS Server đến một thứ đơn giản như thêm user vào hệ thống. Hãy xem cách tạo user mới và sau đó khám phá cách cập nhật gói phần mềm bằng cách sử dụng Webmin.

Để đăng nhập vào Webmin, hãy chuyển đến http:// your_domain và đăng nhập bằng user gốc hoặc user có quyền sudo.

Quản lý user và group

Hãy quản lý user và group trên server .

Đầu tiên, hãy nhấp vào tab Hệ thống , sau đó nhấp vào nút User và Group . Từ đây, bạn có thể thêm user , quản lý user hoặc thêm hoặc quản lý một group .

Hãy tạo một user mới có tên là deploy được dùng để lưu trữ các ứng dụng web. Để thêm user , hãy nhấp vào Tạo user mới , ở đầu bảng user . Thao tác này hiển thị màn hình Tạo user , nơi bạn có thể cung cấp tên user , password , group và các tùy chọn khác. Làm theo các hướng dẫn sau để tạo user :

  1. Điền vào Tên user với deploy .
  2. Chọn Tự động cho ID user .
  3. Điền vào Tên thật với tên mô tả như Người Deployment user .
  4. Đối với Thư mục chính , hãy chọn Tự động .
  5. Đối với Shell , hãy chọn / bin / bash từ danh sách thả xuống.
  6. Đối với Mật khẩu , hãy chọn Mật khẩu Bình thường và nhập password bạn chọn.
  7. Đối với Group chính , hãy chọn Group mới có cùng tên với user .
  8. Đối với Group phụ , chọn sudo từ danh sách Tất cả group và nhấn nút -> để thêm group vào danh sách group .
  9. Nhấn Create để tạo user mới này.

Khi tạo user , bạn có thể đặt các tùy chọn về thời hạn sử dụng password , shell của user hoặc liệu họ có được phép sử dụng folder chính hay không.

Tiếp theo, hãy xem cách cài đặt các bản cập nhật cho hệ thống của ta .

Cập nhật các gói

Webmin cho phép bạn cập nhật tất cả các gói của bạn thông qua giao diện user của nó. Để cập nhật tất cả các gói của bạn, hãy nhấp vào liên kết Trang tổng quan , sau đó tìm trường Cập nhật gói . Nếu có sẵn các bản cập nhật, bạn sẽ thấy một liên kết cho biết số lượng các bản cập nhật có sẵn, như thể hiện trong hình sau:

Webmin hiển thị số lượng các bản cập nhật gói có sẵn

Bấm vào liên kết này, sau đó nhấn Cập nhật các gói đã chọn để bắt đầu cập nhật. Bạn có thể được yêu cầu khởi động lại server , điều này bạn cũng có thể thực hiện thông qua giao diện Webmin.

Kết luận

Đến đây bạn có một version Webmin làm việc được bảo mật và bạn đã sử dụng giao diện để tạo user và cập nhật các gói. Webmin cung cấp cho bạn quyền truy cập vào nhiều thứ bạn thường cần truy cập thông qua console và nó sắp xếp chúng theo cách trực quan. Ví dụ: nếu bạn đã cài đặt Apache, bạn sẽ tìm thấy tab cấu hình cho nó trong Server , sau đó là Apache .

Khám phá thêm giao diện hoặc xem wiki Webmin chính thức để tìm hiểu thêm về cách quản lý hệ thống của bạn với Webmin.


Tags:

Các tin liên quan

Cách thiết lập chia sẻ Samba cho tổ chức nhỏ trên Ubuntu 16.04
2018-05-11
Cách tự động hóa triển khai Elixir-Phoenix với Distillery và edeliver trên Ubuntu 16.04
2018-05-03
Cách thiết lập khóa SSH trên Ubuntu 18.04
2018-04-27
Cách nâng cấp lên Ubuntu 18.04 Bionic Beaver
2018-04-26
Có gì mới trong Ubuntu 18.04 Bionic Beaver
2018-04-26
Cách cài đặt và cấu hình Ghost trên Ubuntu 16.04
2018-04-13
Cách lưu trữ một trang web với Caddy trên Ubuntu 16.04
2018-04-12
Cách thiết lập khóa SSH trên Ubuntu 16.04
2018-04-12
Cách đồng bộ hóa dữ liệu đã chuyển đổi từ MongoDB sang Elasticsearch với Transporter trên Ubuntu 16.04
2018-04-05
Cách triển khai trang web Jekyll bằng Git Hooks trên Ubuntu 16.04
2018-03-29