{"id":1223,"date":"2025-07-30T17:08:54","date_gmt":"2025-07-30T08:08:54","guid":{"rendered":"https:\/\/absol.kr\/?p=1223"},"modified":"2025-09-06T20:08:01","modified_gmt":"2025-09-06T11:08:01","slug":"apache-%ec%84%a4%ec%b9%98-%ed%9b%84-lets-encrypt-%eb%ac%b4%eb%a3%8cssl-tls-%ec%9d%b8%ec%a6%9d%ec%84%9c-%ec%84%a4%ec%b9%98","status":"publish","type":"post","link":"https:\/\/absol.kr\/?p=1223","title":{"rendered":"apache \uc124\uce58 \ud6c4 Let&#8217;s Encrypt \ubb34\ub8ccSSL\/TLS \uc778\uc99d\uc11c \uc124\uce58"},"content":{"rendered":"\n<p>Let&#8217;s Encrypt\ub294 \ubb34\ub8cc, \uc790\ub3d9, \uacf5\uac1c SSL\/TLS \uc778\uc99d\uc11c\ub97c \uc81c\uacf5\ud558\ub294 \uc11c\ube44\uc2a4\uc774\uba70, Certbot\uc740 \uc774 \uc778\uc99d\uc11c\uc758 \ubc1c\uae09 \ubc0f \uac31\uc2e0 \uacfc\uc815\uc744 \uc790\ub3d9\ud654\ud574\uc8fc\ub294 \ub3c4\uad6c\ub2e4.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1. Certbot PPA \ucd94\uac00 \ubc0f \uc5c5\ub370\uc774\ud2b8<\/h3>\n\n\n\n<p>Certbot\uc758 \ucd5c\uc2e0 \ubc84\uc804\uc744 \uc0ac\uc6a9\ud558\uae30 \uc704\ud574 PPA(Personal Package Archive)\ub97c \ucd94\uac00\ud558\ub294 \uac83\uc774 \uc88b\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo add-apt-repository ppa:certbot\/certbot\nsudo apt update<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">2. Certbot \ubc0f Apache \ud50c\ub7ec\uadf8\uc778 \uc124\uce58<\/h3>\n\n\n\n<p>\uc774\uc81c Certbot\uacfc Apache\uc640\uc758 \uc5f0\ub3d9\uc744 \uc704\ud55c \ud50c\ub7ec\uadf8\uc778\uc744 \uc124\uce58\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt install certbot python3-certbot-apache -y<\/code><\/pre>\n\n\n\n<p><code>python3-certbot-apache<\/code>&nbsp;\ud328\ud0a4\uc9c0\ub294 Certbot\uc774 Apache \uc11c\ubc84 \uad6c\uc131\uc744 \uc790\ub3d9\uc73c\ub85c \uc870\uc815\ud560 \uc218 \uc788\ub3c4\ub85d \ub3c4\uc640\uc90d\ub2c8\ub2e4.&nbsp;<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"https:\/\/blog.secretmuse.net\/ubuntu-apache2%EC%97%90-lets-encrypt-%EB%AC%B4%EB%A3%8C-ssl-%EC%9D%B8%EC%A6%9D%EC%84%9C-%EC%84%A4%EC%B9%98%EB%A1%9C-https-%EC%A0%81%EC%9A%A9\/\"><\/a>&nbsp;<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"https:\/\/teserre.tistory.com\/4\"><\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3. Apache \uac00\uc0c1 \ud638\uc2a4\ud2b8(Virtual Host) \uc124\uc815 \ud655\uc778<\/h3>\n\n\n\n<p>Certbot\uc774 \uc62c\ubc14\ub974\uac8c \uc791\ub3d9\ud558\ub824\uba74, Apache \uac00\uc0c1 \ud638\uc2a4\ud2b8 \uc124\uc815 \ud30c\uc77c(<code>*.conf<\/code>&nbsp;\ud30c\uc77c, \uc77c\ubc18\uc801\uc73c\ub85c&nbsp;<code>\/etc\/apache2\/sites-available\/<\/code>)\uc5d0 \uc6f9\uc0ac\uc774\ud2b8\uc758&nbsp;<code>ServerName<\/code>&nbsp;\ub610\ub294&nbsp;<code>ServerAlias<\/code>&nbsp;\uc9c0\uc2dc\uc5b4\uac00 \uc62c\ubc14\ub974\uac8c \uc124\uc815\ub418\uc5b4 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4. \uc774 \uc9c0\uc2dc\uc5b4\ub294 Certbot\uc774 \uc778\uc99d\uc11c\ub97c \ubc1c\uae09\ubc1b\uc744 \ub3c4\uba54\uc778 \uc774\ub984\uc744 \uc2dd\ubcc4\ud558\ub294 \ub370 \uc0ac\uc6a9\ub429\ub2c8\ub2e4.<\/p>\n\n\n\n<p>\uc608\uc2dc (<code>\/etc\/apache2\/sites-available\/your-domain.conf<\/code>):<\/p>\n\n\n\n<p>apache<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;VirtualHost *:80&gt;\n    ServerAdmin webmaster@your-domain.com\n    ServerName your-domain.com      # \uc2e4\uc81c \ub3c4\uba54\uc778\uc73c\ub85c \ubcc0\uacbd\ud574\uc8fc\uc138\uc694.\n    ServerAlias www.your-domain.com # \uc2e4\uc81c \ub3c4\uba54\uc778\uc73c\ub85c \ubcc0\uacbd\ud574\uc8fc\uc138\uc694.\n    DocumentRoot \/var\/www\/html\/your-domain # \uc2e4\uc81c \uc6f9\uc0ac\uc774\ud2b8 \uacbd\ub85c\ub85c \ubcc0\uacbd\ud574\uc8fc\uc138\uc694.\n    ErrorLog ${APACHE_LOG_DIR}\/error.log\n    CustomLog ${APACHE_LOG_DIR}\/access.log combined\n&lt;\/VirtualHost&gt;<\/code><\/pre>\n\n\n\n<p>\uc704 \uc124\uc815\uc740 HTTPS\ub97c \uc801\uc6a9\ud560 \ub3c4\uba54\uc778(\uc608:&nbsp;<code>your-domain.com<\/code>)\uacfc&nbsp;<code>www.your-domain.com<\/code>\uc744&nbsp;<code>ServerName<\/code>\uacfc&nbsp;<code>ServerAlias<\/code>\uc5d0 \uba85\uc2dc\ud55c \uc608\uc2dc\uc785\ub2c8\ub2e4.&nbsp;<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"https:\/\/iter.kr\/apache-lets-encrypt-%EC%84%A4%EC%B9%98\/\"><\/a>&nbsp;Certbot \uc2e4\ud589 \uc804\uc5d0 Apache \uc124\uc815\uc744 \ud655\uc778\ud558\uc2dc\uace0, \ubcc0\uacbd\uc0ac\ud56d\uc774 \uc788\ub2e4\uba74 Apache\ub97c \uc7ac\uc2dc\uc791\ud574\uc8fc\uc138\uc694.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo systemctl restart apache2<\/code><\/pre>\n\n\n\n<p>\uc5d0\ub7ec \ubc1c\uc0dd\uc2dc, <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>systemctl status apache2.service\nsudo a2enmod proxy\nsudo a2enmod proxy_http\n# \ub2e4\ub978 \ud504\ub85d\uc2dc \uae30\ub2a5(\uc608: \uc6f9\uc18c\ucf13)\uc774 \ud544\uc694\ud558\ub2e4\uba74 \ub2e4\uc74c \ubaa8\ub4c8\ub3c4 \ud65c\uc131\ud654\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n# sudo a2enmod proxy_wstunnel\nsudo a2enmod headers\nsudo a2enmod rewrite\nsudo systemctl restart apache2<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">4. SSL \uc778\uc99d\uc11c \ubc1c\uae09<\/h3>\n\n\n\n<p>\uc774\uc81c Certbot\uc744 \uc0ac\uc6a9\ud558\uc5ec SSL \uc778\uc99d\uc11c\ub97c \ubc1c\uae09\ubc1b\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo certbot --apache<\/code><\/pre>\n\n\n\n<p>\uc774 \uba85\ub839\uc5b4\ub97c \uc2e4\ud589\ud558\uba74 Certbot\uc774 Apache \uc124\uc815\uc744 \ubd84\uc11d\ud558\uace0 \ub2e4\uc74c\uacfc \uac19\uc740 \uc9c8\ubb38\uc744 \ud560 \uac83\uc785\ub2c8\ub2e4:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>\uc774\uba54\uc77c \uc8fc\uc18c \uc785\ub825<\/strong>: \ub9cc\ub8cc \uc54c\ub9bc \ubc0f \ubcf4\uc548 \uad00\ub828 \ud1b5\uc9c0\ub97c \ubc1b\uc744 \uc774\uba54\uc77c \uc8fc\uc18c\ub97c \uc785\ub825\ud569\ub2c8\ub2e4.<\/li>\n\n\n\n<li><strong>\uc57d\uad00 \ub3d9\uc758<\/strong>: Let&#8217;s Encrypt \uc11c\ube44\uc2a4 \uc57d\uad00\uc5d0 \ub3d9\uc758\ud569\ub2c8\ub2e4.<\/li>\n\n\n\n<li><strong>\ub3c4\uba54\uc778 \uc120\ud0dd<\/strong>: Certbot\uc774 Apache \uc124\uc815\uc5d0\uc11c \ucc3e\uc740 \ub3c4\uba54\uc778 \ubaa9\ub85d\uc774 \ud45c\uc2dc\ub429\ub2c8\ub2e4. \uc774\uba54\uc77c \uc8fc\uc18c \ubc0f \uc57d\uad00\uc5d0 \ub3d9\uc758\ud558\uba74 \ubaa9\ub85d\uc774 \ub098\uc624\ub294\ub370, \uc778\uc99d\uc11c\ub97c \uc801\uc6a9\ud560 \ub3c4\uba54\uc778\uc744 \uc120\ud0dd\ud558\uac70\ub098 \ubaa8\ub450 \uc801\uc6a9\ud558\ub824\uba74 Enter\ub97c \ub204\ub985\ub2c8\ub2e4.<\/li>\n\n\n\n<li><strong>HTTP \ub9ac\ub514\ub809\uc158 \uc124\uc815<\/strong>: \uc6f9\uc0ac\uc774\ud2b8\ub85c\uc758 HTTP(80) \uc811\uadfc\uc744 HTTPS(443)\ub85c \uc790\ub3d9 \ub9ac\ub514\ub809\uc158\ud560\uc9c0 \ubb3c\uc5b4\ubd05\ub2c8\ub2e4. &#8216;2: Redirect&#8217;\ub97c \uc120\ud0dd\ud558\uc5ec \ud56d\uc0c1 HTTPS\ub85c \uc811\uc18d\ud558\ub3c4\ub85d \uc124\uc815\ud558\ub294 \uac83\uc774 \uc88b\uc2b5\ub2c8\ub2e4.<\/li>\n<\/ul>\n\n\n\n<p>\uc131\uacf5\uc801\uc73c\ub85c \uc644\ub8cc\ub418\uba74, Certbot\uc740 Apache \uc124\uc815\uc744 \uc790\ub3d9\uc73c\ub85c \uc5c5\ub370\uc774\ud2b8\ud558\uace0 \uc778\uc99d\uc11c\ub97c \uc124\uce58\ud588\ub2e4\ub294 \uba54\uc2dc\uc9c0\ub97c \ubcf4\uc5ec\uc904 \uac83\uc785\ub2c8\ub2e4.&nbsp;<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"https:\/\/blog.secretmuse.net\/ubuntu-apache2%EC%97%90-lets-encrypt-%EB%AC%B4%EB%A3%8C-ssl-%EC%9D%B8%EC%A6%9D%EC%84%9C-%EC%84%A4%EC%B9%98%EB%A1%9C-https-%EC%A0%81%EC%9A%A9\/\"><\/a>&nbsp;<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"https:\/\/teserre.tistory.com\/4\"><\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">5. SSL \uc124\uce58 \ud655\uc778<\/h3>\n\n\n\n<p>\uc6f9 \ube0c\ub77c\uc6b0\uc800\ub97c \uc5f4\uace0&nbsp;<code>https:\/\/your-domain.com<\/code>&nbsp;(\uc2e4\uc81c \ub3c4\uba54\uc778 \uc8fc\uc18c\ub85c \ubcc0\uacbd)\uc73c\ub85c \uc811\uc18d\ud574 \ubcf4\uc138\uc694. \uc8fc\uc18c\ucc3d\uc5d0 \uc790\ubb3c\uc1e0 \uc544\uc774\ucf58\uc774 \ub098\ud0c0\ub098\uace0, \uc6f9\uc0ac\uc774\ud2b8\uac00 HTTPS\ub85c \uc548\uc804\ud558\uac8c \uc5f0\uacb0\ub418\uc5c8\uc74c\uc744 \ud655\uc778\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">6. \uc790\ub3d9 \uac31\uc2e0 \uc124\uc815<\/h3>\n\n\n\n<p>Let&#8217;s Encrypt \uc778\uc99d\uc11c\ub294 90\uc77c\ub9c8\ub2e4 \uac31\uc2e0\ud574\uc57c \ud569\ub2c8\ub2e4. Certbot\uc740 \uc774 \uac31\uc2e0 \uacfc\uc815\uc744 \uc790\ub3d9\uc73c\ub85c \ucc98\ub9ac\ud574\uc8fc\ub294&nbsp;<code>cron<\/code>&nbsp;\uc791\uc5c5\uc774\ub098&nbsp;<code>systemd<\/code>&nbsp;\ud0c0\uc774\uba38\ub97c \uc790\ub3d9\uc73c\ub85c \uc124\uc815\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<p>\uac31\uc2e0 \ud504\ub85c\uc138\uc2a4\uac00 \uc62c\ubc14\ub974\uac8c \uc791\ub3d9\ud558\ub294\uc9c0 \ud14c\uc2a4\ud2b8\ud558\ub824\uba74 \ub2e4\uc74c \uba85\ub839\uc5b4\ub97c \uc2e4\ud589\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo certbot renew --dry-run<\/code><\/pre>\n\n\n\n<p>\uc774 \uba85\ub839\uc5b4\ub294 \uc2e4\uc81c \uac31\uc2e0 \uc5c6\uc774 \uac31\uc2e0 \ud504\ub85c\uc138\uc2a4\ub97c \uc2dc\ubbac\ub808\uc774\uc158\ud569\ub2c8\ub2e4. \uc624\ub958 \uc5c6\uc774 \uc131\uacf5\ud558\uba74 \uc790\ub3d9 \uac31\uc2e0\uc774 \uc62c\ubc14\ub974\uac8c \uc124\uc815\ub41c \uac83\uc785\ub2c8\ub2e4.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Let&#8217;s Encrypt\ub294 \ubb34\ub8cc, \uc790\ub3d9, \uacf5\uac1c SSL\/TLS \uc778\uc99d\uc11c\ub97c \uc81c\uacf5\ud558\ub294 \uc11c\ube44\uc2a4\uc774\uba70, Certbot\uc740 \uc774 \uc778\uc99d\uc11c\uc758 \ubc1c\uae09 \ubc0f \uac31\uc2e0 \uacfc\uc815\uc744 \uc790\ub3d9\ud654\ud574\uc8fc\ub294 \ub3c4\uad6c\ub2e4. 1. Certbot PPA \ucd94\uac00 \ubc0f \uc5c5\ub370\uc774\ud2b8 Certbot\uc758 \ucd5c\uc2e0 \ubc84\uc804\uc744 \uc0ac\uc6a9\ud558\uae30 \uc704\ud574 PPA(Personal Package Archive)\ub97c \ucd94\uac00\ud558\ub294 \uac83\uc774 \uc88b\uc2b5\ub2c8\ub2e4. 2. Certbot \ubc0f Apache \ud50c\ub7ec\uadf8\uc778 \uc124\uce58 \uc774\uc81c Certbot\uacfc Apache\uc640\uc758 \uc5f0\ub3d9\uc744 \uc704\ud55c \ud50c\ub7ec\uadf8\uc778\uc744 \uc124\uce58\ud569\ub2c8\ub2e4. python3-certbot-apache&nbsp;\ud328\ud0a4\uc9c0\ub294 Certbot\uc774 Apache \uc11c\ubc84 \uad6c\uc131\uc744 \uc790\ub3d9\uc73c\ub85c \uc870\uc815\ud560 &hellip; <a href=\"https:\/\/absol.kr\/?p=1223\" class=\"more-link\">\ub354 \ubcf4\uae30<span class=\"screen-reader-text\"> &#8220;apache \uc124\uce58 \ud6c4 Let&#8217;s Encrypt \ubb34\ub8ccSSL\/TLS \uc778\uc99d\uc11c \uc124\uce58&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1223","post","type-post","status-publish","format-standard","hentry","category-d-service"],"_links":{"self":[{"href":"https:\/\/absol.kr\/index.php?rest_route=\/wp\/v2\/posts\/1223","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/absol.kr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/absol.kr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/absol.kr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/absol.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1223"}],"version-history":[{"count":3,"href":"https:\/\/absol.kr\/index.php?rest_route=\/wp\/v2\/posts\/1223\/revisions"}],"predecessor-version":[{"id":1238,"href":"https:\/\/absol.kr\/index.php?rest_route=\/wp\/v2\/posts\/1223\/revisions\/1238"}],"wp:attachment":[{"href":"https:\/\/absol.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1223"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/absol.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1223"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/absol.kr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1223"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}