Trang chủ Linux Webserver [VestaCP – Phần 3] Thêm SSL cho trang quản trị VestaCP với Let’s Encrypt

[VestaCP – Phần 3] Thêm SSL cho trang quản trị VestaCP với Let’s Encrypt

bởi Thạch Phạm
35 bình luận 4307 views
Khuyến mãi hosting

Như mình nói ở bài cài đặt VestaCP, mặc định nó sẽ tạo ra một chứng chỉ SSL tự ký nên các trình duyệt sẽ cảnh báo bảo mật. Trong bài này chúng ta sẽ đăng ký chứng chỉ SSL miễn phí với Let’s Encrypt để khắc phục lỗi đó.

Mặc định, chứng chỉ tự tạo của VestaCP sẽ chứng thực cho hostname (vd: sv.vnsudo.com) mà chúng ta đã thiết lập khi cài VestaCP. Do vậy việc cần làm của chúng ta là tạo ra một chứng chỉ mới và cho nó dùng trên hostname này. Cụ thể, chúng ta sẽ sử dụng Let’s Encrypt để tạo chứng chỉ SSL miễn phí cho trang quản trị, và kể từ đó bạn sẽ đăng nhập vào trang quản trị bằng đường dẫn https://hostname:8083 thay cho IP, và nó được mã hóa.

Thiết lập lại DNS của hostname

Mặc định VestaCP đã tự tạo ra một tập hợp DNS cho cái hostname này, bây giờ bạn hãy vào mục DNS, tìm cái DNS của hostname và ấn List all records.

sua-dns-hostname01

Sau đó sửa toàn bộ IP có trong đó thành IP chính xác của máy chủ, và đổi ns1.localhost.ltdns2.localhost.ltd thành địa chỉ DNS riêng của bạn đã tạo ở bài trước.

sua-dns-hostname02

Mục đích của bước này là cho cái hostname có thể truy cập được trên trình duyệt và có thể sử dụng được toàn bộ các chức năng khác trên host.

Đồng thời bạn cũng sửa DNS của hostname và trỏ SOA về ns1.domain.com mà bạn đã tạo ở bài trước.

Bây giờ hãy thử gõ hostname trên trình duyệt xem có ra trang It’s worked của VestaCP chưa nhé, nếu nó hiện ra thì được rồi.

Thiết lập chứng chỉ SSL cho Hostname với Let’s Encrypt

Hãy đăng nhập vào máy chủ bằng tài khoản root. Sau đó cài Let’s Encrypt với các lệnh sau:

yum install git -y
git clone https://github.com/letsencrypt/letsencrypt /opt/le
cd /opt/le

Ở trên mình lưu Let’s Encrypt ở thư mục /opt/le nên sau này cần chạy lệnh letsencrypt thì nhớ cd vào thư mục này.

Bây giờ chúng ta tạm tắt NGINX và Apache.

service nginx stop
service httpd stop

Và tạo chứng chỉ SSL từ Let’s Encrypt cho hostname của mình, trong bài mình dùng hostname là sv.vnsudo.com, nhớ thay lại thành hostname của bạn.

./letsencrypt-auto certonly --standalone -d sv.vnsudo.com

Trong lúc cài, nó sẽ hỏi bạn điền email (email để khôi phục chứng chỉ nếu bị mất) và đồng ý điều khoản sử dụng. Chọn Angree và Enter.

vestacp-hostname-le-01

vestacp-hostname-le-02

Và bật tính năng tự động gia hạn chứng chỉ vì mặc định Let’s Encrypt sẽ hết hạn chứng chỉ trong 3 tháng.

/opt/le/letsencrypt-auto renew

Khi tạo xong chứng chỉ của bạn sẽ nằm ở thư mục /etc/letsencrypt/live/sv.vnsudo.com bao gồm cert.pem, privkey.pem, các tập tin khác không cần quan tâm.

Bước cuối cùng là tạo một cái symbolic link các tập tin chứng chỉ này thay thế chi 2 tập tin chứng chỉ tự tạo của VestaCP tại thư mục /usr/local/vesta/ssl.

rm -rf /usr/local/vesta/ssl/certificate.crt
ln -s /etc/letsencrypt/live/sv.vnsudo.com/cert.pem /usr/local/vesta/ssl/certificate.crt
rm -rf /usr/local/vesta/ssl/certificate.key
ln -s /etc/letsencrypt/live/sv.vnsudo.com/privkey.pem /usr/local/vesta/ssl/certificate.key

