TLS-ALPN-01, ACME doğrulamasının HTTP yerine doğrudan 443 numaralı portta TLS el sıkışması sırasında yapıldığı yöntemdir (RFC 8737). Port 80'i hiç açmak istemeyen veya TLS sonlandırmasını kendi yapan ortamlar için tasarlanmıştır.
Nasıl çalışır?
- CA, doğrulanacak alan adının 443 portuna bağlanır ve ALPN uzantısında özel
acme-tls/1protokolünü ister. - Sunucu, yalnızca bu doğrulama için hazırlanmış, kendinden imzalı bir sertifika sunar.
- Bu sertifika, kritik işaretli
acmeIdentifieruzantısında (OID 1.3.6.1.5.5.7.1.31) anahtar yetkilendirme dizgisinin SHA-256 özetini taşır. - Sertifika, doğrulanan alan adını SAN olarak içerir; CA değeri kontrol eder ve doğrulamayı tamamlar.
Sertifika normal trafik için kullanılmaz; yalnızca bu el sıkışmada sunulur.
Nerede kullanılır?
- ACME'yi yerleşik destekleyen sunucular ve ters vekiller (örneğin Caddy ve Traefik) gibi 443'te TLS'i kendisi yöneten yazılımlar
- HTTP (80) portunun kapalı olduğu ortamlar
- Yük dengeleyicinin TLS'i olduğu gibi (passthrough) arka uca ilettiği kurulumlar
Sınırlamalar
- Wildcard sertifika alınamaz; bunun için DNS-01 gerekir.
- Web sunucusu veya istemcisi ALPN doğrulamasını özel olarak desteklemelidir; klasik Apache ve Nginx kurulumlarında standart olarak hazır değildir ve certbot'ta yerleşik destek bulunmaz.
- CDN veya TLS'i sonlandıran vekil, doğrulama el sıkışmasını kaynak sunucuya iletmezse başarısız olur.
Sorun gidermek için
openssl s_client -connect alanadi.com:443 -alpn acme-tls/1 -servername alanadi.com
Bu komutla sunucunun doğrulama sırasında özel sertifikayı sunup sunmadığını gözlemleyebilirsiniz; ALPN protokolünün kabul edildiği çıktıda görülür.
Hangisini seçmeli?
Özet
TLS-ALPN-01 nadir kullanılan ama belirli mimarilerde güçlü bir seçenektir. Yalnızca 443 portunu açık tutan, ACME'yi yerleşik bilen yazılımlarla çalışıyorsanız değerlidir; aksi halde HTTP-01 ve DNS-01 daha yaygın ve daha geniş destekli seçeneklerdir.
Web sunucunuz zaten 80 portunu açıksa HTTP-01, wildcard veya CDN arkasındaysanız DNS-01, yalnızca 443 açıksa ve yazılımınız destekliyorsa TLS-ALPN-01 uygundur. Ticari ve kurum doğrulamalı sertifikalarda ACME yerine panel veya API doğrulaması sık kullanılır; SSL sertifikaları ve SSL seçim sayfaları bu konuda yol gösterir. Yayındaki sertifikayı SSL kontrol aracıyla sınayabilirsiniz.