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.

1. 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 7 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
– Cài đặt xong, khi connect SSH VPS bạn hãy sử dụng port 2222, không dùng port 22!
– 04/09/2018: Đối với VPS Vultr, nên thực hiện đổi sang DNS Google trước khi cài đặt để tránh lỗi Couldn’t resolve host
– HocVPS Script không hoạt động trên VPS chỉ có IPv6 (gói $2.5 của Vultr)

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

2. Sử dụng HocVPS Script

HocVPS Menu được sử dụng qua lệnh hocvps trên SSH Terminal.

Sau khi cài đặt xong HocVPS Script, bạn có thể sử dụng sFTP để quản lý File, upload code lên thư mục /home/domain.com/public_html/ đồng thời trỏ tên miền về IP VPS và bắt đầu sử dụng.
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.

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.


– 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.
– HocVPS Script hoạt động rất tốt với WordPress, Joomla, Magento, PrestaShop, Xenforo (đã trực tiếp test)

3. 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. Hướng dẫn cài đặt chứng chỉ SSL trên Nginx
  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 4k3 online trên VPS 2GB RAM
  8. Cách xử lý lỗi: Couldn’t resolve host

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


Mặc định, HocVPS Script đã mở các port cần thiết: SSH(2222), HTTP/HTTPS(80/443), HocVPS Admin… Tuy vậy, một số nhà cung cấp VPS (như Google Cloud, Amazon…) có thiết lập tường lửa riêng bên ngoài VPS và mặc định chỉ cho phép port SSH(22) và HTTP(80). Bạn cần mở port thủ công tại trang quản lý VPS bằng cách tạo rule allow trong Networkdefault để áp dụng mặc định cho toàn bộ VPS trong tài khoản.

Tương tự, khi cài đặt và áp dụng HTTPS, bạn cần mở thủ công port 443.
Tagged:

Comment của bạn

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

