Ana içeriğe geç

Yapılandırma Örneği

Bu sayfa, yaygın "ara yazılım × sertifika formatı" kombinasyonları için eksiksiz yapılandırma örnekleri sağlar. Her örnek iki bölümden oluşur: hizmet tarafındaki sertifika bağlama yapılandırması ve clmBot'un config.yaml kurulum noktası yapılandırması.

Örneklerdeki yollar yalnızca gösterim amaçlıdır; lütfen gerçek ortamınızdaki yollarla değiştirin. Alanların anlamı için Yapılandırma Referansı bölümüne bakın.

nginx + PEM​

Hizmet tarafı sertifika yapılandırması​

nginx site yapılandırmasında ssl_certificate ve ssl_certificate_key aracılığıyla sertifikayı bağlayın:

server {
listen 443 ssl;
server_name example.com;

ssl_certificate /etc/nginx/ssl/example.com.crt;
ssl_certificate_key /etc/nginx/ssl/example.com.key;

location / {
root /usr/share/nginx/html;
}
}
Bilgi

nginx, ssl_certificate dosyasının tam sertifika zincirini (site sertifikası + ara sertifika) içermesini gerektirir. Bu nedenle clmBot kurulum noktasında ca_path alanının boş bırakılması önerilir; clmBot tam sertifika zincirini birleştirip cert_path dosyasına yazar.

clmBot Kurulum Noktası Yapılandırması​

servers:
- id: nginx_pem
sub_code: <证书订阅号>
format:
pem:
cert_path: /etc/nginx/ssl/example.com.crt
ca_path: ""
key_path: /etc/nginx/ssl/example.com.key
after_script: |
nginx -t && nginx -s reload

Apache + PEM​

Sunucu tarafı sertifika yapılandırması​

Apache site yapılandırmasında sertifikayı SSLCertificateFile gibi yönergelerle bağlayın:

<VirtualHost *:443>
ServerName example.com

SSLEngine on
SSLCertificateFile /etc/httpd/ssl/example.com.crt
SSLCertificateKeyFile /etc/httpd/ssl/example.com.key
SSLCertificateChainFile /etc/httpd/ssl/example.com.ca.crt
</VirtualHost>
Bilgi
  • Apache 2.4.8 ve sonraki sürümlerde, sertifika zinciri doğrudan SSLCertificateFile dosyasına birleştirilebilir; bu durumda SSLCertificateChainFile atlanabilir ve clmBot kurulum noktasındaki ca_path buna göre boş bırakılır.
  • Hizmet adını dağıtıma göre seçin: RHEL/CentOS için httpd, Debian/Ubuntu için apache2.

clmBot Kurulum Noktası Yapılandırması​

servers:
- id: apache_pem
sub_code: <证书订阅号>
format:
pem:
cert_path: /etc/httpd/ssl/example.com.crt
ca_path: /etc/httpd/ssl/example.com.ca.crt
key_path: /etc/httpd/ssl/example.com.key
after_script: |
apachectl configtest && systemctl restart httpd.service

Tomcat + JKS​

Sunucu Tarafı Sertifika Yapılandırması​

Tomcat 8.5 ve üzeri sürümlerde conf/server.xml içinde SSLHostConfig ile JKS keystore bağlanır:

<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true">
<SSLHostConfig>
<Certificate certificateKeystoreFile="/opt/tomcat/conf/example.com.jks"
certificateKeystorePassword="<keystore密码>"
certificateKeyAlias="tomcat"
certificateKeyPassword="<私钥密码>"
type="RSA" />
</SSLHostConfig>
</Connector>

clmBot kurulum noktası yapılandırması​

servers:
- id: tomcat_jks
sub_code: <证书订阅号>
format:
jks:
path: /opt/tomcat/conf/example.com.jks
alias: tomcat
key_pass: <私钥密码>
store_pass: <keystore密码>
after_script: |
export JAVA_HOME=/usr/java
/opt/tomcat/bin/shutdown.sh
/opt/tomcat/bin/startup.sh
Bilgi

Tomcat systemd tarafından yönetiliyorsa, after_script işlemi systemctl restart <tomcat 服务名> olarak basitleştirilebilir.

Tomcat + PEM​

Sunucu tarafı sertifika yapılandırması​

Tomcat 8.5 ve üzeri sürümler PEM dosyalarını doğrudan kullanmayı destekler; JKS'ye dönüştürmeye gerek yoktur:

<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true">
<SSLHostConfig>
<Certificate certificateKeyFile="/opt/tomcat/ssl/example.com.key"
certificateFile="/opt/tomcat/ssl/example.com.crt"
certificateChainFile="/opt/tomcat/ssl/example.com.ca.crt"
type="RSA" />
</SSLHostConfig>
</Connector>

clmBot Kurulum Noktası Yapılandırması​

servers:
- id: tomcat_pem
sub_code: <证书订阅号>
format:
pem:
cert_path: /opt/tomcat/ssl/example.com.crt
ca_path: /opt/tomcat/ssl/example.com.ca.crt
key_path: /opt/tomcat/ssl/example.com.key
after_script: |
export JAVA_HOME=/usr/java
/opt/tomcat/bin/shutdown.sh
/opt/tomcat/bin/startup.sh

Özel hizmet + PFX​

Sertifikayı tek dosyalı sertifika paketi (PKCS#12) biçiminde kullanan hizmetler için uygundur; after_script içinde komut dosyası şablon değişkenleri kullanılabilir:

servers:
- id: app_pfx
sub_code: <证书订阅号>
format:
pfx:
path: /opt/app/ssl/example.com.pfx
key_pass: <PFX密码>
after_script: |
echo "certificate updated at {{ .DATETIME }}"
/usr/bin/systemctl restart example-app.service

Doğrulama​

Yapılandırma tamamlandıktan sonra, tüm süreci doğrulamak için bir güncellemeyi manuel olarak tetikleyebilirsiniz:

./clm-bot-linux-amd64 update-certificate

Sertifika dosyalarının güncellendiğini, hizmetin yeniden yüklendiğini ve yeni sertifikanın etkin olduğunu doğruladıktan sonra, otomatik güncellemeyi sertifika güncelleme yöntemine göre yapılandırın.