Ca Pham

~ I'm DaD ~
Ca Pham

Ca Pham Created 12 Posts

May 5, 2021

Let’s Encrypt and Vestacp on Centos7

Hướng dẫn cài đặt Let’s Encrypt và VestaCP trên Centos 7

VestaCP là một panel quản lý miễn phí và mạnh mẽ. Được phát triển trên ngôn ngữ PHP. – Trang chủ
Let’s Encrypt là nhà cung cấp chứng chỉ SSL miễn phí, tự động, hoạt động vì lợi ích của cộng đồng. Nó được quản lý bởi Internet Security Research Group (ISRG).
CentOS là một bản phân phối hệ điều hành miễn phí dựa trên Linux kernel. Nó có nguồn gốc từ Red Hat Enterprise Linux (RHEL).

Step 0

Cài đặt Vestacp theo hướng dẫn trên trang chủ

Step 1

Login vào server bằng ssh sau đó di chuyển vào thư mục /usr/local
cd /usr/local

Step 2

Clone Letsencrypt and tool, sẽ tự động tạo 2 thư mục /usr/local/letsencrypt and /usr/local/letsencrypt-vesta
git clone https://github.com/letsencrypt/letsencrypt.git
git clone https://github.com/interbrite/letsencrypt-vesta.git
Note: có thể sẽ bị báo lỗi chưa cài git, khi đó dùng yum cài đặt git như sau:
yum install git -y

Step 3

Tạo thư mục “webroot” nơi mà Letsencrpyt dùng để ghi các file cần thiết khi verification domain
mkdir -p /etc/letsencrypt/webroot

Step 4

Symlink file cấu hình Apache vào trong thư mục conf.d của Apache. Điều này cho phép Apache phục vụ đúng các tệp xác thực từ thư mục webroot ở trên
ln -s /usr/local/letsencrypt-vesta/letsencrypt.conf /etc/httpd/conf.d/letsencrypt.conf

Step 5

Symlink letsencrypt-auto và letsencrypt-vesta vào /usr/local/bin để dễ dàng truy cập
ln -s /usr/local/letsencrypt/letsencrypt-auto /usr/local/bin/letsencrypt-auto
ln -s /usr/local/letsencrypt-vesta/letsencrypt-vesta /usr/local/bin/letsencrypt-vesta

Step 6

Restart webserver:
service httpd restart

Step 7

Sử dụng lệnh để cài đặt Letsencrypt SSL cho domain:
letsencrypt-vesta username domain
chi tiết hơn:
sudo letsencrypt-vesta [-m email] [-u] user1 [domainlist1] […-u userN [domainlistN]]

Tham khảo

Let’sEncrypt VestaCP: https://github.com/interbrite/letsencrypt-vesta

Tip

Sau khi cài đặt xong đến Step 7 ở trên có thể gặp lỗi khi chạy install Let’s Encrypt:
/usr/local/bin/letsencrypt-vesta: line 226: /usr/local/certbot/certbot-auto: No such file or directory
Let’s Encrypt returned an error status. Aborting.
=> Khi đó cần cài đặt thêm certbot-auto như sau:
cd /usr/local
git clone https://github.com/certbot/certbot.git
Sau đó chạy lại step 8, nó sẽ yêu cầu cài thêm các soft phụ thuộc, khi đó cứ chọn Yes thôi.
/usr/local/certbot/certbot-auto --nginx
Tới đây là ngon rồi, nó sẽ hỏi tên domain cần cài đặt, chỉ việc chọn theo số tương ứng là xong.
Nó có cho mình 2 option để chọn, mình chọn đại số 1 vì chưa bít nó khác nhau như thế nào:
1: No redirect – Make no further changes to the webserver configuration.
2: Redirect – Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you’re confident your site works on HTTPS. You can undo this
change by editing your web server’s configuration.

Link tham khảo thêm về Certbot

Certbot: https://certbot.eff.org/lets-encrypt/debianwheezy-nginx