Virtualmin là một web hosting control panel, được thiết kế để giúp quản lý các trang web, hộp thư người dùng (mailbox users), cơ sở dữ liệu (databases), và các ứng dụng web (web applications) một cách dễ dàng. Cài đặt Virtualmin sẽ cung cấp một web hosting stack đầy đủ tính năng với web, email, databases, bộ lọc spam và antivirus, công cụ phân tích (analytics), v.v.
Trong bài hướng dẫn này, chúng tôi sẽ hướng dẫn cách cài đặt phiên bản miễn phí, Virtualmin GPL. Sau khi hoàn tất, bạn sẽ có thể tạo bất kỳ số lượng tài khoản người dùng (user accounts) nào để host nhiều tên miền (domains) trên một server duy nhất thông qua trình duyệt của mình.
TUYỆT ĐỐI KHÔNG làm theo hướng dẫn này trên một live production server đang chạy sẵn Apache, MySQL và PHP, vì điều này có thể dẫn đến mất dữ liệu. Hãy sử dụng một server mới và chuyển dữ liệu của bạn qua đó.
Chuẩn bị
- Một server Ubuntu đã cài đặt Webmin.
- Một Tên Miền Đầy Đủ (Fully-Qualified Domain Name – FQDN) được cấu hình để trỏ đến server của bạn.
Bước 1: Thiết lập Hostname và FQDN (tùy chọn)
Để Virtualmin hoạt động bình thường, bạn cần cấu hình hostname và FQDN trên chính server bằng cách chỉnh sửa các file /etc/hostname
và /etc/hosts
, cũng như cập nhật cài đặt DNS của bạn để các truy vấn DNS (DNS lookups) được phân giải chính xác.
Đầu tiên, đăng nhập vào server của bạn với người dùng non-root. Sau khi đăng nhập, hãy cập nhật:
sudo apt-get update
Sau đó, cài đặt mọi bản cập nhật và gói cần thiết để đảm bảo bạn bắt đầu với một hệ thống ổn định và mới nhất.
sudo apt-get dist-upgrade -y
Tiếp theo, thay đổi hostname để khớp với FQDN bạn đã trỏ đến server trong phần yêu cầu chuẩn bị.
Để kiểm tra hostname hiện tại của server, chạy lệnh này:
hostname -f
Để thay đổi hostname cho server của bạn, mở file /etc/hostname
bằng trình soạn thảo của bạn:
sudo nano /etc/hostname
Xóa hostname hiện tại và thay thế nó bằng hostname của bạn: /etc/hostname
<mark>your_hostname</mark>
Chỉ sử dụng hostname, không phải toàn bộ FQDN, trong file này. Ví dụ, nếu FQDN của bạn là virtualmin.example.com
, hãy nhập virtualmin
vào file này.
Lưu file và thoát khỏi trình soạn thảo.
Tiếp theo, thêm cả hostname và FQDN vào file /etc/hosts
:
sudo nano /etc/hosts
Sửa đổi dòng bắt đầu bằng 127.0.0.1
để sử dụng FQDN và hostname của bạn, theo thứ tự đó: /etc/hosts
127.0.1.1 <mark>your_hostname.your_domain.com your_hostname</mark>
127.0.0.1 localhost
...
Hãy nhớ thay thế your_hostname
và your_domain.com
bằng hostname và tên miền của riêng bạn. Lưu file và thoát khỏi trình soạn thảo.
Nếu dòng này không tồn tại trong file của bạn, hãy thêm nó vào để tránh một số vấn đề tương thích với các phần mềm khác trên hệ thống Ubuntu của bạn.
Để kiểm tra xem tên đã được thay đổi chính xác chưa, hãy khởi động lại server của bạn.
sudo reboot
Sau đó, ssh vào server của bạn một lần nữa. Bạn sẽ thấy hostname mới trên dấu nhắc terminal của mình. Ví dụ:
your_user@<mark>your_hostname</mark>:~$
Sử dụng lệnh hostname
để xác minh rằng FQDN đã được đặt chính xác:
hostname -f
Bạn sẽ thấy FQDN của mình trong kết quả đầu ra:
<mark>your_hostname</mark>.<mark>your_domain</mark>.com
Nếu không, hãy kiểm tra lại các thay đổi bạn đã thực hiện đối với cấu hình của mình, sửa bất kỳ lỗi nào và khởi động lại.
Tiếp theo, chỉnh sửa file cấu hình mạng để nó sử dụng server này làm một trong các DNS server để phân giải tên miền. Mở file cấu hình:
sudo nano /etc/network/interfaces.d/50-cloud-init.cfg
Thêm địa chỉ IP 127.0.0.1
vào file cấu hình. Tìm dòng sau: /etc/network/interfaces.d/50-cloud-init.cfg
dns-nameservers 8.8.8.8 8.8.4.4
Thay đổi nó thành: /etc/network/interfaces.d/50-cloud-init.cfg
dns-nameservers 8.8.8.8 8.8.4.4 <mark>127.0.0.1</mark>
Đảm bảo có một khoảng trắng trước 127.0.0.1
. Lưu file và thoát khỏi trình soạn thảo.
Bạn đã chuẩn bị xong server bằng cách thiết lập hostname, FQDN và cấu hình mạng. Bây giờ hãy cài đặt Virtualmin.
Bước 2: Cài đặt Virtualmin
Để cài đặt Virtualmin, hãy tải xuống và chạy script cài đặt chính thức của Virtualmin, script này sẽ cài đặt Virtualmin và Webmin, cùng với một LAMP stack, BIND và Postfix.
wget https://software.virtualmin.com/gpl/scripts/install.sh
Mặc dù script này đến từ trang web chính thức của Virtualmin, bạn có thể muốn mở script trong trình soạn thảo của mình và xem lại nội dung trước khi chạy nó.
sudo nano ./install.sh
Khi bạn đã cảm thấy ổn với nội dung của script, hãy sử dụng nó để cài đặt Virtualmin và các thành phần tiên quyết của nó:
sudo /bin/sh ./install.sh
Script sẽ hiển thị một thông báo cảnh báo về dữ liệu hiện có và các hệ điều hành tương thích. Nhấn y
để xác nhận rằng bạn muốn tiếp tục cài đặt.
Script sẽ mất một khoảng thời gian để hoàn thành tất cả các bước vì nó cài đặt nhiều gói phần mềm và thành phần khác nhau.
Sau khi script hoàn tất, bạn có thể cấu hình mật khẩu root.
Bước 3: Cấu hình mật khẩu Root của Webmin
Virtualmin là một add-on của Webmin, và theo mặc định, Webmin sử dụng người dùng và mật khẩu root của hệ thống để đăng nhập giao diện web. Nếu bạn đăng nhập vào server của mình bằng khóa SSH, bạn có thể không có mật khẩu root của hệ thống, hoặc có thể không cảm thấy thoải mái khi sử dụng nó để đăng nhập từ xa qua trình duyệt. Hãy yêu cầu Webmin sử dụng một mật khẩu khác cho giao diện web của nó. Quá trình này sẽ không thay đổi mật khẩu root của hệ thống; nó chỉ yêu cầu Webmin sử dụng mật khẩu bạn chỉ định để đăng nhập.
Để thay đổi mật khẩu root của Webmin, sử dụng lệnh sau:
sudo /usr/share/webmin/changepass.pl /etc/webmin root yourpassword
Thay thế yourpassword
bằng mật khẩu bạn muốn. Bạn có thể bỏ qua bước này nếu đã thực hiện trước đó.
Tiếp theo, khởi động lại dịch vụ Webmin để các thay đổi có hiệu lực.
sudo systemctl restart webmin
Tiếp theo, chúng ta sẽ cấu hình Webmin bằng giao diện web.
Bước 4: Cấu hình Webmin bằng Post-Installion Wizard
Để cấu hình Webmin, chúng ta sẽ sử dụng Trình hướng dẫn sau cài đặt. Mở trình duyệt web và điều hướng đến https://[your_server_ip]:10000
. Bạn cũng có thể sử dụng tên miền đầy đủ của mình để truy cập trang web.
Lưu ý: Trình duyệt của bạn có thể hiển thị cảnh báo “Your connection is not secure” hoặc “Your connection is not private” vì Virtualmin sử dụng chứng chỉ tự ký (self-signed certificate). Cảnh báo này là bình thường. Bạn có thể thêm chứng chỉ Let’s Encrypt SSL sau khi hoàn thành hướng dẫn này.
Đăng nhập với tư cách người dùng root bằng mật khẩu mới thay đổi mà bạn đã đặt ở bước trước.
Sau khi đăng nhập, bạn sẽ thấy màn hình Introduction thông báo rằng bạn đang thực hiện các bước để cấu hình Virtualmin. Nhấn Next để tiếp tục.
Trên màn hình Memory use, chọn No cho Preload Virtualmin libraries, vì bạn không cần chạy giao diện người dùng Virtualmin mọi lúc. Chọn Yes cho Run email domain lookup server để cho phép xử lý mail nhanh hơn. Nhấn Next để tiếp tục.
Trên màn hình Virus scanning, chọn No cho Run ClamAV server scanner để bạn sẽ sử dụng ít RAM hơn. Nhấn Next để tiếp tục.
Trên màn hình Spam filtering, chọn No cho Run SpamAssassin server filter và nhấn Next để tiếp tục.
Ba màn hình tiếp theo cấu hình máy chủ cơ sở dữ liệu:
- Trên màn hình Database servers, chọn Yes cho Run MySQL database server và no cho Run PostgreSQL database server. Nhấn Next để tiếp tục.
- Trên màn hình MySQL password, nhập mật khẩu root MySQL mong muốn của bạn hoặc để mặc định. Mật khẩu này nên khác với mật khẩu root bạn đã sử dụng để đăng nhập vào Webmin.
- Trên màn hình MySQL database size, chọn tùy chọn RAM phù hợp với dung lượng RAM của server bạn. Đối với một server 2GB (hoặc hơn), chọn Huge system (2G or more) on which MySQL is heavily used. Nhấn Next để tiếp tục.
Tiếp theo, bạn sẽ thấy một màn hình như sau, nơi bạn được yêu cầu nhập các nameserver:
Nhập các nameserver chính và phụ của bạn vào đây mà bạn đã cấu hình trong phần yêu cầu chuẩn bị. Nếu bạn chưa thiết lập chúng, hãy chọn ô Skip check for resolvability để tránh thông báo lỗi và tiếp tục.
Ta da! Bạn đã hoàn thành cấu hình sau cài đặt của Virtualmin. Nhấp vào Next để tiếp tục với trình hướng dẫn để cấu hình các tính năng tùy chọn.
Trên màn hình Password storage, chọn Store plain-text passwords nếu bạn phải hỗ trợ khôi phục mật khẩu. Nếu không, hãy chọn Only store hashed passwords.
Nhấp vào Next để đến màn hình SSL key directory, chọn 1 tùy chọn để chọn vị trí cho chứng chỉ SSL.
Tiếp theo, bạn sẽ được chuyển hướng đến thiết lập virtual server mặc định. Chọn No, thanks để thiết lập sau, Virtualmin sẽ sử dụng tên miền được tạo gần nhất làm virtual server mặc định. Nếu không, hãy chọn Create server with domain và nhập tên miền bạn muốn hoặc để mặc định.
Nhấp vào Next…
Cuối cùng, chọn Finish để hoàn tất cấu hình sau cài đặt.
Bạn cũng có thể thấy một thông báo nói rằng cấu hình của Virtualmin chưa được kiểm tra. Nhấp vào nút Re-check and refresh configuration để kiểm tra cấu hình Virtualmin của bạn. Giải quyết bất kỳ lỗi nào mà quá trình kiểm tra báo cáo.
Kết luận
Trong hướng dẫn này, bạn đã học cách cài đặt add-on Virtualmin cho Webmin trên server Ubuntu.
Để tìm hiểu thêm về Virtualmin, hãy xem tài liệu chính thức của Virtualmin. Đừng quên làm quen với tài liệu của Webmin, vì bạn có thể sử dụng Webmin để quản lý các dịch vụ, cài đặt các bản cập nhật và thực hiện các tác vụ quản trị hệ thống khác.
Tham khảo
- https://www.digitalocean.com/community/tutorials/how-to-install-virtualmin-with-webmin-lamp-bind-and-postfix-on-ubuntu-16-04