HocVPS Script là 1 bash script chạy trên SSH sẽ tự động cài đặt tất cả các thành phần cần thiết nhất cho VPS với một dòng lệnh duy nhất.

Không như những Control Panel khác, HocVPS Script không hề sử dụng bất kỳ tài nguyên server (CPU, RAM) và không thể mắc lỗi bảo mật nào để hacker khai thác được nên các bạn có thể hoàn toàn yên tâm sử dụng.

Ngoài ra, webserver sẽ được tự động tối ưu cấu hình để đảm bảo có hiệu suất hoạt động tốt nhất, bảo mật nhất. Ngay cả những bạn mới làm quen với VPS cũng có thể quản lý VPS thông qua menu dòng lệnh đơn giản, gọi bằng lệnh hocvps

HocVPS Script sẽ tự động cài đặt:

  • Webserver Nginx bản mới nhất.
  • Database MariaDB bản mới nhất 10.0 (chính là MySQL được tối ưu).
  • PHP phiên bản mới nhất tùy chọn: PHP 7.1, PHP 7.0, PHP 5.6; đi kèm Zend OPcache
  • phpMyAdmin mới nhất.
  • eXtplorer mới nhất để quản lý File Manager, có thể tạo user, phân quyền riêng biệt.

Những tính năng đặc biệt:

  1. Thông tin cài đặt đơn giản, chỉ cần lựa chọn phiên bản PHP, tên miền chính và port admin là đủ.
  2. Sử dụng Nginx repo thay vì compile từ source như những script khác giúp việc cài đặt Nginx nhanh hơn, sau này có nâng cấp cũng dễ dàng hơn rất nhiều.
  3. Thay thế MySQL bằng MariaDB cho kịp xu hướng (đây là phiên bản cải tiến từ MySQL, hoạt động tương tự nhưng cho hiệu suất cao hơn MySQL; ngoài ra phiên bản mới nhất CentOS 7 chính thức đã hỗ trợ MariaDB).
  4. Tương thích với cả CentOS 6 và 7, cả 32bit lẫn 64bit chơi hết.
  5. Tùy chọn sử dụng cài đặt phiên bản PHP 7.1 (mới nhất), PHP 7.0, PHP 5.6.
  6. Có trình quản lý File Manager eXtplorer trực tiếp ngay trên web.
  7. Tự động cài đặt module Zend Opcache và có thể theo dõi status ngay trên web.
  8. Sử dụng được với cả domain www và non-www, tự động redirect giúp bạn.
  9. Update tự động cho Nginx, PHP, MariaDB.
  10. Theo dõi tình trạng server ngay trên web, có thể sử dụng mobile truy cập mọi nơi.
  11. Thay đổi port SSH mặc định từ 22 sang 2222 hạn chế SSH Brute Force Attack, kèm theo Fail2ban block IP ngay nếu phát hiện login sai 3 lần (áp dụng cả SSH và HocVPS Script Admin).
  12. Toàn bộ thông tin quản lý sẽ được lưu trong file text ở /root/hocvps-script.txt
  13. Tham khảo thêm tính năng mới trong Changelog.

Yêu cầu hệ thống:

  1. RAM: tối thiểu 512MB
  2. Nên tạo swap trước khi cài (nếu sử dụng ổ cứng SSD hoặc RAID10)

Trước khi tiến hành cài đặt, bạn cần nắm một số kiến thức căn bản trong bài Bắt đầu, chủ yếu là cách sử dụng ZOC Terminal kết nối SSH.

Cài đặt HocVPS Script

Đầu tiên các bạn cần chuẩn bị một VPS mới tinh bằng cách Reinstall hoặc Rebuild, sử dụng CentOS 6 hoặc 7, bản 32bit hoặc 64bit đều được. Nên sử dụng bản CentOS 64bit với PHP 7.1

Kết nối SSH sử dụng ZOC Terminal hoặc Putty với tài khoản root. Nếu tài khoản không có quyền root cần cấp quyền bằng cách chạy lệnh sudo su.

Chạy lệnh sau để tiến hành cài đặt:

curl -sO https://hocvps.com/install && bash install
Sau khi cài đặt xong khi connect VPS bạn hãy sử dụng port 2222, không dùng port 22!

***Nếu muốn cài đặt luôn WordPress, hãy tham khảo script tự động cài đặt HocVPS Script và WordPress.

***Học VPS có dịch vụ cài đặt VPS/Server, nếu không muốn mất thời gian bạn hãy sử dụng cho chuyên nghiệp.

Chuẩn bị quá trình cài đặt

