QUAN TRỌNG: Hướng dẫn này không tương thích với ISPConfig 3.2 trở lên vì ISPConfig 3.2 và các phiên bản mới hơn có Let's encrypt cho tất cả các dịch vụ được tích hợp sẵn. Chứng chỉ SSL Let's encrypt được cấu hình tự động trong quá trình cài đặt, do đó không cần phải cấu hình Let's encrypt cho bất kỳ dịch vụ nào theo cách thủ công nữa.
Tác giả:ahrasis
Hướng dẫn này chỉ cách tạo và cấu hình chứng chỉ SSL Let's encrypt miễn phí cho giao diện ISPconfig (cổng 8080), hệ thống email (Postfix và Dovecot/Courier), máy chủ FTP (pure-ftpd) và Monit. Các lệnh trong hướng dẫn này đã được thử nghiệm trên Ubuntu 16.04, chúng cũng có thể hoạt động với Debian. Có thể cần một số sửa đổi nhất định để làm cho nó hoạt động trên CentOS.
Trợ giúp về hướng dẫn này có sẵn trong chuỗi diễn đàn này.
Hy vọng lệnh này sẽ hoạt động mà không cần thay đổi gì trên máy chủ của bạn.
Kiểm tra xem mã này có tồn tại không bằng cách sử dụng nano /etc/dovecot/dovecot.conf
Tác giả:ahrasis
Hướng dẫn này chỉ cách tạo và cấu hình chứng chỉ SSL Let's encrypt miễn phí cho giao diện ISPconfig (cổng 8080), hệ thống email (Postfix và Dovecot/Courier), máy chủ FTP (pure-ftpd) và Monit. Các lệnh trong hướng dẫn này đã được thử nghiệm trên Ubuntu 16.04, chúng cũng có thể hoạt động với Debian. Có thể cần một số sửa đổi nhất định để làm cho nó hoạt động trên CentOS.
Trợ giúp về hướng dẫn này có sẵn trong chuỗi diễn đàn này.
Tạo trang web bằng tên máy chủ ISPConfig FQDN
Tạo trang web cho máy chủ của bạn trong bảng điều khiển ISPConfig thông qua Sites > Website > Add new website. Hãy nhớ! Đây là trang web máy chủ của bạn và do đó, nó phải chứa tên miền đủ điều kiện của máy chủ (FQDN). Tôi sẽ gọi lệnh này là `hostname -f` trong hướng dẫn này.
Mã:
hostname -f
Truy cập trang web ISPConfig trực tuyến
Kiểm tra xem trang web máy chủ của bạn đã sẵn sàng và có thể truy cập trực tuyến hay chưa vì Let's Encrypt cần xác minh rằng trang web của bạn có thể truy cập được trước khi cấp khóa SSL, chứng chỉ và tệp chuỗi cho trang web máy chủ của bạn. Bạn cũng phải tạo vùng DNS của nó và cho phép nó lan truyền đúng cách vì Let's Encrypt cũng cần xác minh nó.Bật SSL cho Bảng điều khiển ISPConfig 3 (Cổng 8080)
Nếu bạn chưa bật SSL trong quá trình thiết lập ISPConfig tức là cho bảng điều khiển của nó ở cổng 8080, hãy bật nó bằng cách nhập ispconfig_update.sh vào terminal và chọn yes cho SSL. Chúng ta không cần đây là một khóa thích hợp cũng như không muốn giữ nó nhưng chúng ta muốn làm việc nhanh hơn, do đó chúng ta có thể chỉ cần nhập cho tất cả các trường của nó. Khi bạn hoàn tất việc này, SSL tự ký sẽ được bật cho ISPConfig của bạn.Kiểm tra SSL cho Bảng điều khiển ISPConfig 3 (Cổng 8080)
Kiểm tra trình duyệt của bạn để xác nhận bằng cách mở bảng điều khiển ISPConfig tại cổng 8080. Lưu ý rằng bạn có thể nhận được một số cảnh báo ở giai đoạn này vì các tệp SSL được tạo là tự ký nhưng trình duyệt sẽ xác nhận rằng ISPConfig của bạn đã bật SSL hay chưa.Bảo mật trang web ISPConfig bằng Let's Encrypt SSL
Nếu đã thực hiện xong các bước trên, hãy quay lại Bảng điều khiển ISPConfig > Các trang web > Trang web > Tên trang web, sau đó nhấp vào nút SSL và Let's Encrypt và lưu - để tạo các tệp SSL Let's Encrypt và bật chúng cho trang web máy chủ của bạn. Nếu thành công, trang web máy chủ của bạn sẽ sử dụng các tệp SSL Let's Encrypt này nhưng không phải trang ISPConfig 8080 của bạn. Nếu không thành công, bạn sẽ không thể tiếp tục, vì vậy hãy kiểm tra tệp nhật ký của nó để tìm manh mối.Thay đổi Bảng điều khiển ISPConfig 3 (Cổng 8080)
Nếu LE SSL đã hoạt động, hãy vào thiết bị đầu cuối máy chủ của bạn, vào root thông qua sudo su và sử dụng lệnh sau để sao lưu và thay thế các tệp SSL tự ký đã tạo bằng các tệp SSL Let's Encrypt.
Mã:
cd /usr/local/ispconfig/interface/ssl/
mv ispserver.crt ispserver.crt-$(date +"%y%m%d%H%M%S").bak
mv ispserver.key ispserver.key-$(date +"%y%m%d%H%M%S").bak
mv ispserver.pem ispserver.pem-$(date +"%y%m%d%H%M%S").bak
ln -s /etc/letsencrypt/live/$(hostname -f)/fullchain.pem ispserver.crt
ln -s /etc/letsencrypt/live/$(hostname -f)/privkey.pem ispserver.key
cat ispserver.{key,crt} > ispserver.pem
chmod 600 ispserver.pem
- Nếu bạn chưa từng tạo ispserver.pem trước đây, bạn có thể bỏ qua dòng thứ ba có mục đích đổi tên tệp hiện có, nếu có, thành bản sao lưu.
- lưu ý rằng chúng tôi đang sử dụng thư mục trực tiếp Let's Encrypt thay vì thư mục lưu trữ.
- Ngoài ra, hãy lưu ý dòng cuối cùng, nơi ispserver.pem được tạo bằng cách kết hợp các tệp, do đó, tệp này sẽ không được Let's Encrypt tự động gia hạn không giống như các tệp khác mà chúng tôi chỉ liên kết tượng trưng với chúng, do đó, chúng tôi sẽ giải quyết vấn đề này trong phần cuối của hướng dẫn này.
- Lưu ý rằng bạn cũng nhập `hostname -f` hoặc server1.example.com vì kết quả là giống nhau vì `hostname -f` là server1.example.com.
Sử dụng Chứng chỉ SSL Let's Encrypt tương tự cho các dịch vụ lớn khác
Như các mẹo bổ sung, dựa trên Bảo mật cài đặt ISPConfig 3 của bạn, bạn có thể muốn sử dụng liên kết tượng trưng đến ispserver.key hoặc .crt hoặc .pem thay vì trực tiếp trỏ postfix, dovecot, courier, pure-FTPd và monit của bạn đến các tệp SSL Let's Encrypt. Đối với dovecot, nếu nó đã sử dụng các tệp SSL postfix, bạn có thể bỏ qua nó một cách an toàn. Về chi tiết, bạn chỉ cần thực hiện các thao tác sau:a. Đối với Postfix
Mã:
cd /etc/postfix/
mv smtpd.cert smtpd.cert-$(date +"%y%m%d%H%M%S").bak
mv smtpd.key smtpd.key-$(date +"%y%m%d%H%M%S").bak
ln -s /usr/local/ispconfig/interface/ssl/ispserver.crt smtpd.cert
ln -s /usr/local/ispconfig/interface/ssl/ispserver.key smtpd.key
service postfix restart
service dovecot restart
b. Đối với dovecot: (* Lưu ý rằng điều này không nên tồn tại cùng với courier)
Kiểm tra xem mã này có tồn tại không bằng cách sử dụng nano /etc/dovecot/dovecot.conf
Mã:
[...]
ssl_cert =