{"id":33835,"date":"2025-11-07T19:40:47","date_gmt":"2025-11-07T16:40:47","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=33835"},"modified":"2025-11-07T19:40:47","modified_gmt":"2025-11-07T16:40:47","slug":"ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme\/","title":{"rendered":"Ubuntu 20.04 \u00dczerinde Apache&#8217;yi Let&#8217;s Encrypt ile G\u00fcvenli Hale Getirme"},"content":{"rendered":"<p><body><\/p>\n<h2>Ubuntu 20.04 \u00dczerinde Apache&#8217;yi Let&#8217;s Encrypt ile G\u00fcvenli Hale Getirme<\/h2>\n<p>Ubuntu 20.04 sunucunuzda Apache web sunucusunu Let&#8217;s Encrypt ile g\u00fcvenli hale getirmek, web sitenizin kullan\u0131c\u0131lar\u0131 i\u00e7in veri gizlili\u011fini ve b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc sa\u011flaman\u0131n kritik bir ad\u0131m\u0131d\u0131r. Bu kapsaml\u0131 teknik makale, bu s\u00fcreci ad\u0131m ad\u0131m a\u00e7\u0131klayarak, HTTP&#8217;den HTTPS&#8217;ye g\u00fcvenli bir ge\u00e7i\u015f yapman\u0131za yard\u0131mc\u0131 olacakt\u0131r.<\/p>\n<h3>Giri\u015f: Web G\u00fcvenli\u011finin Temelleri ve Let&#8217;s Encrypt<\/h3>\n<p>G\u00fcn\u00fcm\u00fcz dijital d\u00fcnyas\u0131nda, web sitelerinin g\u00fcvenli\u011fi hi\u00e7 olmad\u0131\u011f\u0131 kadar b\u00fcy\u00fck bir \u00f6nem ta\u015f\u0131maktad\u0131r. Kullan\u0131c\u0131lar\u0131n ki\u015fisel bilgilerini (\u015fifreler, kredi kart\u0131 bilgileri vb.) korumak, veri b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc sa\u011flamak ve arama motoru s\u0131ralamalar\u0131nda avantaj elde etmek i\u00e7in SSL\/TLS (Secure Sockets Layer\/Transport Layer Security) sertifikalar\u0131 vazge\u00e7ilmezdir. SSL\/TLS, web sunucusu ile web taray\u0131c\u0131s\u0131 aras\u0131ndaki ileti\u015fimi \u015fifreleyerek, \u00fc\u00e7\u00fcnc\u00fc taraflar\u0131n verileri okumas\u0131n\u0131 veya de\u011fi\u015ftirmesini engeller. Bir web sitesi HTTPS protokol\u00fcn\u00fc kulland\u0131\u011f\u0131nda, adres \u00e7ubu\u011funda genellikle bir kilit simgesi g\u00f6r\u00fcn\u00fcr ve bu da kullan\u0131c\u0131lara sitenin g\u00fcvenli oldu\u011fu konusunda bir g\u00fcvence verir.<\/p>\n<p>Geleneksel olarak, SSL\/TLS sertifikalar\u0131 sat\u0131n al\u0131nmas\u0131 gereken maliyetli \u00fcr\u00fcnlerdi. Ancak Let&#8217;s Encrypt&#8217;in ortaya \u00e7\u0131k\u0131\u015f\u0131yla bu durum de\u011fi\u015fti. Let&#8217;s Encrypt, Internet Security Research Group (ISRG) taraf\u0131ndan i\u015fletilen, \u00fccretsiz, otomatik ve a\u00e7\u0131k kaynakl\u0131 bir sertifika yetkilisidir (CA). Misyonu, web&#8217;in tamam\u0131n\u0131 \u015fifrelemek ve SSL\/TLS kullan\u0131m\u0131n\u0131 kolayla\u015ft\u0131rmakt\u0131r. Certbot gibi istemci yaz\u0131l\u0131mlar\u0131 sayesinde, Let&#8217;s Encrypt sertifikalar\u0131n\u0131 sunucular\u0131n\u0131za kurmak ve otomatik olarak yenilemek olduk\u00e7a basit hale gelmi\u015ftir. Bu makalede, Ubuntu 20.04 i\u015fletim sistemi \u00fczerinde \u00e7al\u0131\u015fan bir Apache web sunucusunu Let&#8217;s Encrypt ile nas\u0131l g\u00fcvenli hale getirece\u011finizi detayl\u0131 bir \u015fekilde inceleyece\u011fiz.<\/p>\n<h3>\u00d6nko\u015fullar<\/h3>\n<p>Bu rehbere ba\u015flamadan \u00f6nce, a\u015fa\u011f\u0131daki \u00f6nko\u015fullar\u0131n yerine getirildi\u011finden emin olmal\u0131s\u0131n\u0131z:<\/p>\n<p>*   <strong>Ubuntu 20.04 Sunucusu:<\/strong> SSH eri\u015fimi olan ve <code>sudo<\/code> yetkilerine sahip bir Ubuntu 20.04 sunucusu.<br \/>\n*   <strong>Alan Ad\u0131 (Domain Name):<\/strong> Bir alan ad\u0131na sahip olmal\u0131 ve bu alan ad\u0131n\u0131n (\u00f6rne\u011fin, <code>alanadiniz.com<\/code>) DNS A kayd\u0131n\u0131n sunucunuzun IP adresini i\u015faret etti\u011finden emin olmal\u0131s\u0131n\u0131z. Ayr\u0131ca <code>www.alanadiniz.com<\/code> gibi alt alan adlar\u0131 i\u00e7in de uygun DNS kay\u0131tlar\u0131 olmal\u0131d\u0131r.<br \/>\n*   <strong>Apache Web Sunucusu:<\/strong> Sunucunuzda Apache&#8217;nin kurulu ve \u00e7al\u0131\u015f\u0131r durumda olmas\u0131 gerekmektedir. E\u011fer kurulu de\u011filse, sonraki ad\u0131mda kurulumunu anlataca\u011f\u0131z.<br \/>\n*   <strong>G\u00fcvenlik Duvar\u0131 (UFW):<\/strong> Ubuntu&#8217;nun varsay\u0131lan g\u00fcvenlik duvar\u0131 olan UFW&#8217;nin yap\u0131land\u0131r\u0131lm\u0131\u015f olmas\u0131, sunucunuzun g\u00fcvenli\u011fi i\u00e7in \u00f6nemlidir.<\/p>\n<h3>Ad\u0131m 1: Apache Kurulumu ve Yap\u0131land\u0131rmas\u0131<\/h3>\n<p>E\u011fer sunucunuzda Apache hen\u00fcz kurulu de\u011filse veya temel yap\u0131land\u0131rmas\u0131n\u0131 yapmad\u0131ysan\u0131z, bu ad\u0131m\u0131 takip etmelisiniz.<\/p>\n<h4>Apache Kurulumu<\/h4>\n<p>\u0130lk olarak, paket listesini g\u00fcncelleyin ve Apache&#8217;yi kurun:<\/p>\n<pre><code class=\"language-bash\">sudo apt update\nsudo apt install apache2 -y<\/code><\/pre>\n<p>Kurulum tamamland\u0131ktan sonra, Apache servisinin otomatik olarak ba\u015flamas\u0131 ve \u00e7al\u0131\u015f\u0131r durumda olmas\u0131 gerekir. Durumunu kontrol edebilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl status apache2<\/code><\/pre>\n<p>\u00c7\u0131kt\u0131da <code>active (running)<\/code> ibaresini g\u00f6rmelisiniz.<\/p>\n<h4>G\u00fcvenlik Duvar\u0131 Ayarlar\u0131 (UFW)<\/h4>\n<p>E\u011fer UFW kullan\u0131yorsan\u0131z, Apache&#8217;nin gelen HTTP (port 80) ve HTTPS (port 443) isteklerini alabilmesi i\u00e7in g\u00fcvenlik duvar\u0131n\u0131 yap\u0131land\u0131rman\u0131z gerekir.<\/p>\n<pre><code class=\"language-bash\">sudo ufw app list<\/code><\/pre>\n<p>Bu komut, UFW&#8217;nin tan\u0131nan uygulama profillerini listeler. <code>Apache Full<\/code> profilini etkinle\u015ftirerek hem HTTP hem de HTTPS trafi\u011fine izin verebilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo ufw allow 'Apache Full'\nsudo ufw enable # E\u011fer UFW etkin de\u011filse, bu komutla etkinle\u015ftirin.\nsudo ufw status<\/code><\/pre>\n<p><code>sudo ufw status<\/code> komutunun \u00e7\u0131kt\u0131s\u0131nda <code>Apache Full<\/code> i\u00e7in izin verilen kurallar\u0131 g\u00f6rmelisiniz.<\/p>\n<h4>Alan Ad\u0131 i\u00e7in Sanal Host Olu\u015fturma<\/h4>\n<p>Let&#8217;s Encrypt sertifikas\u0131 almadan \u00f6nce, alan ad\u0131n\u0131z i\u00e7in bir Apache Sanal Host (Virtual Host) yap\u0131land\u0131rman\u0131z \u00f6nemlidir. Bu, Apache&#8217;nin web sitenizi do\u011fru \u015fekilde sunmas\u0131n\u0131 sa\u011flar.<\/p>\n<p>\u00d6ncelikle, web sitenizin dosyalar\u0131n\u0131 bar\u0131nd\u0131racak bir dizin olu\u015fturun. <code>alanadiniz.com<\/code> yerine kendi alan ad\u0131n\u0131z\u0131 kullan\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo mkdir -p \/var\/www\/alanadiniz.com\/html\nsudo chown -R $USER:$USER \/var\/www\/alanadiniz.com\/html<\/code><\/pre>\n<p>\u015eimdi bu dizine basit bir <code>index.html<\/code> dosyas\u0131 olu\u015ftural\u0131m:<\/p>\n<pre><code class=\"language-bash\">sudo nano \/var\/www\/alanadiniz.com\/html\/index.html<\/code><\/pre>\n<p>Dosyan\u0131n i\u00e7ine a\u015fa\u011f\u0131daki i\u00e7eri\u011fi ekleyin:<\/p>\n<pre><code class=\"language-html\"><html>\n    <head>\n        <title>Ho\u015f Geldiniz!<\/title>\n    <\/head>\n    <body>\n        \n        <p>Apache sunucunuz ba\u015far\u0131yla \u00e7al\u0131\u015f\u0131yor.<\/p>\n    <\/body>\n<\/html><\/code><\/pre>\n<p>Kaydedip kapat\u0131n (CTRL+X, Y, Enter).<\/p>\n<p>\u015eimdi alan ad\u0131n\u0131z i\u00e7in bir Sanal Host yap\u0131land\u0131rma dosyas\u0131 olu\u015ftural\u0131m:<\/p>\n<pre><code class=\"language-bash\">sudo nano \/etc\/apache2\/sites-available\/alanadiniz.com.conf<\/code><\/pre>\n<p>Dosyan\u0131n i\u00e7ine a\u015fa\u011f\u0131daki i\u00e7eri\u011fi ekleyin. <code>alanadiniz.com<\/code> ve <code>www.alanadiniz.com<\/code> k\u0131s\u0131mlar\u0131n\u0131 kendi alan ad\u0131n\u0131zla de\u011fi\u015ftirin:<\/p>\n<pre><code class=\"language-apache\"><VirtualHost *:80>\n    ServerAdmin webmaster@localhost\n    ServerName alanadiniz.com\n    ServerAlias www.alanadiniz.com\n    DocumentRoot \/var\/www\/alanadiniz.com\/html\n    ErrorLog ${APACHE_LOG_DIR}\/error.log\n    CustomLog ${APACHE_LOG_DIR}\/access.log combined\n<\/VirtualHost><\/code><\/pre>\n<p>Kaydedip kapat\u0131n.<\/p>\n<p>Yeni Sanal Host dosyas\u0131n\u0131 etkinle\u015ftirin ve varsay\u0131lan Sanal Host&#8217;u devre d\u0131\u015f\u0131 b\u0131rak\u0131n (\u00e7ak\u0131\u015fmalar\u0131 \u00f6nlemek i\u00e7in):<\/p>\n<pre><code class=\"language-bash\">sudo a2ensite alanadiniz.com.conf\nsudo a2dissite 000-default.conf<\/code><\/pre>\n<p>Apache yap\u0131land\u0131rman\u0131zda bir hata olup olmad\u0131\u011f\u0131n\u0131 kontrol edin:<\/p>\n<pre><code class=\"language-bash\">sudo apache2ctl configtest<\/code><\/pre>\n<p>E\u011fer <code>Syntax OK<\/code> \u00e7\u0131kt\u0131s\u0131n\u0131 al\u0131rsan\u0131z, Apache servisini yeniden ba\u015flat\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl restart apache2<\/code><\/pre>\n<p>Art\u0131k web taray\u0131c\u0131n\u0131zdan <code>http:\/\/alanadiniz.com<\/code> adresine gitti\u011finizde, olu\u015fturdu\u011funuz <code>index.html<\/code> dosyas\u0131n\u0131n i\u00e7eri\u011fini g\u00f6rmelisiniz.<\/p>\n<h3>Ad\u0131m 2: Certbot Kurulumu<\/h3>\n<p>Certbot, Let&#8217;s Encrypt sertifikalar\u0131n\u0131 almay\u0131 ve y\u00f6netmeyi kolayla\u015ft\u0131ran bir istemci yaz\u0131l\u0131m\u0131d\u0131r. Certbot&#8217;u kurman\u0131n birka\u00e7 yolu vard\u0131r, ancak Ubuntu 20.04&#8217;te en \u00f6nerilen y\u00f6ntem Snap kullanmakt\u0131r.<\/p>\n<h4>Certbot Deposu Ekleme ve Kurulumu (Snap ile \u00d6nerilen)<\/h4>\n<p>Snap, Ubuntu 20.04&#8217;te Certbot&#8217;u kurman\u0131n en g\u00fcvenilir yoludur \u00e7\u00fcnk\u00fc en g\u00fcncel s\u00fcr\u00fcm\u00fc sunar ve ba\u011f\u0131ml\u0131l\u0131k sorunlar\u0131n\u0131 minimize eder.<\/p>\n<p>\u00d6ncelikle, Snap&#8217;in g\u00fcncel oldu\u011fundan emin olun:<\/p>\n<pre><code class=\"language-bash\">sudo snap install core\nsudo snap refresh core<\/code><\/pre>\n<p>Ard\u0131ndan Certbot&#8217;u Snap ile kurun:<\/p>\n<pre><code class=\"language-bash\">sudo snap install --classic certbot<\/code><\/pre>\n<p>Certbot komutunu sistem PATH&#8217;inize eklemek i\u00e7in bir sembolik link olu\u015fturun:<\/p>\n<pre><code class=\"language-bash\">sudo ln -s \/snap\/bin\/certbot \/usr\/bin\/certbot<\/code><\/pre>\n<p>Bu ad\u0131mlardan sonra <code>certbot<\/code> komutunu do\u011frudan kullanabilirsiniz.<\/p>\n<h4>Alternatif: Certbot Kurulumu (APT ile)<\/h4>\n<p>E\u011fer Snap kullanmak istemiyorsan\u0131z, Certbot&#8217;u APT paket y\u00f6neticisi arac\u0131l\u0131\u011f\u0131yla da kurabilirsiniz. Ancak bu y\u00f6ntem genellikle Certbot&#8217;un daha eski bir s\u00fcr\u00fcm\u00fcn\u00fc y\u00fckleyebilir.<\/p>\n<pre><code class=\"language-bash\">sudo apt update\nsudo apt install certbot python3-certbot-apache -y<\/code><\/pre>\n<p>Bu komut, Certbot&#8217;u ve Apache ile entegrasyonu sa\u011flayan eklentiyi kuracakt\u0131r.<\/p>\n<h3>Ad\u0131m 3: Let&#8217;s Encrypt SSL Sertifikas\u0131 Alma<\/h3>\n<p>Certbot&#8217;u kurduktan sonra, SSL sertifikas\u0131n\u0131 almak i\u00e7in iki ana y\u00f6ntem vard\u0131r: Apache eklentisi ile veya manuel\/webroot do\u011frulamas\u0131 ile. Apache eklentisi, yap\u0131land\u0131rmay\u0131 otomatik olarak yapt\u0131\u011f\u0131 i\u00e7in genellikle daha kolayd\u0131r.<\/p>\n<h4>Apache Eklentisi ile Sertifika Alma<\/h4>\n<p>Certbot&#8217;un Apache eklentisi, sertifikay\u0131 alman\u0131za, Apache yap\u0131land\u0131rman\u0131z\u0131 otomatik olarak g\u00fcncellemenize ve HTTP trafi\u011fini HTTPS&#8217;ye y\u00f6nlendirmenize olanak tan\u0131r.<\/p>\n<p>A\u015fa\u011f\u0131daki komutu \u00e7al\u0131\u015ft\u0131r\u0131n, <code>alanadiniz.com<\/code> ve <code>www.alanadiniz.com<\/code> k\u0131s\u0131mlar\u0131n\u0131 kendi alan adlar\u0131n\u0131zla de\u011fi\u015ftirin:<\/p>\n<pre><code class=\"language-bash\">sudo certbot --apache -d alanadiniz.com -d www.alanadiniz.com<\/code><\/pre>\n<p>Komutu \u00e7al\u0131\u015ft\u0131rd\u0131ktan sonra, Certbot sizden baz\u0131 bilgiler isteyecektir:<\/p>\n<p>1.  <strong>E-posta Adresi:<\/strong> Bildirimler ve acil durumlar i\u00e7in bir e-posta adresi girin.<br \/>\n2.  <strong>Hizmet \u015eartlar\u0131:<\/strong> Let&#8217;s Encrypt hizmet \u015fartlar\u0131n\u0131 kabul etmeniz istenir. <code>A<\/code> (Agree) yaz\u0131p Enter&#8217;a bas\u0131n.<br \/>\n3.  <strong>EFF (Electronic Frontier Foundation) Haberleri:<\/strong> EFF&#8217;den e-posta almak isteyip istemedi\u011finiz sorulur. <code>Y<\/code> (Yes) veya <code>N<\/code> (No) yaz\u0131p Enter&#8217;a bas\u0131n.<br \/>\n4.  <strong>HTTP&#8217;den HTTPS&#8217;ye Y\u00f6nlendirme:<\/strong> Certbot, HTTP isteklerini otomatik olarak HTTPS&#8217;ye y\u00f6nlendirip y\u00f6nlendirmeyece\u011fini soracakt\u0131r. <code>2<\/code> (Redirect) se\u00e7ene\u011fini se\u00e7meniz \u015fiddetle tavsiye edilir. Bu, t\u00fcm trafi\u011fin g\u00fcvenli bir \u015fekilde y\u00f6nlendirilmesini sa\u011flar.<\/p>\n<p>Bu ad\u0131mlar\u0131 tamamlad\u0131ktan sonra Certbot, sertifikay\u0131 alacak, Apache yap\u0131land\u0131rman\u0131z\u0131 g\u00fcncelleyecek ve size ba\u015far\u0131l\u0131 bir mesaj g\u00f6sterecektir:<\/p>\n<pre><code class=\"language-\">Congratulations! Your certificate and chain have been saved at:\n   \/etc\/letsencrypt\/live\/alanadiniz.com\/fullchain.pem\n   Your key file has been saved at:\n   \/etc\/letsencrypt\/live\/alanadiniz.com\/privkey.pem\n   ...<\/code><\/pre>\n<p>Bu mesaj, sertifikan\u0131z\u0131n ba\u015far\u0131yla al\u0131nd\u0131\u011f\u0131n\u0131 ve kuruldu\u011funu g\u00f6sterir. Art\u0131k web taray\u0131c\u0131n\u0131zdan <code>https:\/\/alanadiniz.com<\/code> adresine gitti\u011finizde, web sitenizin g\u00fcvenli oldu\u011funu g\u00f6steren kilit simgesini g\u00f6rmelisiniz.<\/p>\n<h4>Manuel Do\u011frulama ile Sertifika Alma (\u0130ste\u011fe Ba\u011fl\u0131)<\/h4>\n<p>Baz\u0131 durumlarda (\u00f6rne\u011fin, \u00f6zel bir Apache yap\u0131land\u0131rman\u0131z varsa veya Certbot&#8217;un otomatik Apache eklentisi beklendi\u011fi gibi \u00e7al\u0131\u015fmazsa), <code>webroot<\/code> eklentisini kullanarak manuel olarak sertifika alabilirsiniz. Bu y\u00f6ntem, Certbot&#8217;un alan ad\u0131n\u0131z\u0131n sahipli\u011fini do\u011frulamak i\u00e7in webroot dizininize ge\u00e7ici bir dosya yerle\u015ftirmesini gerektirir.<\/p>\n<pre><code class=\"language-bash\">sudo certbot certonly --webroot -w \/var\/www\/alanadiniz.com\/html -d alanadiniz.com -d www.alanadiniz.com<\/code><\/pre>\n<p>Bu komut, sertifikay\u0131 alacak ancak Apache yap\u0131land\u0131rman\u0131z\u0131 otomatik olarak g\u00fcncellemeyecektir. Sertifikay\u0131 ald\u0131ktan sonra, Apache&#8217;nin SSL mod\u00fcl\u00fcn\u00fc etkinle\u015ftirmeniz ve Sanal Host yap\u0131land\u0131rma dosyan\u0131z\u0131 manuel olarak d\u00fczenlemeniz gerekir.<\/p>\n<p>1.  <strong>SSL Mod\u00fcl\u00fcn\u00fc Etkinle\u015ftirme:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo a2enmod ssl\n    sudo systemctl restart apache2<\/code><\/pre>\n<p>2.  <strong>Sanal Host Yap\u0131land\u0131rmas\u0131n\u0131 G\u00fcncelleme:<\/strong><br \/>\n    Certbot&#8217;un otomatik y\u00f6nlendirme yapmad\u0131\u011f\u0131 durumlarda, genellikle yeni bir SSL Sanal Host dosyas\u0131 olu\u015fturman\u0131z gerekir. Certbot, otomatik olarak <code>\/etc\/apache2\/sites-available\/alanadiniz.com-le-ssl.conf<\/code> gibi bir dosya olu\u015fturur. E\u011fer olu\u015fturmad\u0131ysa, kendiniz olu\u015fturmal\u0131s\u0131n\u0131z:<\/p>\n<pre><code class=\"language-bash\">sudo nano \/etc\/apache2\/sites-available\/alanadiniz.com-ssl.conf<\/code><\/pre>\n<p>    \u0130\u00e7eri\u011fi a\u015fa\u011f\u0131daki gibi d\u00fczenleyin, sertifika yollar\u0131n\u0131 kendi alan ad\u0131n\u0131zla de\u011fi\u015ftirin:<\/p>\n<pre><code class=\"language-apache\"><IfModule mod_ssl.c>\n        <VirtualHost *:443>\n            ServerAdmin webmaster@localhost\n            ServerName alanadiniz.com\n            ServerAlias www.alanadiniz.com\n            DocumentRoot \/var\/www\/alanadiniz.com\/html\n            ErrorLog ${APACHE_LOG_DIR}\/error.log\n            CustomLog ${APACHE_LOG_DIR}\/access.log combined\n\n            SSLEngine on\n            SSLCertificateFile \/etc\/letsencrypt\/live\/alanadiniz.com\/fullchain.pem\n            SSLCertificateKeyFile \/etc\/letsencrypt\/live\/alanadiniz.com\/privkey.pem\n            Include \/etc\/letsencrypt\/options-ssl-apache.conf\n        <\/VirtualHost>\n    <\/IfModule><\/code><\/pre>\n<p>    Bu dosyay\u0131 etkinle\u015ftirin ve Apache&#8217;yi yeniden ba\u015flat\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo a2ensite alanadiniz.com-ssl.conf\n    sudo systemctl restart apache2<\/code><\/pre>\n<h3>Ad\u0131m 4: SSL Sertifikas\u0131n\u0131 Otomatik Yenileme<\/h3>\n<p>Let&#8217;s Encrypt sertifikalar\u0131 90 g\u00fcn ge\u00e7erlidir. Bu s\u00fcre dolmadan \u00f6nce sertifikalar\u0131n yenilenmesi gerekir. Certbot, bu i\u015flemi otomatik olarak halletmek i\u00e7in tasarlanm\u0131\u015ft\u0131r.<\/p>\n<h4>Yenileme Testi<\/h4>\n<p>Sertifika yenileme mekanizmas\u0131n\u0131n do\u011fru \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olmak i\u00e7in bir kuru \u00e7al\u0131\u015ft\u0131rma (dry-run) yapabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo certbot renew --dry-run<\/code><\/pre>\n<p>E\u011fer bu komut herhangi bir hata vermeden \u00e7al\u0131\u015f\u0131rsa, otomatik yenileme mekanizman\u0131z\u0131n d\u00fczg\u00fcn \u00e7al\u0131\u015ft\u0131\u011f\u0131 anlam\u0131na gelir.<\/p>\n<h4>Cron \u0130\u015flemi veya Systemd Timer ile Otomatik Yenileme<\/h4>\n<p>Certbot&#8217;u Snap ile kurduysan\u0131z, otomatik yenileme i\u00e7in bir <code>systemd timer<\/code> otomatik olarak kurulur. Bu timer g\u00fcnde iki kez \u00e7al\u0131\u015f\u0131r ve sertifikalar\u0131n\u0131z\u0131n s\u00fcresi dolmak \u00fczereyken yenileme i\u015flemini tetikler.<\/p>\n<p>Timer&#8217;\u0131n durumunu kontrol edebilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl status snap.certbot.renew.service\nsudo systemctl status snap.certbot.renew.timer<\/code><\/pre>\n<p>E\u011fer Certbot&#8217;u APT ile kurduysan\u0131z, genellikle <code>\/etc\/cron.d\/certbot<\/code> alt\u0131nda bir cron i\u015fi olu\u015fturulur. Bu cron i\u015fi de sertifikalar\u0131 otomatik olarak yenilemekten sorumludur.<\/p>\n<p>Bu otomatik yenileme mekanizmalar\u0131 sayesinde, sertifikalar\u0131n\u0131z\u0131n s\u00fcresi doldu\u011funda manuel olarak m\u00fcdahale etmenize gerek kalmaz.<\/p>\n<h3>Ad\u0131m 5: HTTP&#8217;den HTTPS&#8217;ye Y\u00f6nlendirme<\/h3>\n<p>Sertifikay\u0131 kurduktan ve Apache&#8217;yi yap\u0131land\u0131rd\u0131ktan sonra, web sitenize gelen t\u00fcm HTTP trafi\u011fini HTTPS&#8217;ye y\u00f6nlendirmek \u00f6nemlidir. Bu, kullan\u0131c\u0131lar\u0131n her zaman g\u00fcvenli ba\u011flant\u0131 \u00fczerinden sitenize eri\u015fmesini sa\u011flar. E\u011fer Certbot kurulum s\u0131ras\u0131nda y\u00f6nlendirme se\u00e7ene\u011fini (<code>2: Redirect<\/code>) se\u00e7tiyseniz, bu ad\u0131m zaten otomatik olarak yap\u0131lm\u0131\u015f olacakt\u0131r. Ancak manuel kurulum yapt\u0131ysan\u0131z veya kontrol etmek istiyorsan\u0131z, a\u015fa\u011f\u0131daki y\u00f6ntemleri kullanabilirsiniz.<\/p>\n<h4>Apache Sanal Host Ayarlar\u0131nda Y\u00f6nlendirme<\/h4>\n<p>Bu y\u00f6ntem, Apache&#8217;nin Sanal Host yap\u0131land\u0131rma dosyas\u0131nda bir y\u00f6nlendirme kural\u0131 eklemeyi i\u00e7erir. Genellikle, HTTP (port 80) Sanal Host dosyan\u0131z\u0131 d\u00fczenleyerek t\u00fcm istekleri HTTPS&#8217;ye y\u00f6nlendiririz.<\/p>\n<p>HTTP Sanal Host dosyan\u0131z\u0131 a\u00e7\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo nano \/etc\/apache2\/sites-available\/alanadiniz.com.conf<\/code><\/pre>\n<p><code>VirtualHost *:80<\/code> blo\u011funun i\u00e7ine a\u015fa\u011f\u0131daki <code>RewriteEngine<\/code> ve <code>RewriteRule<\/code> y\u00f6nergelerini ekleyin:<\/p>\n<pre><code class=\"language-apache\"><VirtualHost *:80>\n    ServerAdmin webmaster@localhost\n    ServerName alanadiniz.com\n    ServerAlias www.alanadiniz.com\n    DocumentRoot \/var\/www\/alanadiniz.com\/html\n    ErrorLog ${APACHE_LOG_DIR}\/error.log\n    CustomLog ${APACHE_LOG_DIR}\/access.log combined\n\n    # HTTP'den HTTPS'ye Y\u00f6nlendirme\n    RewriteEngine On\n    RewriteCond %{SERVER_NAME} =alanadiniz.com [OR]\n    RewriteCond %{SERVER_NAME} =www.alanadiniz.com\n    RewriteRule ^ https:\/\/%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]\n<\/VirtualHost><\/code><\/pre>\n<p>Bu kural\u0131 ekledikten sonra, Apache&#8217;nin <code>mod_rewrite<\/code> mod\u00fcl\u00fcn\u00fc etkinle\u015ftirmelisiniz:<\/p>\n<pre><code class=\"language-bash\">sudo a2enmod rewrite\nsudo systemctl restart apache2<\/code><\/pre>\n<p>\u015eimdi <code>http:\/\/alanadiniz.com<\/code> adresine gitti\u011finizde, otomatik olarak <code>https:\/\/alanadiniz.com<\/code> adresine y\u00f6nlendirilmelisiniz.<\/p>\n<h3>Ad\u0131m 6: G\u00fcvenlik \u0130yile\u015ftirmeleri<\/h3>\n<p>SSL sertifikas\u0131 kurmak harika bir ba\u015flang\u0131\u00e7t\u0131r, ancak web sitenizin g\u00fcvenli\u011fini daha da art\u0131rmak i\u00e7in ek ad\u0131mlar atabilirsiniz.<\/p>\n<h4>HSTS (HTTP Strict Transport Security)<\/h4>\n<p>HSTS, taray\u0131c\u0131lara web sitenize her zaman HTTPS \u00fczerinden ba\u011flanmalar\u0131 gerekti\u011fini bildiren bir g\u00fcvenlik mekanizmas\u0131d\u0131r. Bu, kullan\u0131c\u0131lar\u0131n yanl\u0131\u015fl\u0131kla veya k\u00f6t\u00fc niyetli bir sald\u0131r\u0131 sonucunda HTTP \u00fczerinden sitenize eri\u015fmesini \u00f6nler.<\/p>\n<p>HSTS&#8217;yi etkinle\u015ftirmek i\u00e7in, Apache&#8217;nin <code>mod_headers<\/code> mod\u00fcl\u00fcn\u00fc etkinle\u015ftirmeniz ve SSL Sanal Host yap\u0131land\u0131rman\u0131za bir ba\u015fl\u0131k eklemeniz gerekir.<\/p>\n<p>1.  <strong><code>mod_headers<\/code> Mod\u00fcl\u00fcn\u00fc Etkinle\u015ftirme:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo a2enmod headers\n    sudo systemctl restart apache2<\/code><\/pre>\n<p>2.  <strong>HSTS Ba\u015fl\u0131\u011f\u0131n\u0131 Ekleme:<\/strong><br \/>\n    SSL Sanal Host yap\u0131land\u0131rma dosyan\u0131z\u0131 a\u00e7\u0131n (genellikle <code>alanadiniz.com-le-ssl.conf<\/code> veya <code>alanadiniz.com-ssl.conf<\/code>):<\/p>\n<pre><code class=\"language-bash\">sudo nano \/etc\/apache2\/sites-available\/alanadiniz.com-le-ssl.conf<\/code><\/pre>\n<p>    <code><VirtualHost *:443><\/code> blo\u011funun i\u00e7ine a\u015fa\u011f\u0131daki sat\u0131r\u0131 ekleyin:<\/p>\n<pre><code class=\"language-apache\">Header always set Strict-Transport-Security \"max-age=63072000; includeSubDomains; preload\"<\/code><\/pre>\n<p>    <code>max-age<\/code> de\u011feri, taray\u0131c\u0131n\u0131n bu kural\u0131 ne kadar s\u00fcreyle hat\u0131rlayaca\u011f\u0131n\u0131 saniye cinsinden belirtir (iki y\u0131l). <code>includeSubDomains<\/code> alt alan adlar\u0131n\u0131 da kapsar. <code>preload<\/code> ise sitenizi HSTS preload listesine dahil etmek istedi\u011finizi belirtir (ancak bunun i\u00e7in \u00f6zel bir ba\u015fvuru s\u00fcreci vard\u0131r).<\/p>\n<p>    Dosyay\u0131 kaydedip kapat\u0131n ve Apache&#8217;yi yeniden ba\u015flat\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl restart apache2<\/code><\/pre>\n<h4>SSL Labs Testi<\/h4>\n<p>Web sitenizin SSL\/TLS yap\u0131land\u0131rmas\u0131n\u0131n ne kadar g\u00fcvenli oldu\u011funu kontrol etmek i\u00e7in Qualys SSL Labs&#8217;\u0131n \u00fccretsiz online test arac\u0131n\u0131 kullanabilirsiniz: [https:\/\/www.ssllabs.com\/ssltest\/](https:\/\/www.ssllabs.com\/ssltest\/). Alan ad\u0131n\u0131z\u0131 girin ve &#8220;Submit&#8221; butonuna t\u0131klay\u0131n. Test birka\u00e7 dakika s\u00fcrecektir ve sitenizin SSL\/TLS yap\u0131land\u0131rmas\u0131 hakk\u0131nda detayl\u0131 bir rapor sunacakt\u0131r (A+, A, B gibi derecelendirmelerle). Bu test, herhangi bir zay\u0131fl\u0131k veya yanl\u0131\u015f yap\u0131land\u0131rma olup olmad\u0131\u011f\u0131n\u0131 belirlemenize yard\u0131mc\u0131 olur.<\/p>\n<h4>G\u00fc\u00e7l\u00fc \u015eifreleme Protokolleri ve \u015eifreleme Paketleri<\/h4>\n<p>Apache&#8217;nin SSL yap\u0131land\u0131rmas\u0131nda, sadece g\u00fcvenli SSL\/TLS protokollerini kullanmaya ve zay\u0131f \u015fifreleme paketlerini devre d\u0131\u015f\u0131 b\u0131rakmaya \u00f6zen g\u00f6stermelisiniz. Certbot&#8217;un varsay\u0131lan yap\u0131land\u0131rmas\u0131 genellikle iyi bir ba\u015flang\u0131\u00e7 noktas\u0131 sunar ( <code>\/etc\/letsencrypt\/options-ssl-apache.conf<\/code> dosyas\u0131na bak\u0131n), ancak daha fazla optimizasyon yapmak isteyebilirsiniz.<\/p>\n<p>Bu ayarlar\u0131 genellikle <code>\/etc\/apache2\/mods-available\/ssl.conf<\/code> dosyas\u0131nda veya Sanal Host yap\u0131land\u0131rman\u0131zda bulabilirsiniz.<\/p>\n<p>\u00d6rnek g\u00fcvenli ayarlar:<\/p>\n<pre><code class=\"language-apache\"># Sadece g\u00fc\u00e7l\u00fc protokolleri etkinle\u015ftirin\nSSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1\n\n<h2>G\u00fc\u00e7l\u00fc \u015fifreleme paketlerini kullan\u0131n ve zay\u0131flar\u0131 devre d\u0131\u015f\u0131 b\u0131rak\u0131n<\/h2>\nSSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH\nSSLHonorCipherOrder on<\/code><\/pre>\n<p>Bu de\u011fi\u015fiklikleri yapt\u0131ktan sonra Apache&#8217;yi yeniden ba\u015flatmay\u0131 unutmay\u0131n.<\/p>\n<h3>Ad\u0131m 7: Sorun Giderme ve S\u0131k\u00e7a Sorulan Sorular<\/h3>\n<p>Kurulum s\u00fcrecinde veya sonras\u0131nda kar\u015f\u0131la\u015fabilece\u011finiz baz\u0131 yayg\u0131n sorunlar ve \u00e7\u00f6z\u00fcmleri:<\/p>\n<h4>Certbot Hatalar\u0131<\/h4>\n<p>*   <strong>DNS Do\u011frulama Hatas\u0131:<\/strong> Certbot, alan ad\u0131n\u0131z\u0131n sunucunuzun IP adresini i\u015faret etti\u011fini do\u011frulayamad\u0131\u011f\u0131nda bu hatay\u0131 al\u0131rs\u0131n\u0131z. DNS kay\u0131tlar\u0131n\u0131z\u0131n do\u011fru oldu\u011fundan ve yay\u0131lmas\u0131n\u0131n tamamland\u0131\u011f\u0131ndan emin olun.<br \/>\n*   <strong>G\u00fcvenlik Duvar\u0131 Hatas\u0131:<\/strong> Certbot, do\u011frulamay\u0131 ger\u00e7ekle\u015ftirmek i\u00e7in port 80 (HTTP) veya port 443 (HTTPS) \u00fczerinden sunucunuza eri\u015febilmelidir. G\u00fcvenlik duvar\u0131n\u0131z\u0131n (UFW gibi) bu portlara gelen trafi\u011fe izin verdi\u011finden emin olun.<br \/>\n*   <strong>Apache Yap\u0131land\u0131rma Hatas\u0131:<\/strong> Certbot&#8217;un Apache eklentisi, Apache yap\u0131land\u0131rman\u0131zda bir hata bulursa \u00e7al\u0131\u015fmayabilir. <code>sudo apache2ctl configtest<\/code> komutuyla Apache yap\u0131land\u0131rman\u0131z\u0131 kontrol edin ve hatalar\u0131 d\u00fczeltin.<\/p>\n<h4>Sertifika Yenileme Hatalar\u0131<\/h4>\n<p>*   E\u011fer otomatik yenileme ba\u015far\u0131s\u0131z olursa, Certbot size e-posta ile bildirim g\u00f6nderecektir (kay\u0131t s\u0131ras\u0131nda verdi\u011finiz e-posta adresine).<br \/>\n*   Yenileme sorunlar\u0131n\u0131 gidermek i\u00e7in <code>sudo certbot renew --force-renewal<\/code> komutunu kullanabilirsiniz, ancak bu sadece ge\u00e7ici bir \u00e7\u00f6z\u00fcmd\u00fcr. As\u0131l sorunu bulmak i\u00e7in Certbot&#8217;un g\u00fcnl\u00fck dosyalar\u0131n\u0131 (<code>\/var\/log\/letsencrypt\/<\/code>) kontrol edin.<br \/>\n*   Genellikle yenileme hatalar\u0131, DNS de\u011fi\u015fiklikleri, g\u00fcvenlik duvar\u0131 k\u0131s\u0131tlamalar\u0131 veya Apache yap\u0131land\u0131rmas\u0131ndaki de\u011fi\u015fikliklerden kaynaklan\u0131r.<\/p>\n<h4>Karma \u0130\u00e7erik (Mixed Content) Hatalar\u0131<\/h4>\n<p>HTTPS \u00fczerinden y\u00fcklenen bir sayfada HTTP \u00fczerinden y\u00fcklenen kaynaklar (resimler, CSS dosyalar\u0131, JavaScript dosyalar\u0131 vb.) varsa, taray\u0131c\u0131lar &#8220;karma i\u00e7erik&#8221; uyar\u0131s\u0131 verebilir veya bu kaynaklar\u0131 engelleme yoluna gidebilir.<\/p>\n<p>*   <strong>\u00c7\u00f6z\u00fcm:<\/strong> Web sitenizin HTML, CSS ve JavaScript dosyalar\u0131n\u0131 kontrol edin. HTTP ile ba\u015flayan t\u00fcm kaynak URL&#8217;lerini HTTPS ile ba\u015flayacak \u015fekilde g\u00fcncelleyin. \u00d6rne\u011fin, <code>http:\/\/alanadiniz.com\/resim.jpg<\/code> yerine <code>https:\/\/alanadiniz.com\/resim.jpg<\/code> kullan\u0131n. Veya g\u00f6receli yollar kullan\u0131n: <code>\/resim.jpg<\/code>.<br \/>\n*   Veritaban\u0131n\u0131zdaki i\u00e7erikleri de kontrol etmeniz gerekebilir, \u00f6zellikle WordPress gibi CMS&#8217;ler kullan\u0131yorsan\u0131z.<\/p>\n<h4>G\u00fcvenlik Duvar\u0131 Sorunlar\u0131<\/h4>\n<p>*   Port 80 (HTTP) ve Port 443 (HTTPS) a\u00e7\u0131k olmal\u0131d\u0131r. <code>sudo ufw status<\/code> komutuyla kontrol edin.<br \/>\n*   E\u011fer farkl\u0131 bir g\u00fcvenlik duvar\u0131 kullan\u0131yorsan\u0131z (\u00f6rne\u011fin bir bulut sa\u011flay\u0131c\u0131s\u0131n\u0131n g\u00fcvenlik grubu), ilgili portlar\u0131n a\u00e7\u0131k oldu\u011fundan emin olun.<\/p>\n<h3>Sonu\u00e7<\/h3>\n<p>Ubuntu 20.04 \u00fczerinde Apache web sunucunuzu Let&#8217;s Encrypt ile g\u00fcvenli hale getirmek, web sitenizin kullan\u0131c\u0131lar\u0131 i\u00e7in g\u00fcvenilir bir ortam sa\u011flaman\u0131n ve modern web standartlar\u0131na uyman\u0131n temel bir ad\u0131m\u0131d\u0131r. Bu rehberde anlat\u0131lan ad\u0131mlar\u0131 takip ederek, \u00fccretsiz bir SSL\/TLS sertifikas\u0131 edinebilir, Apache&#8217;nizi HTTPS i\u00e7in yap\u0131land\u0131rabilir, HTTP trafi\u011fini HTTPS&#8217;ye y\u00f6nlendirebilir ve sertifikan\u0131z\u0131n otomatik olarak yenilenmesini sa\u011flayabilirsiniz.<\/p>\n<p>Unutmay\u0131n ki web g\u00fcvenli\u011fi s\u00fcrekli bir s\u00fcre\u00e7tir. Sertifikalar\u0131n\u0131z\u0131 g\u00fcncel tutmak, sunucu yaz\u0131l\u0131m\u0131n\u0131z\u0131 d\u00fczenli olarak yamalamak ve g\u00fcvenlik iyile\u015ftirmelerini takip etmek, web sitenizi ve kullan\u0131c\u0131lar\u0131n\u0131z\u0131 potansiyel tehditlere kar\u015f\u0131 koruman\u0131n anahtar\u0131d\u0131r. Let&#8217;s Encrypt ve Certbot, bu s\u00fcreci \u00f6nemli \u00f6l\u00e7\u00fcde basitle\u015ftirerek, herkesin g\u00fcvenli bir web deneyimi sunmas\u0131na olanak tan\u0131r. Art\u0131k web siteniz hem g\u00fcvenli hem de modern web standartlar\u0131na uygun bir \u015fekilde hizmet vermektedir.<\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Ubuntu 20.04 \u00dczerinde Apache&#8217;yi Let&#8217;s Encrypt ile G\u00fcvenli Hale Getirme\nUbuntu 20.04 sunucunuzda Apache web sunucusunu Let&#8217;s Encrypt ile g\u00fcvenli ha","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1468],"tags":[],"class_list":{"0":"post-33835","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-ubuntu","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Ubuntu 20.04 \u00dczerinde Apache&#039;yi Let&#039;s Encrypt ile G\u00fcvenli Hale Getirme - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Ubuntu 20.04 \u00dczerinde Apache&#039;yi Let&#039;s Encrypt ile G\u00fcvenli Hale Getirme\" \/>\n<meta property=\"og:description\" content=\"Ubuntu 20.04 \u00dczerinde Apache&#039;yi Let&#039;s Encrypt ile G\u00fcvenli Hale Getirme Ubuntu 20.04 sunucunuzda Apache web sunucusunu Let&#039;s Encrypt ile g\u00fcvenli ha\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-11-07T16:40:47+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"16 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Ubuntu 20.04 \u00dczerinde Apache&#8217;yi Let&#8217;s Encrypt ile G\u00fcvenli Hale Getirme\",\"datePublished\":\"2025-11-07T16:40:47+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme\/\"},\"wordCount\":2631,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Ubuntu\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme\/\",\"name\":\"Ubuntu 20.04 \u00dczerinde Apache'yi Let's Encrypt ile G\u00fcvenli Hale Getirme - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-11-07T16:40:47+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Ubuntu 20.04 \u00dczerinde Apache&#8217;yi Let&#8217;s Encrypt ile G\u00fcvenli Hale Getirme\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Ubuntu 20.04 \u00dczerinde Apache'yi Let's Encrypt ile G\u00fcvenli Hale Getirme - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme\/","og_locale":"tr_TR","og_type":"article","og_title":"Ubuntu 20.04 \u00dczerinde Apache'yi Let's Encrypt ile G\u00fcvenli Hale Getirme","og_description":"Ubuntu 20.04 \u00dczerinde Apache'yi Let's Encrypt ile G\u00fcvenli Hale Getirme Ubuntu 20.04 sunucunuzda Apache web sunucusunu Let's Encrypt ile g\u00fcvenli ha","og_url":"https:\/\/fatihsoysal.com\/blog\/ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-11-07T16:40:47+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"16 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Ubuntu 20.04 \u00dczerinde Apache&#8217;yi Let&#8217;s Encrypt ile G\u00fcvenli Hale Getirme","datePublished":"2025-11-07T16:40:47+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme\/"},"wordCount":2631,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Ubuntu"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme\/","url":"https:\/\/fatihsoysal.com\/blog\/ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme\/","name":"Ubuntu 20.04 \u00dczerinde Apache'yi Let's Encrypt ile G\u00fcvenli Hale Getirme - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-11-07T16:40:47+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-20-04-uzerinde-apacheyi-lets-encrypt-ile-guvenli-hale-getirme\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Ubuntu 20.04 \u00dczerinde Apache&#8217;yi Let&#8217;s Encrypt ile G\u00fcvenli Hale Getirme"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/33835","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=33835"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/33835\/revisions"}],"predecessor-version":[{"id":33836,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/33835\/revisions\/33836"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=33835"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=33835"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=33835"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}