Trong bước này bạn cần lựa chọn:

  1. Phiên bản PHP muốn sử dụng: nên dùng PHP 7.1, có hiệu suất gấp 3 lần so với phiên bản cũ 5.6.
  2. Tên miền chính sử dụng với VPS, có thể nhập có www hoặc không có www tùy mục đích sử dụng, script sẽ tự động redirect giúp bạn.
  3. Port admin quản lý server: là port bí mật (nằm trong khoảng 2000 – 9999, thay đổi được sau khi cài) dùng để:
    • Truy cập link quản trị, có dạng: http//domain.com:port/
    • Sử dụng phpMyAdmin, link dạng: http://domain.com:port/phpmyadmin/
    • Quản lý File Manager, link dạng: http://domain.com:port/filemanager/
    • Theo dõi tình trạng hệ thống, link dạng: http://domain.com:port/serverinfo/
    • Theo dõi tình trạng Zend Opcache, link dạng: http://domain.com:port/op.php

Sau đó, bạn cứ để cho script tự động thực hiện quá trình cài đặt, có thể mất từ 3 – 5 phút tùy cấu hình và network của VPS/Server.

Cuối cùng, nếu không có vấn đề gì xảy ra, bạn sẽ nhận được thông báo cài đặt thành công và thông tin quản lý VPS như bên dưới. Đồng thời, thông tin này cũng sẽ được lưu trong file text có đường dẫn /root/hocvps-script.txt để bạn xem lại sau này.

Vậy là server sẵn sàng để bạn sử dụng rồi đấy.

Sử dụng HocVPS Script

Sau khi cài đặt xong HocVPS Script, bạn có thể sử dụng eXtplorer File Manager để quản lý File, upload code lên thư mục /home/domain.com/public_html/, trỏ tên miền về IP VPS và bắt đầu sử dụng.

HocVPS Menu được sử dụng một cách đơn giản qua lệnh hocvps trên giao diện dòng lệnh.
Lưu ý: Sau khi upload source lên thư mục web, các bạn sử dụng hocvps menu 14 Phân Quyền Webserver để Nginx đọc được nội dung website.

Nếu muốn kết nối SSH bạn hãy sử dụng port 2222, không dùng port 22. Login xong, sử dụng lệnh hocvps để truy cập vào menu của script.

Trong quá trình sử dụng, đang ở bất kỳ chức năng nào bạn cũng có thể nhấn Ctrl + C sẽ thoát khỏi Script ngay lập tức.

Bảo mật an toàn tuyệt đối

Mình luôn đặt vấn đề bảo mật và sự đơn giản lên hàng đầu nên từ phiên bản HocVPS Script v1.6 sẽ bổ sung thêm một lớp bảo mật nữa khi truy cập các link có chứa port. Bạn có thể thay đổi password này cho dễ nhớ hơn khi truy cập link quản trị http://domain.com:port/.

Username mặc định cho tất cả các tool là admin, password tự động sinh ra sau khi cài đặt xong server. Nếu bạn nhập sai thông tin quá 3 lần, IP sẽ tự động bị block trong 1h. Nâng thêm thời gian theo hướng dẫn này.

_ Mình có bài viết hướng dẫn các bước cấu hình VPS chuẩn sử dụng HocVPS Script chịu tải lên đến 4k3 online với VPS Vultr 2GB RAM rất hay, bạn nhớ tham khảo nhé.

Cài đặt xong HocVPS Script, các bạn nên thiết lập luôn Script backup tự động nhằm đảm bảo an toàn cho data và database.

Bài viết hay liên quan đến HocVPS Script

  1. Reset password quản lý server HocVPS Script
  2. Rclone – Backup toàn bộ VPS lên Google Drive
  3. Cài đặt chứng chỉ Let’s Encrypt trên server HocVPS Script
  4. Nâng cấp PHP 7 với server sử dụng HocVPS Script (v1.7 trở về trước)
  5. Tự động cài đặt HocVPS Script và WordPress
  6. Script tự động tải và cài đặt WordPress trên VPS
  7. Hướng dẫn config VPS chịu tải lớn với HocVPS Script

Một số vấn đề có thể gặp phải

Trong file config.php bạn hãy chuyển:

$config['Database']['dbtype'] = 'mysql';

thành

$config['Database']['dbtype'] = 'mysqli';

rồi thêm đoạn sau vào: define('DISABLE_HOOKS', true);

1. Đối với phiên bản HocVPS Script hiện tại

Các bạn chỉ cần chạy menu “hocvps” rồi chọn option 15) Nang cap server. Toàn bộ quá trình nâng cấp sẽ được tự động thực hiện.

2. Đối với phiên bản HocVPS Script cũ

PHP

Để kiểm tra phiên bản PHP hiện tại bạn dùng lệnh php -v hoặc php-fpm -v

– Nếu bạn đang dùng PHP 5.4.x và muốn nâng cấp lên bản cao nhất (cùng là 5.4.x)