6,553 Comments

  1. Quang 25 comment

    Mình cài hocvps lên 2 vps
    1 ở US
    1 ở Singapore
    đều của Vultr
    Nhưng ở US thì vào được phpmyadmin, còn vps ở Singapore thì không được

    Mong ad giúp đỡ

    1. Việt Phương Moderator

      Vấn đề này bên HocVPS mới thực hiện được, còn tự bạn thì không thể rồi. Nếu cần thiết bạn có thể reinstall lại VPs hoặc chỉnh sửa Nginx Conf(sẽ có tác dụng mỗi truy cập HocVPS Admin, còn bản thân ở VPS domain chính vẫn là domain.com)

  2. Phùng Trọng Nghĩa 2 comment

    Sau khi cài đặt xong, vào phần setting cào domain vào wp-admin để quản lý thay vì truy cập bằng ip thì từ đó không vào được được wp-admin nữa. Admin giúp với. Website của mình nghiamaker.com

    1. Việt Phương Moderator

      Mình không hiểu ý bạn lắm. Bạn cần truy cập ip/wp-admin á? Trong trường hợp bạn đã thiết lập HTTPS cho không truy cập qua ip nữa nhé

  3. Hoang 2 comment

    mình sử dụng script để cài trên google cloud sử dụng centos 7. Trước khi chạy vẫn ssh đc nhưng cài xong không thể connect với port 2222, mặc dù đã open port trên google cloud. Báo lỗi này : no supported authentication methods

      1. Hoang 2 comment

        – Mình check thì đã open port 2222
        – Mình không connect được qua web console của gg mặc dù đã dùng custorm port. Connect qua putty thì báo Refused key (Đã gen key và add trên metadata của gg)
        Mình là dân không chuyên, thank bác đã support

  4. mrduc 14 comment

    Cho mình hỏi chút.
    Mình cái hocvps script và di chuyển website từ server khác sang. Giờ website đã chạy nhưng có vấn đề về generate hình ảnh. Website của mình sử dụng drupal, khi tạo một bài viết mới thì hình ảnh được lưu trong thư mục sites/default/files của web (ảnh này upload lên vẫn ok). Khi upload 1 ảnh lên còn tự động tạo ra các ảnh có kích thước do mình tự định nghĩ gọi là image style đường dẫn dạng sites/default/files/style/image433x433, sites/default/files/style/image500x500 thì các file ảnh ở trong thư mục này đều không tạo được. Mình đã chạy hocvps và chọn chức năng phân quyền webserver vẫn không được, Không biết có phải cấu hình phần quyền gì nữa không? Mong nhận được sự giúp đỡ của các bạn

    1. mrduc 14 comment

      Mình fix được rồi, lỗi không phải do server mà do một module core của drupal cần được vá lỗi.

    1. Việt Phương Moderator

      Mình chưa hiểu ý bạn lắm, bạn nói cụ thể hơn nhé. Chứ curl bình thường có mặc định rồi
      yum -y install curl

  5. Kay 2 comment

    Cho admin !

    Cho mình hỏi chút mọi server mình cài hoc HocVPS Script.

    Hôm này đều không thể SSH vào server được, Mặc dù đã nhập đúng user và pass. Mọi server của mình đều bị lỗi này. không thể connect được vào.

    Mình dùng Bitvise SSH Client và ZOC Terminal để login nhưng đều không được

    Đây là ảnh thông báo lỗi.

    https://i.imgur.com/zplcK5R.jpg

    Mong admin giúp đỡ mình . Thanks

    1. Việt Phương Moderator

      Bạn connect được qua web console của nhà cung cấp không? Trạng thái sshd như thế nào? Trạng thái tường lửa nữa, nếu CentOS6 thì là Iptables còn CentOS7 là Firewalld

  6. Sơn Khiếu 32 comment

    Chào bạn!
    Sáng nay mình chạy lệnh cài đặt, chờ 1 lúc sốt ruột vào đánh răng. Đánh xong ra thì thấy nó hiện lên màn hình login của VPS.
    Mình log vào và chạy lệnh hocvps thì thấy bình thường.
    Vấn đề ở chỗ mình không biết thông tin password…. và làm thế nào để kết nối ftp lên các website trên đó.

    1. Sơn Khiếu 32 comment

      Mình đã vào đc file chứa thông tin pass. Nhưng sau khi đổi pass Script, mình ko thể truy cập vào đc nữa. Làm cách nào để vào đc.

  7. hoang 22 comment

    có cách nào mình tắt cache images được không nhỉ.
    vì server mình chỉ là images thôi. mà có cache từ clound rồi.
    mà file images thì quá trời tầm cả triệu ảnh.
    nên nó sinh ra cache full ram luôn 🙁
    cám ơn và mong nhận được kiến thức.

      1. hoang 22 comment

        mình cài xong hocvps là up ảnh lên thôi. mọi thứ theo mặc định của hocvps hết

        1. Việt Phương Moderator

          Phần đó HocVPS không cache nhé bạn, không liên quan đến RAM sử dụng. Bạn xem lại, có thể do vấn đề khác

          1. Việt Phương Moderator

            Cho mình kết quả free -m
            Và như ảnh thì Nginx và MySQL của bạn dùng nhiều đó chứ. Có nhiều truy vấn nên ngốn

          2. Việt Phương Moderator

            Như ảnh thì có vấn đề gì đâu bạn? RAM là để dùng, không phải để trống

          3. hoang 22 comment

            full quá nên nhiều ng vào ảnh cũ nên nó lag load ra 522 🙁 mình bị vậy nên mới nên hỏi 🙁

          4. hoang 22 comment

            cái load average của mình tăng cao quá. nên chậm mà mình ko hiểu tại sao nó cao bạn à. giúp mình với

  8. Do Thang 5 comment

    Admin ơi, cho em hỏi với, hay rất thích dùng hocvps và sử dụng đc 2 năm này rồi, nhưng giờ em có cài lại hocvps, khi cài xong, em kết nối lại VPS với port 2222 nhưng toàn ko kết nối đc. ?

      1. Do Thang 5 comment

        Em dùng của Digital Ocean. Centos 7.5 64bit và cài PHP 7.1. 🙁 Admin giúp em với

        1. Việt Phương Moderator

          Bạn reinstall VPS đi. Rồi chạy yum install firewalld -y rồi mới cài đặt HocVPS nhé

          1. Việt Phương Moderator

            Cám ơn bạn đã ủng hộ HocVPS. Hiện tại bạn đã có thể cài đặt bình thường trên VPS DO, không cần thực hiện nhiều bước như mình bảo nữa nhé

  9. Nam 2 comment

    Sao mấy hôm nay cài script xong toàn báo lỗi. nginx mysql không chạy, không login được vào ssh. Login console bình thường

    1. Việt Phương Moderator

      Có thể do kết nối VPS của bạn tới các source nước ngoài kém. Bạn VPs nhà cung cấp nào vậy? Location nào. Trong các trường hợp ý bạn reinstall lại giúp mình

  10. Thai 7 comment

    Mình lỡ đổi tên domain chính giờ truy cập vào các trang cứu lỗi “502 Bad Gateway” mình phải làm thế nào để khắc phục lỗi này cảm ơn !!!

      1. Thai 7 comment

        Không ạ do em viết nhầm tieeng việt nó ra ký tự lằng nhằng ý em đổi thành ko dáu thì lỗi

        1. Việt Phương Moderator

          Ý mình là bạn viết ở đoạn nào chỗ nào cơ?
          Nếu cài mới HocVPS mà lúc nhập domain bạn gõ tiếng Việt gây lỗi thì bạn reinstall VPS sẽ tiện hơn
          Còn nếu lúc thêm domain (bằng menu2 hocvps) bạn gõ tiếng Việt gây lỗi thì bạn xóa Nginx Conf của domain đó trong /etc/nginx/conf.d/ rồi restart lại Nginx là được

          1. Thai 7 comment

            Em viết đoạn khi cài vps ý ạ… lúc đó ko để ý viết tiếng việt nên nó sai sau đó em dùng fpt đổi lại tên thì bị lỗi “502…” ở tất cả các trang

          2. Thai 7 comment

            Cho em hỏi có cách nào được sql trong trường hợp ko vào được gì thế này không? code thì lấy được rồi

          3. Việt Phương Moderator

            Bạn mở /etc/my.cnf xem slow_query_log_file và log-error quy định tên thư mục đường dẫn như thế nào thì bạn tạo đúng như thế để có thể start được MySQL
            Ví dụ: slow_query_log_file=/home/xyz/logs/mysql-slow.log
            log-error=/home/xyz/logs/mysql.log
            Thì tạo lại thư mục home/xyz/logs/ và 2 file mysql.log và mysql-slow.log trong thư mục đó. Sau đó chown mysql:mysql cho 2 file đó và restart lại mysql

  11. Long 4 comment

    Mình có server tại Việt Nam, các truy cập bên nước ngoài rất chậm, vậy mình hỏi có cách nào để tăng tốc độ truy cập cho các truy cập nước ngoài không. cảm ơn!

      1. Long 4 comment

        mình có sử dụng cdn của cloudflare, nhưng truy cập lại thấy chậm hơn trên vps mình có sử dụng Zend OPcache ,Memcached , Redis Cache
        và rất hay xảy xảy ra tình trạng lỗi kết nối đến site
        tường lửa mình có sử dụng của bitninja

        1. Việt Phương Moderator

          Hàng Free CLoudflare thì bạn dùng thi thoảng sẽ còn chậm hơn kết nối trực tiếp

          1. Long 4 comment

            mình hỏi vấn đề, mình không sử dụng được gg analytics khi sử dụng cloudflare, bỏ cloudflare thì gg analytics nhận được dữ liệu luôn

          2. Việt Phương Moderator

            Thì mình ghi rồi đó. Do đường truyền kết nối thì rõ ràng ngoài các giải pháp cache (bạn đã sử dụng rồi) thì còn CDN.
            Và đương nhiên không phải mỗi Cloudflare có CDN. Và hàng free CDN từ Cloudflare thì có ảnh hưởng kết nối trong một số trường hợp
            Ngoài ra, còn giải pháp load blancing, khi đó bạn cần VPS ở nước ngoài

  12. Nguyen Dinh Phu 7 comment

    AD cho mình hỏi.
    Mình muốn sử dụng Notepad++ kết nối tới port 21 (FTP) để sửa code như trên host bình thường thì làm thế nào nhỉ …
    Mấy hosting khác nhập port 21 rồi nhập user là vào edit code trên host BT mà mình làm ở đây ko đc. Cảm ơn.

    1. Việt Phương Moderator

      Để kết nối được FTP thì bạn cần
      1. Mở port FTP 21
      2. Cài đặt FTP Server
      Ngoài ra, bạn cũng có thể dùng sFTP port SSH (2222)

  13. Dao Quoc Dai 5 comment

    Câu này ngoài lề chút, mong các bác ai biết xin trợ giúp!
    Mình thấy vps ăn nhiều CPU qua, vào trong đánh lệnh “top -c” để xem thằng nào ăn nhiều CPU thì thấy thằng này:

    1606 root 1 -19 400m 9528 2932 S 98.4 0.6 52:46.40 luk-cpu -a xmr-v7 –host xmr.pool.minergate.com –port 45700 –user aprendiss4@mail2tor.com

    Google qua thì thấy đây là tool đào bitcoin, giờ làm sao để tắt nó đi được nhỉ?

    1. Việt Phương Moderator

      Bạn có up gì lung tung lên VPS hay sử dụng theme/plugin lậu không. Còn đúng kia là bị lợi dụng đào coin rồi. Mình nghĩ bạn cài đặt lại thì an toàn hơn nhiều

      1. Dao Quoc Dai 5 comment

        Cảm ơn bạn đã trả lời, mình hỏi cách tắt nó đi để còn backup dữ liệu đó bạn, nó chiếm nhiều CPU quá, không backup nổi, nhưng mình vừa google được cách tắt rồi bạn, trước đó thử chạy lệnh “service luk-cpu stop” mà không được, sau mới nhớ ra có cách tắt theo PID lên đã tìm đúng từ khóa trên google.

        1. Việt Phương Moderator

          kill -9 pid. Mình lại tưởng bạn cần tìm nguồn gốc nó ở đâu

  14. Toàn Nguyễn 1 comment

    Tai sao khi cài mình thường xuyên thấy xuất hiện domain vodien.com thế? Liệu có phải domain của hocvps không?

  15. Dương 4 comment

    chào a luân bây giờ e muốn sửa cái HocVPS Script Admin thành chữ Control Panel thì vào đâu. và thêm vào cuối footer chữ Control Panel by HocVPS