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.3, PHP 7.2, 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à CentOS 7, cả 32bit lẫn 64bit chơi hết. Lưu ý chưa dùng được trên CentOS 8.
  5. Tùy chọn sử dụng cài đặt phiên bản PHP 7.3 (mới nhất), PHP 7.2, PHP 7.1, 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 CentOS 7, bản 32bit hoặc 64bit đều được. Nên sử dụng bản CentOS 7 x64 với PHP 7.3.

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!
– 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.3, có hiệu suất gấp 3 lần so với phiên bản cũ 7.1.
  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.


– Cloudflare CDN chặn truy cập qua port bất thường nên domain sử dụng CDN Cloudflare(đám mây vàng) cần tắt CDN để truy cập domain:port. Nếu không, chỉ truy cập qua ip:port
– 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 (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). Như vậy, bạn cần mở port thủ công tại trang quản lý của nhà cung cấp
Đối với Google Cloud, tạo rule allow trong Networkdefault như hình dưới để áp dụng mặc định cho toàn bộ VPS trong tài khoản.

Đối với EC2, bạn chỉnh ở mục NETWORK&SECURITY - Security Groups - Inbound. Tương tự, bạn cần mở thủ công port HTTPS(443), FTP… nếu cần.
Tagged:

Comment của bạn

Lưu ý: tất cả comment đều được kiểm duyệt cẩn thận! Nếu có code bạn hãy up lên pastebin.com rồi để lại link trong comment.