yum --enablerepo=remi update php\*

– Nếu bạn đang dùng PHP 5.4.x và muốn nâng cấp lên 5.5.x hoặc đang dùng 5.5.x và muốn nâng cấp lên bản cao nhất

yum --enablerepo=remi-php55,remi update php\*

Nginx

Để kiểm tra phiên bản Nginx đang sử dụng bạn dùng lệnh nginx -v hoặc nginx -V

Nâng cấp Nginx lên phiên bản mới nhất:

yum --enablerepo=remi-php55,remi update nginx\*

MySQL-MariaDB

Để kiểm tra phiên bản MariaDB đang sử dụng bạn dùng lệnh mysql -p

Nâng cấp MariaDB lên phiên bản mới nhất:

yum upgrade MariaDB-server MariaDB-client

phpMyAdmin

Bạn hãy xóa toàn bộ file + folder trong thư mục /home/maindomain.com/private_html/ bằng lệnh rm rồi tải script phpMyAdmin mới nhất giải nén vào thư mục này.

Xem thêm hướng dẫn cài đặt phpMyAdmin trên CentOS

Để bảo mật, khi server dùng HocVPS Script không website nào có thể chèn được IFRAME từ site của bạn.

Trong trường hợp cần dùng IFRAME, hãy mở file/etc/nginx/nginx.conf xóa dòng add_header X-Frame-Options SAMEORIGIN; và reload Nginx là được ngay nhé.

service nginx reload

Linode tự động kích hoạt IPv6 nên khi gửi mail tới Gmail sẽ bị lỗi với lệnh test:

echo "Subject: test" | /usr/lib/sendmail -v admin@gmail.com

Để gửi được mail, đơn giản bạn chỉ cần disable IPv6 đi là xong.

HocVPS Script hoạt động rất tốt với WordPress, Joomla, Magento, PrestaShop, Xenforo (đã trực tiếp test).
Tagged:

