{"id":10531,"date":"2025-07-18T14:47:46","date_gmt":"2025-07-18T05:47:46","guid":{"rendered":"https:\/\/www.skyer9.pe.kr\/wordpress\/?p=10531"},"modified":"2026-01-13T13:33:31","modified_gmt":"2026-01-13T04:33:31","slug":"lets-encrypt-wildcard-%ec%9d%b8%ec%a6%9d%ec%84%9c-%eb%b0%9c%ea%b8%89%eb%b0%9b%ea%b8%b0","status":"publish","type":"post","link":"https:\/\/www.skyer9.pe.kr\/wordpress\/?p=10531","title":{"rendered":"Let\u2019s Encrypt Wildcard \uc778\uc99d\uc11c \ubc1c\uae09\ubc1b\uae30"},"content":{"rendered":"<h1>Let\u2019s Encrypt Wildcard \uc778\uc99d\uc11c \ubc1c\uae09\ubc1b\uae30<\/h1>\n<h2>\uc8fc\uc758\uc0ac\ud56d<\/h2>\n<p>Wildcard \uc778\uc99d\uc11c\ub97c \uc790\ub3d9\uac31\uc2e0\uc744 \ud558\uae30 \uc704\ud574\uc11c\ub294,<br \/>\n\uc790\ub3d9\uac31\uc2e0 \uae30\ub2a5\uc744 \uc9c0\uc6d0\ud558\ub294 \ub3c4\uba54\uc778 \uad00\ub9ac\uc5c5\uccb4 (AWS \ub4f1) \uc5d0 \ub3c4\uba54\uc778\uc744 \uad00\ub9ac\ud558\uace0 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4.<\/p>\n<p>\uc790\ub3d9\uac31\uc2e0 \uae30\ub2a5\uc774 \uc5c6\ub294 \uacbd\uc6b0, 1~2\ub2ec\uc5d0 \ud55c\ubc88\uc529 \uc218\ub3d9\uc73c\ub85c \uac31\uc2e0\uc744 \ud574\uc8fc\uc5b4\uc57c \ud569\ub2c8\ub2e4.<\/p>\n<h2>certbot \uc124\uce58<\/h2>\n<pre><code class=\"language-bash\">sudo apt update &amp;&amp; sudo apt upgrade\nsudo apt install -y certbot<\/code><\/pre>\n<h2>\uc640\uc77c\ub4dc \uc778\uc99d\uc11c \ubc1c\uae09 (\uc218\ub3d9)<\/h2>\n<pre><code class=\"language-bash\">sudo certbot certonly --manual \\\n    --preferred-challenges=dns \\\n    --server https:\/\/acme-v02.api.letsencrypt.org\/directory \\\n    --domain &quot;*.example.com&quot; --domain &quot;example.com&quot;<\/code><\/pre>\n<p>\uc640\uc77c\ub4dc \uc778\uc99d\uc11c\ub97c \ubc1c\uae09\ubc1b\uae30 \uc704\ud574\uc11c\ub294 \ub3c4\uba54\uc778\uc758 \uc18c\uc720\uc790\uc784\uc744 \uc778\uc99d\ud574\uc57c \ud569\ub2c8\ub2e4.<\/p>\n<p>DNS \uc11c\ubc84\uc5d0 <code>_acme-challenge.example.com<\/code> \uac19\uc740 \uc11c\ube0c\ub3c4\uba54\uc778\uc744 \uc0dd\uc131\ud558\ub77c\ub294 \ubb38\uad6c\uac00 \ub098\uc624\uba74,<br \/>\n_acme-challenge \uc11c\ube0c\ub3c4\uba54\uc778\uc744 TXT \ud0c0\uc785\uc73c\ub85c \uc0dd\uc131\ud558\uace0 \uc544\ub798 \ubb38\uc790\uc5f4\uc744 \uc785\ub825\ud574 \uc90d\ub2c8\ub2e4.<br \/>\n\ub3c4\uba54\uc778 \uc815\ubcf4 \ubcc0\uacbd\uc774 \ubc18\uc601\ub418\uae30\ub97c \uae30\ub2e4\ub824(1~10 \ubd84, DNS \uc11c\ubc84\uc124\uc815\uc5d0\uc11c \uacb0\uc815\ub428) \uc5d4\ud130\ub97c \uc785\ub825\ud574 \uc8fc\uba74 \ub429\ub2c8\ub2e4.<\/p>\n<p><a href=\"https:\/\/toolbox.googleapps.com\/apps\/dig\/#TXT\/_acme-challenge.example.com\">https:\/\/toolbox.googleapps.com\/apps\/dig\/#TXT\/_acme-challenge.example.com<\/a><\/p>\n<p>\uc704 \ub9c1\ud06c \ub4f1\uc744 \uc774\uc6a9\ud574 \ubc18\ub4dc\uc2dc \ub3c4\uba54\uc778\uc815\ubcf4\uac00 \uc0dd\uc131\ub41c \uac83\uc744 \ud655\uc778\ud55c \ud6c4 \uc5d4\ud130\ub97c \uc785\ub825\ud558\uc138\uc694.<\/p>\n<p>\ub3c4\uba54\uc778\uc744 \ub450\uac1c \ucd94\uac00\ud558\uae30 \ub54c\ubb38\uc778\uc9c0 \uc704 \uc808\ucc28\ub97c \ud55c \ubc88 \ub354 \ud558\ub77c\uace0 \ud569\ub2c8\ub2e4.<\/p>\n<p>\uac12\uc740 \ub300\ub7b5 \uc544\ub798\ucc98\ub7fc \ub450\uc904\ub85c \uc785\ub825\ud558\uba74 \ub429\ub2c8\ub2e4.<\/p>\n<pre><code class=\"language-bash\">&quot;XXXXXXXXXXXXXX&quot;\n&quot;YYYYYYYYYYYYYY&quot;<\/code><\/pre>\n<h2>\uc778\uc99d\uc11c \ud655\uc778<\/h2>\n<p>\/etc\/letsencrypt\/live\/ \ud3f4\ub354\uc5d0 \uc0dd\uc131\ub41c \uc778\uc99d\uc11c\ub97c \ud655\uc778\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<h2>\uc9c0\ub3d9\uac31\uc2e0 \uc808\ucc28 \uac1c\uc694<\/h2>\n<p>EC2 \uc778\uc2a4\ud134\uc2a4\uc5d0 Role \uc774 \ud560\ub2f9\ub41c \uacbd\uc6b0\uc640 \ud560\ub2f9\ub418\uc9c0 \uc54a\uc740 \uacbd\uc6b0\uac00 \uc57d\uac04 \ub2e4\ub985\ub2c8\ub2e4.<\/p>\n<ul>\n<li>AWS IAM \uc815\ucc45\uc0dd\uc131<\/li>\n<li>AWS IAM \uacc4\uc815\uc0dd\uc131<\/li>\n<li>\ub9ac\ub205\uc2a4 \uc778\uc99d\uc11c \uac31\uc2e0\uc6a9 \uc0c8 \uc720\uc800 \uc0dd\uc131<\/li>\n<li>\ub9ac\ub205\uc2a4 \uc11c\ube44\uc2a4 \ub4f1\ub85d<\/li>\n<\/ul>\n<h2>AWS IAM \uc815\ucc45\uc0dd\uc131<\/h2>\n<p><a href=\"https:\/\/www.skyer9.pe.kr\/wordpress\/wp-content\/uploads\/2025\/03\/2025-03-04-02.png\"><img decoding=\"async\" src=\"https:\/\/www.skyer9.pe.kr\/wordpress\/wp-content\/uploads\/2025\/03\/2025-03-04-02.png\" alt=\"\" \/><\/a><\/p>\n<p><a href=\"https:\/\/www.skyer9.pe.kr\/wordpress\/wp-content\/uploads\/2025\/03\/2025-03-04-03.png\"><img decoding=\"async\" src=\"https:\/\/www.skyer9.pe.kr\/wordpress\/wp-content\/uploads\/2025\/03\/2025-03-04-03.png\" alt=\"\" \/><\/a><\/p>\n<p>JSON \uc744 \uc120\ud0dd\ud558\uace0 \uc544\ub798 \ub0b4\uc6a9\uc744 \uc785\ub825\ud574 \uc90d\ub2c8\ub2e4.<\/p>\n<p><a href=\"https:\/\/www.skyer9.pe.kr\/wordpress\/wp-content\/uploads\/2025\/03\/2025-03-04-04.png\"><img decoding=\"async\" src=\"https:\/\/www.skyer9.pe.kr\/wordpress\/wp-content\/uploads\/2025\/03\/2025-03-04-04.png\" alt=\"\" \/><\/a><\/p>\n<pre><code class=\"language-json\">{  \n    &quot;Version&quot;: &quot;2012-10-17&quot;,  \n    &quot;Id&quot;: &quot;certbot-dns-route53 sample policy&quot;,  \n    &quot;Statement&quot;: [  \n        {  \n            &quot;Effect&quot;: &quot;Allow&quot;,  \n            &quot;Action&quot;: [  \n                &quot;route53:ListHostedZones&quot;,  \n                &quot;route53:GetChange&quot;  \n            ],  \n            &quot;Resource&quot;: [  \n                &quot;*&quot;  \n            ]  \n        },  \n        {  \n            &quot;Effect&quot; : &quot;Allow&quot;,  \n            &quot;Action&quot; : [  \n                &quot;route53:ChangeResourceRecordSets&quot;  \n            ],  \n            &quot;Resource&quot; : [  \n                &quot;arn:aws:route53:::hostedzone\/YOURHOSTEDZONEID&quot;  \n            ]  \n        }  \n    ]  \n}  <\/code><\/pre>\n<p>\ud654\uba74 \ub9e8 \uc544\ub798 <code>\ub2e4\uc74c<\/code> \uc744 \ud074\ub9ad\ud569\ub2c8\ub2e4.<br \/>\n\uc815\ucc45 \uc774\ub984\uc744 renewcert \ub85c \uc785\ub825\ud558\uace0 \uc815\ucc45\uc0dd\uc131 \ubc84\ud2bc\uc744 \ud074\ub9ad\ud569\ub2c8\ub2e4.<\/p>\n<p><code>YOURHOSTEDZONEID<\/code> \uc740 \uc544\ub798 \uba85\ub839\uc911 <code>aws route53 list-hosted-zones<\/code> \uc5d0\uc11c \ud655\uc778\ud560 \uc218 \uc788\ub294 \uc544\uc774\ub514\ub85c \uc218\uc815\ud574 \uc8fc\uc5b4\uc57c \ud569\ub2c8\ub2e4.<\/p>\n<h2>AWS IAM \uacc4\uc815\uc0dd\uc131<\/h2>\n<p><font color=red><b>EC2 \uc778\uc2a4\ud134\uc2a4\uc5d0\uc11c \uc2e4\ud589\uc911\uc774\uace0, EC2 \uc778\uc2a4\ud134\uc2a4\uc5d0 Role \uc774 \ud560\ub2f9\ub418\uc5b4 \uc788\ub294 \uacbd\uc6b0, Role \uc5d0\ub3c4 \uc815\ucc45\uc744 \ucd94\uac00\ud574 \uc8fc\uc5b4\uc57c \ud569\ub2c8\ub2e4.<\/b><\/font><\/p>\n<p>\uc67c\ucabd \uba54\ub274\uc5d0\uc11c <code>\uc0ac\uc6a9\uc790<\/code>\ub97c \ud074\ub9ad\ud558\uace0 <code>\uc0ac\uc6a9\uc790 \uc0dd\uc131<\/code> \ubc84\ud2bc\uc744 \ud074\ub9ad\ud569\ub2c8\ub2e4.<br \/>\n\uc0ac\uc6a9\uc790 \uc774\ub984\uc744 \uc785\ub825\ud558\uace0 <code>\ub2e4\uc74c<\/code>\uc744 \ud074\ub9ad\ud569\ub2c8\ub2e4.<br \/>\n<code>\uc815\ucc45 \uc9c1\uc811 \uc124\uc815<\/code>\uc744 \uc120\ud0dd\ud558\uace0 \uc704\uc5d0\uc11c \uc0dd\uc131\ud55c \uc815\ucc45\uc744 \uac80\uc0c9\ud574\uc11c \uc120\ud0dd\ud558\uace0 <code>\ub2e4\uc74c<\/code>\uc744 \ud074\ub9ad\ud569\ub2c8\ub2e4.<br \/>\n<code>\uc0ac\uc6a9\uc790 \uc0dd\uc131<\/code> \ubc84\ud2bc\uc744 \ud074\ub9ad\ud569\ub2c8\ub2e4.<\/p>\n<p>\uc67c\ucabd \uba54\ub274\uc5d0\uc11c <code>\uc0ac\uc6a9\uc790<\/code>\ub97c \ud074\ub9ad\ud558\uace0 \ubc29\uae08 \uc0dd\uc131\ud55c \uc0ac\uc6a9\uc790\ub97c \uac80\uc0c9\ud574\uc11c \uc870\ud68c\ud569\ub2c8\ub2e4.<br \/>\n<code>\uc561\uc138\uc2a4 \ud0a4 \ub9cc\ub4e4\uae30<\/code> \ub97c \ud074\ub9ad\ud569\ub2c8\ub2e4.<br \/>\n<code>Command Line interface(CLI)<\/code> \ub97c \uc120\ud0dd\ud558\uace0 \ub2e4\uc74c\uc744 \ud074\ub9ad\ud569\ub2c8\ub2e4.<br \/>\n<code>\uc5d1\uc138\uc2a4 \ud0a4<\/code>\uc640 <code>\ube44\ubc00 \uc5d1\uc138\uc2a4\ud0a4<\/code>\ub97c \uba54\ubaa8\uc7a5\uc5d0 \ubcf5\uc0ac \ubd99\uc5ec\ub123\uae30\ud569\ub2c8\ub2e4.<\/p>\n<h2>\ub9ac\ub205\uc2a4 \uc778\uc99d\uc11c \uac31\uc2e0\uc6a9 \uc0c8 \uc720\uc800 \uc0dd\uc131<\/h2>\n<pre><code class=\"language-bash\">sudo apt-get update\nsudo apt-get install python3-pip\n\n# sudo pip3 install certbot-dns-route53\nsudo apt install python3-certbot-dns-route53<\/code><\/pre>\n<p><code>renewhttps<\/code> \uc720\uc800\ub97c \uc0dd\uc131\ud558\uace0 sudo \uad8c\ud55c\uc744 \ubd80\uc5ec\ud569\ub2c8\ub2e4.<\/p>\n<pre><code class=\"language-bash\">sudo adduser renewhttps\nsudo usermod -aG sudo renewhttps\n\nsudo vi \/etc\/sudoers\n# \ub9e8 \uc544\ub798\uc5d0 \ub2e4\uc74c \ub77c\uc778\uc744 \ucd94\uac00\ud569\ub2c8\ub2e4.\nrenewhttps      ALL=NOPASSWD: ALL<\/code><\/pre>\n<p>renewhttps \uc640 ALL \uc0ac\uc774\ub294 \ubc18\ub4dc\uc2dc \ud0ed\ubb38\uc790\ub85c \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4.<\/p>\n<p>\uc0c8\ub85c \uc0dd\uc131\ud55c \uacc4\uc815\uc73c\ub85c \ub85c\uadf8\uc778\ud569\ub2c8\ub2e4.<\/p>\n<pre><code class=\"language-bash\">sudo su - renewhttps\n\n# pip3 install awscli\npip3 install awscli --break-system-packages\n\naws configure\nAWS Access Key ID [None]: AKIA3V2XXXXXXXXXXXX\nAWS Secret Access Key [None]: VD2v1vcPmGiYyRWXXXXXXXXXXX\nDefault region name [None]: ap-northeast-2\nDefault output format [None]: json<\/code><\/pre>\n<h2>\uc778\uc99d\uc11c \uac31\uc2e0 \ud14c\uc2a4\ud2b8<\/h2>\n<p>authenticator \ub97c dns-route53 \uc73c\ub85c \ubcc0\uacbd\ud569\ub2c8\ub2e4.<\/p>\n<pre><code class=\"language-bash\">sudo cat \/etc\/letsencrypt\/renewal\/example.com.conf\n......\nauthenticator = dns-route53<\/code><\/pre>\n<p>\uc778\uc99d\uc11c \uac31\uc2e0\uc6a9 \uacc4\uc815\uc73c\ub85c \ub85c\uadf8\uc778\ud569\ub2c8\ub2e4.<\/p>\n<pre><code class=\"language-bash\">sudo su - renewhttps<\/code><\/pre>\n<p>AWS \uc811\uc18d\uc815\ubcf4\uac00 \uc815\uc0c1\uc801\uc73c\ub85c \uc124\uc815\ub41c \uac83\uc744 \ud655\uc778\ud569\ub2c8\ub2e4.<\/p>\n<pre><code class=\"language-bash\">aws configure list\n      Name                    Value             Type    Location\n      ----                    -----             ----    --------\n   profile                &lt;not set&gt;             None    None\naccess_key     ****************HZVD shared-credentials-file\nsecret_key     ****************eVvx shared-credentials-file\n    region           ap-northeast-2      config-file    ~\/.aws\/config<\/code><\/pre>\n<p><font color=red><b>\uc544\ub798 \uba85\ub839\uc73c\ub85c \ud655\uc778\ub418\ub294 HostedZone Id \ub85c \uc815\ucc45\uc758 <code>YOURHOSTEDZONEID<\/code> \ubd80\ubd84\uc744 \uc218\uc815\ud574 \uc8fc\uc5b4\uc57c \ud569\ub2c8\ub2e4.<\/b><\/font><\/p>\n<pre><code class=\"language-bash\">aws route53 list-hosted-zones\n{\n    &quot;HostedZones&quot;: [\n        {\n            &quot;Id&quot;: &quot;\/hostedzone\/XXXXXXXXXXXXX&quot;,\n            &quot;Name&quot;: &quot;example.com.&quot;,\n            &quot;CallerReference&quot;: &quot;3F501356-XXXXXXXXXXXXXXXX&quot;,\n            &quot;Config&quot;: {\n                &quot;PrivateZone&quot;: false\n            },\n            &quot;ResourceRecordSetCount&quot;: 24\n        }\n    ]\n}<\/code><\/pre>\n<p><code>_acme-challenge<\/code> \uac00 \uc788\ub2e4\uba74 Route53 \uc5d0\uc11c \uc0ad\uc81c\ud574 \uc90d\ub2c8\ub2e4.<\/p>\n<pre><code class=\"language-bash\">dig TXT _acme-challenge.example.com\ndig TXT _acme-challenge.example.com @8.8.8.8<\/code><\/pre>\n<p>\uc544\ub798\ucc98\ub7fc \uc131\uacf5 \uba54\uc2dc\uc9c0\uac00 \ud45c\uc2dc\ub418\uba74 \uc644\ub8cc\ub41c \uac83\uc785\ub2c8\ub2e4.<\/p>\n<pre><code class=\"language-bash\">sudo certbot renew --dry-run --cert-name example.com -v\n......\nCongratulations, all simulated renewals succeeded:\n......<\/code><\/pre>\n<h2>\ub9ac\ub205\uc2a4 \uc11c\ube44\uc2a4 \ub4f1\ub85d<\/h2>\n<p>\uc704 \uba85\ub839\uc744 \uc2e4\ud589\ud558\ub294 \uac83\uc73c\ub85c \uc778\uc99d\uc11c \uac31\uc2e0 \uc11c\ube44\uc2a4\uac00 \ub4f1\ub85d\ub429\ub2c8\ub2e4.<\/p>\n<pre><code class=\"language-bash\">sudo systemctl status certbot.timer<\/code><\/pre>\n<p>\ud558\uc9c0\ub9cc \uc11c\ube44\uc2a4\uac00 \uc2e4\ud589\uc911\uc774 \uc544\ub2c8\uba74 \uc544\ub798 \uba85\ub839\uc73c\ub85c \uc11c\ube44\uc2a4\ub97c \ub4f1\ub85d\ud574 \uc90d\ub2c8\ub2e4.<\/p>\n<pre><code class=\"language-bash\">sudo systemctl enable certbot.timer\nsudo systemctl start certbot.timer<\/code><\/pre>\n<p>certbot.service \ub97c \ub4f1\ub85d\ud569\ub2c8\ub2e4.<br \/>\n(\ub8e8\ud2b8\ub85c \uc2e4\ud589\ub418\uc5b4\uc57c \ud569\ub2c8\ub2e4.)<\/p>\n<pre><code class=\"language-bash\">sudo vi \/lib\/systemd\/system\/certbot.service\n-----------------------\n[Unit]\nDescription=Certbot\nDocumentation=file:\/\/\/usr\/share\/doc\/python-certbot-doc\/html\/index.html\nDocumentation=https:\/\/letsencrypt.readthedocs.io\/en\/latest\/\n\n[Service]\nType=oneshot\nExecStart=\/usr\/bin\/certbot -q renew --no-random-sleep-on-renew\nPrivateTmp=true\n-----------------------<\/code><\/pre>\n<pre><code class=\"language-bash\">sudo systemctl daemon-reload<\/code><\/pre>\n<h2>nginx \uc7ac\uc2dc\uc791<\/h2>\n<p>\uc778\uc99d\uc11c \uac31\uc2e0 \ud6c4 nginx \uc7ac\uc2dc\uc791\uc774 \ud544\uc694\ud55c \uacbd\uc6b0 \uc124\uc815\ud574 \uc90d\ub2c8\ub2e4.<br \/>\n\uc544\ub798 \uba85\ub839\uc73c\ub85c certbot \uc774 \uc790\ub3d9\uc73c\ub85c nginx \ub97c \uc7ac\uc2dc\uc791\ud569\ub2c8\ub2e4.<\/p>\n<pre><code class=\"language-bash\">sudo mkdir -p \/etc\/letsencrypt\/renewal-hooks\/post\/<\/code><\/pre>\n<pre><code class=\"language-bash\">sudo vi \/etc\/letsencrypt\/renewal-hooks\/post\/reload-nginx.sh\n-----------------------\n#!\/bin\/bash\nsystemctl reload nginx\n-----------------------<\/code><\/pre>\n<pre><code class=\"language-bash\">sudo chmod +x \/etc\/letsencrypt\/renewal-hooks\/post\/reload-nginx.sh<\/code><\/pre>\n<h2>\uc8fc\uc694 \uba85\ub839\uc5b4<\/h2>\n<pre><code class=\"language-bash\"># \uac31\uc2e0 \ub85c\uadf8 \ud655\uc778\nsudo tail -200 \/var\/log\/letsencrypt\/letsencrypt.log\n\n# \ud604\uc7ac \uc778\uc99d\uc11c \uc0c1\ud0dc \ud655\uc778\nsudo certbot certificates\n\n# \uac15\uc81c \uac31\uc2e0\nsudo certbot renew --force-renewal\n# sudo certbot --nginx -d skyer9.pe.kr -d *.skyer9.pe.kr<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Let\u2019s Encrypt Wildcard \uc778\uc99d\uc11c \ubc1c\uae09\ubc1b\uae30 \uc8fc\uc758\uc0ac\ud56d Wildcard \uc778\uc99d\uc11c\ub97c \uc790\ub3d9\uac31\uc2e0\uc744 \ud558\uae30 \uc704\ud574\uc11c\ub294, \uc790\ub3d9\uac31\uc2e0 \uae30\ub2a5\uc744 \uc9c0\uc6d0\ud558\ub294 \ub3c4\uba54\uc778 \uad00\ub9ac\uc5c5\uccb4 (AWS \ub4f1) \uc5d0 \ub3c4\uba54\uc778\uc744 \uad00\ub9ac\ud558\uace0 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4. \uc790\ub3d9\uac31\uc2e0 \uae30\ub2a5\uc774 \uc5c6\ub294 \uacbd\uc6b0, 1~2\ub2ec\uc5d0 \ud55c\ubc88\uc529 \uc218\ub3d9\uc73c\ub85c \uac31\uc2e0\uc744 \ud574\uc8fc\uc5b4\uc57c \ud569\ub2c8\ub2e4. certbot \uc124\uce58 sudo apt update &amp;&amp; sudo apt upgrade sudo apt install -y certbot \uc640\uc77c\ub4dc \uc778\uc99d\uc11c \ubc1c\uae09 (\uc218\ub3d9) sudo certbot certonly &#8211;manual\u2026 <span class=\"read-more\"><a href=\"https:\/\/www.skyer9.pe.kr\/wordpress\/?p=10531\">Read More &raquo;<\/a><\/span><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12],"tags":[],"class_list":["post-10531","post","type-post","status-publish","format-standard","hentry","category-devops"],"_links":{"self":[{"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/10531","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=10531"}],"version-history":[{"count":18,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/10531\/revisions"}],"predecessor-version":[{"id":11306,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/10531\/revisions\/11306"}],"wp:attachment":[{"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=10531"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=10531"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=10531"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}