Hướng dẫn cài đặt VestaCP và chuyển dữ liệu người dùng

2 năm trước

 

Giới thiệu

Bảng điều khiển Vesta là một bảng điều khiển mã nguồn mở miễn phí với các trang web, email, cơ sở dữ liệu và các chức năng DNS. Trong hướng dẫn này, bạn sẽ cài đặt bảng điều khiển trên máy chủ Ubuntu hoặc CentOS, cập nhật cổng giao diện quản trị mặc định và tìm hiểu cách di chuyển dữ liệu người dùng từ một cài đặt hiện có

Lưu ý: Vào ngày 8 tháng 4 năm 2018, có một lỗ hổng đã được phái hiện ra trong VestaCP cho phép những kẻ tấn công xâm nhập hệ thống lưu trữ và gửi đi các đường truyền nguy hiểm đến các máy chủ khác. Hậu quả là CloudServer vô hiệu hoá cổng mặc định 8083 của VestaCP. Bài này sẽ hướng dẫn cách update cài đặt để dùng cổng5600.

 

Điều kiện

Để làm theo hướng dẫn này bạn cần:

  • Một máy chủ Ubuntu 16.04 và CentOS 7
  • Bạn sẽ dùng tên miền panel.example.com trong suốt bài hướng dẫn này
  • Hai bản A chỉ ns1.example.com và ns2.example.com  đến máy chủ của bạn
 

Cài đặt VestaCP

Đăng nhập vào máy chủ của bạn thông qua SSH. Vì VestaCP xử lí việc tạo các tài khoản cá nhân nên bài hướng dẫn này sẽ mặc định bạn đang đăng nhập vào với tư cách là người dùng root để thực hiện các cài đặt ban đầu.

Sau khi đăng nhập vào, chuyển đến thư mục tạm thời  /tmp và download tập lệnh cài đặt:

cd /tmp
curl -O https://assets.digitalocean.com/vesta/install-vesta-do.sh

Tập lệnh này bao gồm tập lệnh cài đặt chính thức của VestaCP. Bạn có thể mở trong trình soạn thảo văn bản của bạn để xem nó hoạt động thế nào.  Nó sử dụng tập lệnh chính thức để cài đặt phần mềm, sau đó update giao diện admin để dùng cổng 5600.

Làm cho tập lệnh có thể dùng được:

chmod +x install-vesta-do.sh

Cuối cùng, chạy tập lệnh để cài đặt VestaCP. Bạn có thể dùng bất kỳ tùy chọn nào được hỗ trợ bởi tập lệnh cài đặt chính thức, mà bạn có thể tìm thấy trên trang cài đặt của VestaCP. Chúng ta sẽ sử dụng tùy chọn --force, vì nếu không trình cài đặt có thể phàn nàn về một nhóm quản trị viên hiện có trên một số máy:

./install-vesta-do.sh --force

Tập lệnh sau sẽ hỏi một vài câu hỏi rồi sau đó mất khoảng 5-15 phút để hoàn thành cài đặt. URL cho giao diện admin sẽ được in ra đi kèm với thông tin đăng nhập admin:

Output
Congratulations, you have just successfully installed Vesta Control Panel 
https://panel.example.com:8083 
username: admin 
password: a-random-password

Lưu ý: ban đầu sẽ không chính xác bởi vì bạn vẫn đang dùng cổng 8083. Chính dòng cuối của output cài đặt nên là                                                                                                                                     Configuring to use port 5600 as admin port                                      Update tất cả các cổng tham chiếu 8083 tới cổng5600  trước khi kết nối. URL mẫu sẽ là https://panel.example.com:5600. Sau khi hoàn tất những bước cài đặt ban đầu, bất cứ email nào gửi đến sau đó tới người dùng sẽ sử dụng đúng cổng kết nối.

VestaCP giờ đã xong và đang chạy trên máy chủ của bạn. Nếu bạn đã cài đặt VestaCP trước đó thì hãy tiếp tục thực biện bước tiếp theo nơi chúng ta sẽ chuyển dữ liệu người dùng tới một server mới.

Chuyển dữ liệu người dùng VestaCP giữa các máy chủ với nhau

VestaCP kết nối với một vài tập lệnh để giúp đỡ back-up và phục hồi lại dữ liệu người dùng Chúng ta sẽ đi chuyển tất cả người dùng sử dụng tập lệnh này.

Trên the server you are migrating from, dùng v-backup-users để back up lại tất cả người dùng:

v-backup-users

Lưu ý: Nếu bạn nhận được lồi command not found error when running the backup program, you may need to update your PATH by running: khi chạy chương trình backup thì có lẽ bạn cần update PATH   export PATH=$PATH:/usr/local/vesta/bin                                                                                                         Điều này được xử lí tự động nếu bạn đăng xuất ra và đăng nhập lại sau khi cài đặt VestaCP

Command này sẽ không cho ra bất cứ thông tin nào về trạng thái. Bạn có thể kiểm tra kết quả của file backup trong/backup:

ls /backup
Output
admin.2018-04-11_13-07-02.tar exampleuser.2018-04-11_13-07-02.tar 

Output trên cho thấy 2 người dùng được backup  admin và exampleuser. Để chuyển những filen này tới một server mới , chúng ta sẽ sử dụng tính năng scp. Các bước tiếp theo đây sẽ hoạt động tương tự cho dù bạn có một hoặc nhiều file backup.

Nếu bạn đang sử dụng xác thực password trên server mới thì cách dễ nhất là chuyển file trực tiếp từ server cũ đến server mới như sau:

scp /backup/* root@panel.example.com:/backup/

Điều này sẽ không làm việc dễ dàng nếu bạn sử dụng các khoá SSH thay vì mật khẩu. Trong trường hợp đó, việc tải tệp xuống máy cục bộ của bạn là dễ dàng nhất, sau đó tải chúng lên máy chủ mới. Chúng ta sẽ tạo một thư mục cục bộ tạm thời để giữ các tập tin đầu tiên. Trên dòng lệnh cục bộ của bạn, hãy thực hiện theo các bước sau:

mkdir /tmp/vesta-backups
scp root@old-server.example.com:/backup/* /tmp/vesta-backups/
scp /tmp/vesta-backups/* root@panel.example.com:/backup/

Bây giờ, với file backup .tar đã upload thư mục server mới /backup, đăng nhập lại vào server mới và dùng command v-restore-user để hoàn tất quá trình:

v-restore-user adminadmin.2018-04-11_13-07-02.tar

Lưu ý rằng command v-restore-user cần tên file của file .tar, nhưng không phải cho toàn bộ đườg dẫn tới file. Nó mặc định là tên file mà bạn cung cấp ở bên trong thư mục /backup.

Command sẽ đưa ra một bản tóm tắt các item mà nó đã khôi phục. Lặp lại command này cho mỗi người dùng mà bạn cần khôi phục, thay thế tên người dùng và tệp tin .tar theo yêu cầu

 

Kết luận 

Trong bài hướng dẫn này bạn đã đi cài đặt bảng điều khiển VestaCP, update cổng của giao diện admin mặc địng và chuyển dữ liệu người dùng của một cài đặt trước đó.