Bu eğitim macOS’ta SSL sertifikasının nasıl kurulacağını açıklar. Sertifikanızı ve CA paketinizi Keychain Access ile içe aktarmayı, birçok mevcut kurulumda hâlâ kullanılan eski macOS Server (Server.app) iş akışını ve Server.app’in artık bulunmadığı güncel macOS sürümleri için gerçekçi yolu kapsar.
Önemli: Apple, macOS Server (Server.app) ürününü sonlandırdı. Web, e-posta ve barındırma hizmetlerinin çoğu 2018’de kaldırıldı ve uygulamanın kendisi Nisan 2022’de kullanımdan çıkarıldı. Son sürüm olan 5.12.2, yalnızca macOS Monterey’e kadar çalışır. Aşağıdaki adımlar, hem eski Server.app yöntemini hem de günümüzdeki yaklaşımı kapsar.
CSR kodu oluşturma
SSL sertifikanızı etkinleştirmek için alan adınız ve kuruluşunuz hakkındaki bilgileri Sertifika Yetkilisine (CA) gönderirsiniz. Bu standart adım, Sertifika İmzalama Talebi veya CSR olarak adlandırılır. İki seçeneğiniz vardır:
- CSR’yi otomatik olarak oluşturmak için CSR Generator aracımızı kullanın.
- macOS’ta CSR nasıl oluşturulur başlıklı adım adım eğitimimizi izleyin.
CSR’yi siparişiniz sırasında gönderin. CA, talebinizi doğrulayacak ve onaylandıktan sonra sertifikayı imzalayıp yayınlayacaktır. Sertifika dosyalarını e-posta ile alacaksınız. Bundan sonra, aşağıdaki kurulum adımlarına geçin.
macOS’ta SSL sertifikası kurma
Aşağıdaki adımlar, orijinal macOS Server (Server.app) iş akışını takip eder: CA paketini ve sertifikayı Keychain Access ile içe aktarın, ardından sertifikayı Server uygulamasındaki hizmetlere atayın. Mac’inizde artık Server uygulaması yoksa, Adım 2’den sonra Güncel macOS: Server.app yok bölümüne geçin, çünkü Keychain içe aktarma işlemi hâlâ geçerlidir.
Adım 1: Sertifika dosyalarınızı hazırlayın
CA’nın size gönderdiği ZIP arşivini indirin ve çıkarın. Elinizde .crt uzantılı bir dosya (birincil sertifikanız) ve .ca-bundle uzantılı bir dosya (kök ve ara sertifikalar, aynı zamanda CA paketi olarak da adlandırılır) olmalıdır. Ayrıca CSR ile oluşturduğunuz özel anahtara da gerek duyacaksınız.
Adım 2: .ca-bundle dosyasını Keychain Access’e ekleyin
CA paketiyle başlayın. Bu paket, tarayıcıların ve istemcilerin güvenilir bir köke kadar bir güven zinciri oluşturmak için kullandığı kök ve ara sertifikaları barındırır. Bunlar olmadan, ziyaretçiler “güvenli değil” veya güvenilmeyen sertifika uyarısı görebilir.
- .ca-bundle uzantılı dosyayı bulun.
- Keychain Access‘i açın (Spotlight ile arayın veya Uygulamalar > Yardımcı Programlar içinde bulun).
- .ca-bundle dosyasını sürükleyip Keychain Access penceresine bırakın. Tüm kullanıcılar ve hizmetler için geçerli olması için System anahtarlığına ekleyin.
- İçe aktarmayı onaylamak için arama çubuğuna CA’nızın adını yazın. Ara sertifikaları ve kök sertifikayı listelenmiş görmelisiniz.
Aynı işlemi, başsız (headless) veya uzak bir sunucuda faydalı olan Terminal üzerinden de yapabilirsiniz. Bu komut paketi sistem anahtarlığına içe aktarır:
sudo security import yourdomain.ca-bundle -k /Library/Keychains/System.keychain
Adım 3: Birincil sertifikanızı ekleyin (eski Server.app)
Bu adım, kullanımdan kaldırılan Server.app‘i kullanır. Mac’inizde bu uygulama artık yoksa, bunun yerine bir sonraki bölüme bakın.
- Server uygulamasını açın ve Server > Certificates bölümüne gidin.
- Ana sayfada, beklemede olan sertifikaya (CSR’yi oluşturduğunuzda oluşturulan sertifika) çift tıklayın.
- Açılan pencerede, .crt dosyanızı sürükleyip bırakın, ardından OK‘a tıklayın.
- Geçerli bir sertifika artık yayınlayanın adını ve son kullanma tarihini gösterir.
Adım 4: Sertifikayı hizmetlerinize atayın (eski Server.app)
Server uygulamasında, Secure services using ayarını bulun. Açılır menüyü kullanarak SSL sertifikanızı seçin. Dosya paylaşımı veya e-posta gibi belirli hizmetlere atamak için Custom‘a tıklayın ve güvence altına almak istediğiniz hizmetleri seçin. İşiniz bittiğinde OK‘a tıklayın.
SSL sertifikanız artık kuruldu. Sonucu onaylamak ve yaygın sorunları kontrol etmek için SSL Checker aracımızı kullanın.
Güncel macOS: Server.app yok (Keychain ile Apache veya nginx kullanın)
Apple, Server.app’i kullanımdan kaldırdığı için güncel macOS sürümlerinde Server > Certificates ekranı ve hizmet başına sertifika ataması bulunmamaktadır. Sertifikayı Keychain Access’e içe aktarma işlemi (Adım 2) sistem güveni için hâlâ geçerlidir, ancak HTTPS’yi doğrudan bir web sunucusunu yapılandırarak sağlarsınız. macOS, dahili olarak Apache (httpd) ile birlikte gelir ve nginx, Homebrew üzerinden kullanılabilir. Sertifikanızı ve anahtarınızı sunucunun okuyabileceği bir yere, örneğin /etc/ssl/ altına yerleştirin ve özel anahtarın yalnızca root tarafından okunabilir kalmasını sağlayın.
Seçenek A: Dahili Apache (httpd)
/etc/apache2/httpd.conf dosyasını düzenleyin ve SSL modüllerinin ve SSL yapılandırmasının yüklenmesi için şu satırların başındaki # işaretini kaldırın:
LoadModule socache_shmcb_module libexec/apache2/mod_socache_shmcb.so
LoadModule ssl_module libexec/apache2/mod_ssl.so
Include /private/etc/apache2/extra/httpd-ssl.conf
Önce, Apache 2.4.8 ve sonraki sürümlerde SSLCertificateFile‘ın beklediği tam zincir dosyasını (sertifikanızın ardından CA paketi) oluşturun:
cat yourdomain.crt yourdomain.ca-bundle > yourdomain_fullchain.crt
Ardından /etc/apache2/extra/httpd-ssl.conf dosyasını düzenleyin ve 443 portunu dinlediğinden emin olun. Bu dosya zaten kendinden imzalı bir sertifika içeren varsayılan bir <VirtualHost _default_:443> bloğuyla birlikte gelir; bu nedenle, 443 portunda iki sunucu olmasını önlemek için o bloğu düzenleyin veya aşağıdaki sanal sunucuyu ekleyip varsayılanı yorum satırı yapın:
<VirtualHost *:443>
ServerName www.yourdomain.com
DocumentRoot "/Library/WebServer/Documents"
SSLEngine on
SSLCertificateFile /etc/ssl/yourdomain_fullchain.crt
SSLCertificateKeyFile /etc/ssl/private/yourdomain.key
SSLProtocol -all +TLSv1.2 +TLSv1.3
SSLHonorCipherOrder off
</VirtualHost>
Yukarıdaki yollar, özel anahtarın /etc/ssl/private/ içinde olduğunu varsayar; bu dizin macOS’ta varsayılan olarak mevcut olmayabilir. Önce bu dizini oluşturun ve anahtarın yalnızca root tarafından okunabilir kalmasını sağlayın:
sudo mkdir -p /etc/ssl/private
sudo chmod 600 /etc/ssl/private/yourdomain.key
Yeniden başlatmadan önce yapılandırmayı test edin, ardından Apache’yi yeniden başlatın:
sudo apachectl configtest
sudo apachectl restart
Testten Syntax OK mesajını görmelisiniz. Bir hata alırsanız, sunucunun başlatılamamasını önlemek için yeniden başlatmadan önce hatayı düzeltin.
Seçenek B: nginx
nginx kullanıyorsanız, sunucu bloğunuzda tam zincir dosyasına ve anahtara referans verin, ardından yeniden yükleyin:
server {
listen 443 ssl;
server_name www.yourdomain.com;
ssl_certificate /etc/ssl/yourdomain_fullchain.crt;
ssl_certificate_key /etc/ssl/private/yourdomain.key;
ssl_protocols TLSv1.2 TLSv1.3;
}
sudo nginx -t
sudo nginx -s reload
Bir Mac filosunda yapılandırma yönetimi için (eski Profile Manager’ın üstlendiği rol), bunun yerine güncel bir MDM çözümü kullanın. Herhangi bir makineden kurulan sertifikayı doğrulamak için SSL Checker aracımızı kullanın.
Sıkça sorulan sorular
Hayır. Apple, macOS Server’daki barındırma hizmetlerinin çoğunu 2018’de kaldırdı ve uygulamanın kendisini Nisan 2022’de sonlandırdı. Son sürüm olan 5.12.2, yalnızca macOS Monterey’e kadar çalışır ve daha yeni macOS sürümlerinde desteklenmez. Güncel macOS’ta, Server uygulamasını kullanmak yerine sertifikaları Keychain Access’e içe aktarır ve Apache veya nginx’i doğrudan yapılandırırsınız.
Sistemin zinciri güvenmesi için CA paketini ve sertifikanızı Keychain Access’e içe aktarın, ardından web sunucunuzu sertifika ve özel anahtara yönlendirin. macOS, Apache içerir (/etc/apache2/ içinde yapılandırılır) ve nginx’i Homebrew üzerinden kurabilirsiniz. Apache’de SSLCertificateFile ve SSLCertificateKeyFile‘ı veya nginx’te ssl_certificate ve ssl_certificate_key‘ı ayarlayın, ardından yapılandırmayı test edin ve sunucuyu yeniden başlatın.
Güvenilir sertifikalar, Keychain Access tarafından yönetilen anahtarlıklarda bulunur. Sistem geneli sertifikalar, /Library/Keychains/System.keychain adresinde saklanan System anahtarlığına gider. Web sunucunuzun okuduğu sertifika ve özel anahtar dosyaları, sunucu yapılandırması onlara işaret ettiği ve anahtar yalnızca root tarafından okunabilir kaldığı sürece başka bir yere, örneğin /etc/ssl/ altına yerleştirilebilir.
Evet. CA paketi, tarayıcıların ve istemcilerin tam bir güven zinciri oluşturmasını sağlayan ara ve kök sertifikaları içerir. Bunu atlarsanız, bazı ziyaretçiler güvenilmeyen veya eksik bir sertifika zinciri uyarısı görür. .ca-bundle dosyasını Keychain Access’e içe aktarın veya Apache ya da nginx için sertifikanızın ardına ekleyerek tek bir tam zincir dosyası oluşturun.
Sitenizi bir tarayıcıda açın ve kilit simgesini kontrol edin, veya sunucunun sunduğu sertifikayı okumak için Terminal’den OpenSSL ile sunucuyu sorgulayın:echo | openssl s_client -connect yourdomain.com:443 -servername yourdomain.com 2>/dev/null | openssl x509 -noout -issuer -dates
Bu komut, yayınlayanı ve geçerlilik tarihlerini yazdırır. SSL Checker aracımızla da tam bir dış kontrol çalıştırabilirsiniz.
Bugün SSL Dragon’dan sipariş vererek SSL Sertifikalarında %10 indirimden yararlanın!
Hızlı düzenleme, güçlü şifreleme, %99,99 tarayıcı güvenilirliği, özel destek ve 25 günlük para iade garantisi. Kupon kodu: SAVE10