Và lưu ý, nhớ thay lại tên sv.vnsudo.com thành hostname của bạn kẻo lại sai đường dẫn.

Cuối cùng là khởi động lại VestaCP.

service vesta restart

Bây giờ hãy thử truy cập vào trang quản trị VestaCP bằng hostname nhé. Ví dụ: sv.vnsudo.com:8083 và bạn đã có chứng chỉ SSL hợp lệ.

vestacp-hostname-le-03

Và kể từ giờ này về sau bạn phải truy cập vào trang quản trị VestaCP thông qua hostname nhé vì IP vẫn chưa được cấp chứng chỉ, mà chúng ta lại không thể sử dụng nhiều chứng chỉ cho trang quản trị này nên chịu thôi.

Ở những bài cuối serie mình sẽ hướng dẫn bạn cách cài chứng chỉ SSL với Let’s Encrypt cho các domain thêm vào VestaCP.

 

35 bình luận

Có thể bạn quan tâm

0 0 vote
Article Rating
guest
35 Comments
mới nhất
cũ nhất đánh giá nhiều
Inline Feedbacks
View all comments
Điệp Nguyễn Mộng

Mình dùng vps của Azdigi. Tuy nhiên khi cấu hình tên miền, bên bạn khuyến cáo khi add tên miền thì bỏ phần DNS Support nên các bước còn lại bị khác biệt rất nhiều so với bài hướng dẫn của Thạch. Bạn có hướng dẫn nào riêng cho trường hợp này không Thạch ơi

Quang Tường

Anh ơi sao em bật tính năng gia hạn /opt/le/letsencrypt-auto renew thì báo lỗi “No renewals were attempted.”

sinh

Mình chạy xong nó báo vầy 🙁
//i.imgur.com/yd8xYor.jpg
Sai ở đâu vậy mọi người? Mình truy cập domain.com thì được. còn truy cập sv.domain.com thì không được. nhờ giúp đỡ

sinh

Chào bạn,. Mình truy cập domain thì nó có load được. nhưng sv.domain.com thì nó không động đậy gì hết
Đây là các bản ghi của mình này:
Clouflare: //i.imgur.com/mRTDF8U.jpg
package > gainsboro : //i.imgur.com/cRMOVFm.jpg
User admin : //i.imgur.com/qddmeNv.jpg
Domain : //i.imgur.com/ac9B8pE.jpg
tenmien.com: //i.imgur.com/gSnn76V.jpg//i.imgur.com/ij1rQsw.jpg
sv.tenmien.com: //i.imgur.com/rbkTcVX.jpg//i.imgur.com/B5NnExk.jpg
Nhờ ad hỗ trợ. cảm ơn.

sinh

package > gainsboro : //i.imgur.com/Akeq17a.jpg

sinh

Chào ad.
Nếu mình không muốn dùng DNS theo domain. Vì mình đang dùng DNS của cloudflare. Vậy bài này phải thực hiện như thế nào với DNS cloudflare ad hê?
Cảm ơn bạn.

Huy

Thạch ơi sao mình cài xong thì không vào được web nữa vậy ?
http://prnt.sc/cvtsja
vào là nó báo
http://prntscr.com/cvw3ia

Huy

Thạch ơi không hiểu sao mình cài đặt xong thì web không vào được nữa @@
Mà cũng không hiểu sao reply của mình bị xóa.
http://prnt.sc/cvtsja
Giờ mình vô web thì nó báo ”

Không thể truy cập trang web này

xxxx.com đã từ chối kết nối.

Huy

Thạch ơi cho mình hỏi sau khi mình cài xong thì web không vô được nữa, phải làm sao bây giờ @@
http://prnt.sc/cvtsja

Không thể truy cập trang web này

xxxxxx.com đã từ chối kết nối.

Anh Van

Thạch ơi cho mình hỏi mình đã cài chứng chỉ SSL bằng Let’s Encrypt mà xài được 3 tháng thì nó báonhư hình http://prntscr.com/ctpqam bây giờ mình muốn remove thì làm thế nào? Cảm ơn

James Hồ

Cho mình hỏi mình gõ trang ns1 lên trình duyệt nó không ra hình như Bạn nói mà nó ra cái subdomain là đúng hay sai vậy. Thanks.