4,687 Comments

  1. Nguyễn Hải 5 comment

    Mọi người xem giúp mình lỗi này

    You must enable the intl extension to use our script. Please ask your hosting company to enable it.

    Cảm ơn trước nhé <3

    1. Việt Phương Moderator

      Bạn cần intl đó. Bạn chạy yum install php-intl rồi restart php-fpm xem ok không.

  2. Biên Thùy 3 comment

    Tình hình là server 2GB RAM ở vultr, cài có 1 site traffic rất bình thường, khoảng vài trăm visitor 1 ngày mà thi thoảng cứ bị full loaded là thế nào các bạn nhỉ? Server cài hocvps + memcached

    Last Update: 2017-08-15 03:54:25
    Alert Trigger: 2017-08-15 03:55:02

    Average: 1.24 1.02 0.69

    System Load: 100%
    Ram Usage: 35%
    Disk Usage: 37%

    php-fpm 20.2% 131.44 MB nginx (4)
    mysqld 14.5% 131.68 MB mysql (1)
    pure-ftpd 0.4% 11.29 MB nginx (3)
    nginx 0.3% 31.24 MB nginx (1)
    systemd-journal 0.1% 5.21 MB root (1)
    nginx 0% 24.99 MB root (1)
    lfd – sleeping 0% 23.61 MB root (1)
    tuned 0% 15.91 MB root (1)
    polkitd 0% 10.62 MB polkitd (1)
    php-fpm 0% 9.36 MB root (1)

    1. Việt Phương Moderator

      Vì VPS GG có tường lửa của phần quản lý, nằm ngoài phạm vi VPS. Bạn mở thủ công trong Network phần Quản Lý nhé

  3. dũng 92 comment

    Cho mình hỏi có cách nào chống bị chèn file lạ vào sever trong các thư mục website ko ạ
    Mình bị chèn toàn file lạ vào theme hoặc bên ngoài bên trong file toàn những ký tự dài và nhiều . cám ơn hocvps

    1. Việt Phương Moderator

      Bạn dùng hệ thống sạch, không dùng theme/plugin nulled. Nếu tấn công tại các thư mục website thì có thể do ngay chính trong website của bạn chứ không phải từ hướng server. Rà soát lại các thành phần trong website, code cùng check log để kiểm tra các thành phần nghi ngờ

  4. Andy 13 comment

    Hello admin!

    Làm sao vượt qua lỗi “PHP extension “soap” must be loaded” khi cài đặt magento

    Mình đã cài yum install php-soap vẫn không thể qua được!

    Làm ơn giúp đỡ mình

    Cám ơn nhiếu

  5. Minh Thanh 35 comment

    Mình đã cài magento 2 thành công rồi, giờ mình muốn cài Wordpres làm blog, tạo 1 thư mục tên là wp, mình up lên, tạo db xong hết nhưng truy cập link: domain.com/wp thì toàn báo lỗi 404. Bạn nào biết phải thêm dòng gì vào file NGINX nữa, để nó chạy được đây !

    1. Việt Phương Moderator

      Bạn cài wordpress trong thư mục cài magento2? Dạng /home/domain/public/wp trong đó public là thư mục chứa magento2?

        1. Việt Phương Moderator

          Nhớ không nhầm thì root của Magento2 là $MAGE_ROOT/pub. Tức thứ hiển thị trên web là trong thư mục pub, không phải thư mục ngoài cùng đâu bạn

  6. Nguyễn Thành Chung 7 comment

    Chào bạn. Bạn giúp mình chút bạn nhé, hiện tại mình đang cài server hocvps, mình cài wordpress thì sử dụng bình thường, nhưng khi cài drupal thì găp chút vấn đề nhỏ, đó là mình không cấu hình ghi được ảnh vào đường dẫn mình mong muốn, mặc dù mình đã set quyền cho nó về 777. Mình nghĩ trong cấu hình của site chạy drupal đó còn 1 chỗ nào đó cấu để để nó có quyền upload được file vào thư mục đó nhưng mình không biết ở chỗ nào. Mong bạn giúp mình với nhé.Thanks bạn

    1. Việt Phương Moderator

      Về cấu hình ghi về phía server chỉ có chmod và chown. Thường set thư mục đó thuộc nginx:nginx rồi khởi động lại Nginx là ok.
      Còn vẫn không được thì chỉ còn kiểm tra bên code site thôi, cụ thể của từng mã nguồn. Drupal thì mình không dùng nên không rõ cụ thể, chỉ có mò thôi

      1. Nguyễn Thành Chung 7 comment

        Mình đã chmod và chown rồi bạn à. Giả sử hiện tại mình muốn cho nó quyền ghi file ảnh ” e.jpg” vào thư mục “/sites/default/files/styles/medium/public/field/image/” thì đoạn code bên dưới có đúng không bạn.

        location /sites/default/files/styles/medium/public/field/image/ {
        #access_log off;
        # expires 30d;
        #allow all;
        #try_files $uri @rewrite;
        rewrite ^/e.jpg$ /e.jpg;
        }

        1. Việt Phương Moderator

          Đoạn code dưới của bạn không liên quan gì đến quyền upload file vào thư mục cả.

          1. Nguyễn Thành Chung 7 comment

            Cùng sourcode mình sử dụng ở máy chủ apache thì không vấn đề, nhưng khi chuyển sang máy chủ nginx thì nó không cho ghi ảnh vào thư mục “/sites/default/files/styles/medium/public/field/image/”. Có thể do nginx không có mod_rewitre, mình đã chmod 777 và chown nginx:nginx cho thư mục đó rồi, bạn xem có cách nào config giúp mình với dc ko

          2. Việt Phương Moderator

            Mình không hiểu code rewrite thì liên quan gì đến việc upload ảnh ở đây rồi. Case này mình không support đc rồi

  7. Tâm 3 comment

    Ủa a Luân ơi tình hình là như thế này!
    Em cài theo ý anh mọi thứ đã xong xuôi có đều sau 1 thời gian không vào được SSH cũng như FTP. E check thì mạng khác telnet x.x.x.x 2222 thì nó ok nhưng đối với mạng e đang sử dụng thì không connect time out. Bây giờ làm sao anh ơi.

    1. Việt Phương Moderator

      Tức máy khác kết nối SSH ok còn máy bạn thì không? Bạn xem có bị Fail2Ban chặn không?

      1. Tâm 3 comment

        Refused to display ‘url’ in a frame because it set ‘X-Frame-Options’ to ‘sameorigin’. Sau cùng mình bị cái này. Không biết do đâu anh. Vì bên kia nó chạy bình thường e chuyển qua bên kia thì nó báo lỗi này

        1. Việt Phương Moderator

          Hình như đây là lỗi khi bạn truy cập website sử dụng iframe chứ đâu liên quan đến SSH như bạn mô tả. Nếu iframe thì HocVPS chặn sử dụng iframe trong website nhé. Bạn sửa trong Nginx Conf là ok

  8. Thanh Tùng 1 comment

    Khi vào phpmyadmin báo thế này là sao vậy admin ơi. Giúp em với ạ

    #2002 – No such file or directory — The server is not responding (or the local server’s socket is not correctly configured).

    mysqli_real_connect(): (HY000/2002): No such file or directory

    1. Việt Phương Moderator

      Bạn check trên SSH có đăng nhập được MySQl không? Và service có bình thường không

Comment của bạn

Your email address will not be published. Required fields are marked *