7,992 Comments

  1. tu 52 comment

    sắp tới Centos 7 cũng không được Update nữa thì người dùng centos 7 sẽ rất dễ bị tấn công khi có các lỗ hổng mới, hiện mình thấy script hocvps đã hỗ trợ Rocky Linux 8 thì mọi người chỉ việc cài lại VPS với Rocky Linux 8 là dùng như Centos nhé, câu lệnh và cách sử dụng giống hệt centos vì Rocky Linux 8 được phát trển giống Centos để tương thích 100% với các lỗi của Red Hat Enterprise

  2. Nguyễn Văn Đức 2 comment

    Chào bạn, hiện mình đã cài xong script hocvps nhưng giờ muốn enable cái modules nginx-mod-http-image-filter.x86_64 thì phải làm sao ạ.
    Cảm ơn

  3. Hai 1 comment

    failure: repodata/repomd.xml from mariadb: [Errno 256] No more mirrors to try.
    http://yum.mariadb.org/10.2/centos7-amd64/repodata/repomd.xml: [Errno 14] HTTP Error 404 – Not Found
    ./install.sh: line 254: ntpdate: command not found
    Mariadb Cai Dat Loi – Vui Long Kiem Tra Va Tien Hanh Cai Dat Lai HocVPS

    ———————-
    Maria cài bản nào không lỗi vậy anh em, tôi cài 10.4 lỗi tung đít, reinstall mấy lần không được mất bao việc.

  4. Tuan 1 comment

    mình bị lỗi này
    Trang này hiện không hoạt động45.32.22.246 đã gửi ý kiến phản hồi không hợp lệ.
    ERR_INVALID_HTTP_RESPONSE

  5. le thuan 13 comment

    chào anh , em dùng hocvps được 1 năm nay nhưng dạo gần đây em mắc một số lỗi . do đứt cáp nên em dùng vpn nhưng sau này em nhận ra chỉ khi bật ip của vpn em mới có thê login vào vps bằng filezila hoặc zoc . em đã reset moden để lấy ip thật mới nhưng cũng không vào được . em check trong banned ip cũng không có ip thật của em . vậy lỗi này là gì ạ

  6. Thiết 2 comment

    Mình cài đặt xong web nhưng khi up ảnh lên bài viết bình thường thì được. nhưng up ảnh ở phần sản phẩm thì lại báo lỗi. Mong ad chỉ cách khắc phục

  7. Huy 10 comment

    Mình cài hocvps script cho CentOS 7 x 64bit, sau đó có phục hồi lại 3 website, 2 site đầu thì chạy ok, tới lúc restore database cho site thứ 3 thì MySql báo lỗi như sau:
    [root@ /]# mysql -u root -p
    Enter password:
    ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: YES)
    [root@ /]#
    Cả nhà cho hỏi là lỗi này là lỗi gì? Và mình khắc phục như thế nào ạ?

  8. Huy 10 comment

    Mình sử dụng hocvps script và Thêm website (chỉ thêm, không cài đặt wordpress) thì bị báo lỗi như sau:

    https://pastebin.com/YxsgwVVD

    Xin cho hỏi lỗi trên là gì và cách xử lý như thế nào ạ?

    Chân thành cảm ơn.

  9. binh vu 1 comment

    hocvps ơi, m đã liên hệ ở phần làm dịch vụ vì muốn nhờ bên bạn làm dịch vụ cài vps nhưng ko thấy bên bạn liên lạc hay trả lời lại, có vấn đề gì ko bạn?

  10. Đức Công 19 comment

    Hình như hpcvps bây giờ ko còn hỗ trợ nữa rồi, thấy bỏ bê lâu quá rồi ko để ý nữa

  11. Anh Hung 2 comment

    Mình dùng vps bằng hocvps nhưng thấy nginx thường xuyên tạo ra những file linh tinh và check cpu thấy nginx thực thi những file đó lên tới hơn 300% CPU, mình check thông tin thì là do nginx tạo ra có cách nào để chặn ko nhỉ, mình bị bên nhà cung cấp sup vps vì lý do khai thác tiền ảo vì cpu lên quá cao

  12. nampham 1 comment

    chào admin hiện tại đã park domain xong rồi
    với web A là web chính, web B là web phụ nhưng khi vào web B click vào 1 bài viết bất kì thì nó lại trỏ ngược sang web A là sao admin nhỉ, mọi người có thể giúp mình được không

  13. Tiến 19 comment

    Chào các bạn,
    Mình muốn xóa hoàn toàn, sạch hết các web không dùng nữa trên hocvps.
    Nhờ các bạn hướng dẫn giúp. Xin cảm ơn

  14. Tinh Vu 14 comment

    Cai dat Let’s Encrypt cho domain bi loi
    Vui long khoi tao ban ghi cho ten mien tro ve IP cua may chu truoc khi cai dat SSL
    Các bác cho e hỏi lỗi này là sao ạ ? e đã trỏ ip về domail trên cloudflare rồi

  15. Tinh Vu 14 comment

    http://IP:port/filemanager/index.php
    up mã nguồn được 1 web, úp tiếp lên web thứ hai để cài thủ công thì báo lỗi :
    Error(s)
    wordpress-6.1.zip : File upload failed
    (nút xóa delete bị ẩn đi ko xóa đc file có sẵn index.html)
    Mong admin kiểm tra giúp. thank

  16. Tinh Vu 14 comment

    Cho mình hỏi
    Cài hocvps xong rồi, add web vô và vào IP:port/filemanager/ để up file wordpress thì up ko lên đc.

    Còn vào ZOC add web và cài tự động wordpress thì ZOC báo lỗi:
    Last login: Fri Nov 11 15:03:16 2022 from 59.153.238.107
    Could not chdir to home directory /home/centos: Permission denied
    -bash: /home/centos/.bash_profile: Permission denied
    -bash-4.2$
    Cho mình có cách khắc phục ko ạ ?. Thank

  17. KDuy 1 comment

    Chào bạn, mình cài hocvps trên máy ảo dạng localhost được không bạn

  18. Tùng 1 comment

    Ad kiểm tra xem tính năng cài SSL số 17 cả tháng nay không hoạt động. Cài đều báo không thành công không hiểu vì sao nhỉ? Những tên miền đã cài đặt thành công rồi thì renew vẫn ngon.

  19. Nam Nguyễn 1 comment

    Mình có lỡ xoá 1 file hình như admin hay file chứa pass admin trong mục private_html > hocvps giờ web bị 403 không vào phần quản lý eXtplorer được nữa thì có cách nào xử lý không ad nhỉ? Nghịch ngu tai hại quá :((

  20. Cảnh Nguyễn 4 comment

    Em gặp lỗi 502 Bad Gateway khi đăng nhập vào tên miền:port/phpmyadmin
    Không biết có ai khắc phục được không ạ
    em xin cảm ơn ạ

  21. Vinh 4 comment

    Mình bị lỗi khi redirect 301 nhiều web trên vps.
    web chính: abc.com 301 sang www1.abc.com – web chính thì nhận binh thường.

    lỗi xảy ra khi redirect web 2 abc2.com 301 sang www2.abc2.com thì bị lỗi abc2.com lại chuyển 301 sang web chính www1.abc.com.

    Ad cho hỏi có cách nào để redirect 301 nhiều domain trên 1 vps mà ko bị lỗi ko?

  22. Bakawap 1 comment

    Có cách nào sử dụng apache thay cho nghinx ko ạ, nghinx ko xài .htaccess dc :((

  23. Hoàng 39 comment

    ./install.sh: line 254: ntpdate: command not found
    Mariadb Cai Dat Loi – Vui Long Kiem Tra Va Tien Hanh Cai Dat Lai HocVPS

    script bị lỗi rồi b ad ơi

    1. Hải 3 comment

      Mình cũng bijh lỗi tương tự, dù chọn ver mariadb cao hơn 10.2 rồi vẫn lỗi

  24. 52 comment

    hocvps script cài trên ubuntu vẫn chưa được hoàn thiện lắm, vẫn bị lỗi vặt
    – mình cài xong nếu chạy lệnh cài wordpress sẵn theo script thì web vẫn lên bình thường,
    – nhưng nếu chuyển web từ local lên vps là bị báo lỗi “Error establishing a database connection” dù đã sửa thông tin file wp-config.php và sửa tab wp_options trong phpmyadmin

  25. Triệu Vỹ 21 comment

    Không biết mình có thể liên hệ qua đâu để nhận hỗ trợ vậy ạ, mình gửi mail đến admin và support thì bị báo “không tìm thấy địa chỉ”

  26. Huy 2 comment

    Mình cài đặt theo lệnh “curl -sO https://hocvps.com/install && bash install” đã điền email và 1 sub domain + port để vào filemanager và php myadmin nhưng khi cài xong không vào đc phpmyadmin bằng subdomain:port nó báo file notfund. Mình dùng Centos 7 SElinux cỦa VULTR

  27. Hong Vi 48 comment

    sao không thấy mấy bài viết Ad cập nhật nhỉ. giờ có sử dụng được. có sử dụng được centos 8 hay hđh nào mới k

  28. Thanh 3 comment

    Mình cài đặt trên Ubuntu 18 thì báo lỗi bên dưới, đã chạy với quyền Root rồi,
    bác support xem giúp mình là lỗi gì với
    Thanks

    root@jp—ubuntu-18-4:/home/ubuntu# curl -sO https://hocvps.com/install && bash install
    install2.sh: line 3: ./install.sh: cannot execute binary file: Exec format error

    1. Thanh 3 comment

      Em cài lại bản ubuntu 20.4 thì gặp lại phải lỗi này

      /lib64/ld-linux-x86-64.so.2: No such file or directory

  29. Binh Nguyen 86 comment

    Hôm nay thử cài thêm domain phụ thì gặp lỗi “No input file specified” mặc dù đã phân quyền 14 qua hocvps.
    Bác @Luân Trần k còn phát triển hocvps nữa hay sao nhỉ?