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.

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.

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

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

4,255 Comments

  1. tran hung 27 comment

    cho mình hỏi ở phiên bản hocvps cũ thì có tùy chỉnh ở file này /etc/php-fpm.d/www.conf
    còn ở bản 2.0 thì file đó nằm ở đâu vậy ạ? Cảm ơn.

  2. Ngo Quang Triu 11 comment

    Em add domain xong update code lên mà sao nó cứ báo lỗi này mấy anh nhĩ.

    This page isn’t working

    freeappsdowload.com is currently unable to handle this request.
    HTTP ERROR 500

    1. Việt Phương Moderator

      Lỗi 500 thì bạn kiểm tra php-fpm log nhé. Trong /home/domain_chính/logs. Có thể là hàm PHP không tương thích với phiên bản PHP cài đặt trên VPS

      1. Ngo Quang Triu 11 comment

        Em đã Fix được rồi anh. nhưng giờ bị lỗi này. Là cái web site của em vào link nào nó cũng nhảy về trang home 🙁 Link thì đúng mà giao diện thì hiện giống hệt trang home

        1. Việt Phương Moderator

          Do lỗi rewrite của bạn trước khi dùng Apache. Bạn kiểm tra có .htaccess trong thư mục web không thì đổi tên đi, convert lại RewriteURL sang chuẩn Nginx

          1. Ngo Quang Triu 11 comment

            .htaccess đây ạ, sửa lại sao a giúp e với 🙁
            RewriteEngine on
            RewriteRule ^category/(.*)/(.*)$ category.php?id=$1&slug=$2
            RewriteRule ^channel/(.*)/(.*)$ channel.php?id=$1&slug=$2
            RewriteRule ^video/(.*)/(.*)$ video.php?id=$1&slug=$2
            RewriteRule ^page/(.*)/(.*)$ page.php?id=$1&slug=$2
            RewriteRule ^search/(.*)$ search.php?q=$1
            RewriteRule ^not-found$ notfound.php

          2. Ngo Quang Triu 11 comment

            A giup em với được ko ạ 🙁 em mò tự trưa giờ mà ko được 🙁
            e tìm vào /etc/nginx/conf.d rồi mà ko biết làm gì 🙁

          3. Việt Phương Moderator

            Mình không giúp được bạn à. Bạn convert rule phù hợp hệ thống Nginx xong chèn vào cấu hình Nginx của domain, phần block server listen 80.

          4. Ngo Quang Triu 11 comment

            server {
            listen 80;
            rewrite ^/category/(.*)/(.*)$ /category.php?id=$1&slug=$2;
            rewrite ^/channel/(.*)/(.*)$ /channel.php?id=$1&slug=$2;
            rewrite ^/video/(.*)/(.*)$ /video.php?id=$1&slug=$2;
            rewrite ^/page/(.*)/(.*)$ /page.php?id=$1&slug=$2;
            rewrite ^/search/(.*)$ /search.php?q=$1;
            rewrite ^/not-found$ /notfound.php;
            server_name http://www.domain;
            rewrite ^(.*) http://domain$1 permanent;
            }

            em add thêm vào như thế mà vẫn ko dc a 🙁

          5. Việt Phương Moderator

            Phần block server quy định root, thường là block 80 thứ 2. Và xóa file htacess trong thư mục web đi để Nginx không đọc nó nữa

          6. Ngo Quang Triu 11 comment

            service nginx restart

            e có chạy lện này và nó ra
            service nginx restart
            Redirecting to /bin/systemctl restart nginx.service

            root a nói có phải là reset cả vps ko a

          7. Việt Phương Moderator

            systemctl restart nginx.service là lệnh chuẩn bên CentOS7.
            Tức là chèn sau đoạn này, không phải chèn vào đoạn như bạn
            server {
            listen 80;
            server_name http://www.hocvps.com;
            rewrite ^(.*) http://hocvps.com$1 permanent;
            }
            server {
            listen 80 default_server;
            root /home/hocvps.com/public_html;
            index index.php index.html index.htm;
            server_name hocvps.com;

          8. Ngo Quang Triu 11 comment

            Dạ đúng rồi lúc đầu em chèn vào sau
            listen 80
            cái e đổi lại chèn vào sau “listen 80” thứ 2

          9. Ngo Quang Triu 11 comment

            Thanks a rất nhiều ạ. E mới mò về VPS server có 3 ngày mà nhờ cái trang này biết rất nhiều. Đúng là admin với mod nhiệt tình thật.

  3. erynje 6 comment

    chào ad,
    Mình muốn thay thế domain cho website thì thao tác như thế nào, mình dùng học vps script.

    1. Việt Phương Moderator

      Domain chính nhập lúc cài đặt HocVPs không thay thế được bạn nhé

      1. erynje 6 comment

        vậy giờ mình lại phải tạo cho domain mới rồi chuyển qua hả bạn? Domain cũ hết hạn nên mình bỏ luôn thay bằng domain mới.
        Nhân tiện cho mình hỏi, quên pass Mariadb thì làm sao lấy lại được vậy, cảm ơn bạn nhiều.

        1. Việt Phương Moderator

          Yeap bạn. Một là bạn cứ để đó, đăng nhập HocVPs Admin bằng IP. Hai là bạn cài VPS để nhập domain mới
          Bạn quên pass Mysql tài khoản admin thì đăng nhập HocVPs Admin (trên web) để tiến hành đổi pass mysql tài khoản admin nhé
          Còn nếu bạn quên tài khoản root thì theo hướng dẫn này https://hocvps.com/reset-mysql-root-password/

    2. Ngo Quang Triu 11 comment

      a ơi cái đường dẫn này ở đâu thế a. em tìm mà ko thấy đâu cả 🙁
      /etc/nginx/conf.d/

      1. Việt Phương Moderator

        Nó nằm ở đúng /etc/nginx/conf.d chứ đâu nữa bạn (Nếu hệ thống bạn là HocVPS Script)

  4. Lê Tuấn Kiệt 6 comment

    Chào Ban quản trị hocvps
    Hiện tại em muốn cài mysql để kết nối từ xa đến navicat = máy tính của mình có thể kết nối ban quản trị có thể giúp em ko ạ

  5. Lê Tuấn Kiệt 6 comment

    Cho Em hỏi sao khi cài đặt hocvps xong ? Sao trong hocvps.txt có để pass là
    Thong tin dang nhap mac dinh cho tat ca tool:
    Username: admin
    Password: f115469cd36bc2d03
    Em mysql -u root -p sao đó nhập password dưới thì log nó báo là
    Access denied for user ‘root’@’localhost’ (using password: Y ES)
    Là sao ạ ?

    1. Việt Phương Moderator

      Bạn đăng nhập bằng tài khoản admin nhé. Lệnh trên là tài khoản root rồi
      mysql -u admin -pxxxx

          1. Lê Tuấn Kiệt 6 comment

            Dạ vâng em ghi Coppy lênh như anh thì log nó báo lại là
            ERROR 1045 (28000): Access denied for user ‘admin’@’localhost’ (using password: YES)
            Là sao vậy ạ

          2. Việt Phương Moderator

            Bạn thử đăng nhập tài khoản ý trên PHPMyAdmin có được không. Xem có đúng mật khẩu không

          3. Lê Tuấn Kiệt 6 comment

            Dạ vâng em đã login đc rồi e cứ nhầm lẫn admin là root , cảm ơn anh với a cho e hỏi muốn đổi pass mysql này thì sao ạ ? , với xài hocvps có dễ bị hack mysql ko ạ

          4. Việt Phương Moderator

            Đổi pass mysql thì bạn chỉ đổi pass của tài khoản admin thôi. Bạn truy cập HocVPS Port Admin trên web để đổi pass nhé

          5. Lê Tuấn Kiệt 6 comment

            Nghĩa là đổi tài khoản admin thành tài khoản khác chứ ko đổi đc pass này hả f115469cd36bc2d03 ad mà truy cập vào phpmyadmin hay sao ạ

  6. Hải 17 comment

    Nginx không tự động start khi khởi động server. Có cách nào xử lý không. Minh đã dùng câu lệnh
    chkconfig –add nginx
    chkconfig –levels 235 nginx on
    Nhưng vẫn ko được

    1. Việt Phương Moderator

      Nếu bạn khởi động nginx thủ công thì có thông báo gì vậy?

      1. Hải 17 comment

        Khởi động thủ công không thông báo. Nhưng bắt nhập password. Do mình cài ssl nên bắt nhập pass

  7. thành 4 comment

    Trước mình có nhớ 1 bài comment dạy mở port 2222 ở google cloud đâu mất tiu rồi ấy nhỉ, mình cài server mới mãi k cài đc 🙁

    1. Việt Phương Moderator

      GG Cloud có firewall mặc định allow port 22. Bạn cần add thêm rule cho firewall(chấp nhận thêm 2222). Cụ thể bạn tạo rule trong network default áp dụng mặc định cho VPS là ok
      Ảnh hướng dẫn : http://prntscr.com/een63l

          1. Việt Phương Moderator

            Bạn chỉ việc làm như ảnh, đổi số 2222 thành 2017 hoặc 443. Bên mình không support qua fb hay skype bạn à

Comment của bạn

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