Hoàng Ngô

Mình đang dùng VPS của Thạch: Hệ điều hành CentOS, nhưng lúc cài thì nó báo là:

[root@s1 ~]# yum install git -y
Loaded plugins: fastestmirror
Setting up Install Process
Loading mirror speeds from cached hostfile
Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=x86_64&repo=os&infra=stock error was
14: PYCURL ERROR 6 – “Couldn’t resolve host ‘mirrorlist.centos.org'”
Error: Cannot find a valid baseurl for repo: base
[root@s1 ~]#

Mình mới chỉ cài VestaCP như ở phần 1 của series này thôi, chưa có đụng chạm gì thêm. Ko biết là bị lỗi gì

anh Tin

@thach: khi cài ssl ,tôi vào phpmyadmin bị lỗi, bạn thử lỗi này chưa

Tử Vương

không vào dc nha cậu nó báo lỗi Không thể truy cập trang web này xin cho cách khắc phục cậu

Tuan Nguyen

Mình cũng bị lỗi này. Báo lỗi: Your connection is not private. Không hiểu vì sao

Lê Vũ

em cài xong bị lỗi này ạ
Starting vesta-nginx: nginx: [emerg] BIO_new_file(“/usr/local/vesta/ssl/certificate.crt”) failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen(‘/usr/local/vesta/ssl/certificate.crt’,’r’) error:2006D080:BIO routines:BIO_new_file:no such file)
[FAILED]

Hoang Phi

Mình cũng bị lỗi như trên. Không thể restart được Vesta CP. Không biết sữa thế nào. cài lại VestaCP thì tốn công quá.

Van Thinh

mình cũng bị lỗi như vậy nên phải cài lại vestacp từ đầu. chạy lại lệnh như trên thì báo đã tồn tại file
ln -s /etc/letsencrypt/live/sv.hungthinhpy.net/cert.pem /usr/local/vesta/ssl/certificate.crt
ln: failed to create symbolic link ‘/usr/local/vesta/ssl/certificate.crt’: File exists

Văn Thịnh

mình cũng bị lỗi như vậy? ko biết là tại sao?

Lộc

Thạch PHạm cho mình hỏi. VestaCP này chạy cả 2 service NGINX và APACHE cùng lúc luôn hã?

Thế Nguyễn

Thạch cho mình hỏi,

Mình cài VestaCP với Let’s Encrypt, tất cả đều chạy tốt, chỉ riêng thêm port 8083 ở sau để truy cập vào cp lại báo lỗi bảo mật, bạn biết đây là lỗi gì không, hướng dẫn mình cách khắc phục với.

Site mình cài Let’s Encrypt: https://digitalocean.nhtdev.com

Cảm ơn.

Văn Thịnh

bạn Thế Nguyễn cho mình hỏi cách cài của bạn như thế nào mà ko bị lỗi vậy? mình cài trên ubuntu 14, có cần phải cấu hình gì trước khi cài ko? mà panel của bạn cũng có tiếng việt, sao mình ko có chọn ngôn ngữ đc?

Thế Nguyễn

Mình cài trên Centos 7. Unbuntu thì mình không rành lắm, mà bạn có thể nói rõ hơn được không? cấu hình trước khi cài cái gì? Vestacp hay Let’s Encrypt? Còn chọn ngôn ngữ cho CP thì bạn đăng nhập bằng tài khoản admin, trong thanh taskbar trên cùng chọn Tab SERVER, trong Tab SERVER bạn thấy biểu tượng răng cưa nền xanh, rê chuột vào sẽ hiện ra chữ CONFIGURE, bạn Click chuột vào đó, sau đó kéo xuống sẽ thấy phần chọn ngôn ngữ (Default Language) bạn chọn Tiếng Việt thì mã ngôn ngữ là ‘vi’. Có… Xem thêm »

Thiên

mình mua vps bên bạn, cài đến phần nhập email thì bị lỗi này (bạn xem hình đính kèm) lỗi này có thể do lúc đó mình bật bộ gõ unicode, giờ mình phải làm sao, cài lại từ đầu hay là cài lại từ khúc này vậy bạn ./letsencrypt-auto certonly –standalone -d sv.vnsudo.com
[IMG]//i.imgur.com/57s5Atl.png[/IMG]

35
0
Would love your thoughts, please comment.x
()
x