{"id":7151,"date":"2022-12-05T12:00:51","date_gmt":"2022-12-05T03:00:51","guid":{"rendered":"https:\/\/www.skyer9.pe.kr\/wordpress\/?p=7151"},"modified":"2022-12-07T14:31:38","modified_gmt":"2022-12-07T05:31:38","slug":"kubernetes-%ec%82%ac%ec%84%a4-%eb%8f%84%eb%a9%94%ec%9d%b8%ec%97%90-https-%ec%a0%81%ec%9a%a9%ed%95%98%ea%b8%b0","status":"publish","type":"post","link":"https:\/\/www.skyer9.pe.kr\/wordpress\/?p=7151","title":{"rendered":"Kubernetes \u2013 \uc0ac\uc124 \ub3c4\uba54\uc778\uc5d0 https \uc801\uc6a9\ud558\uae30"},"content":{"rendered":"<h1>Kubernetes \u2013 \uc0ac\uc124 \ub3c4\uba54\uc778\uc5d0 https \uc801\uc6a9\ud558\uae30<\/h1>\n<p>\uc0ac\uc124 \ub3c4\uba54\uc778\uc744 \uc0dd\uc131 \ub610\ub294 \uc11c\ube44\uc2a4 DNS \uc5d0 \uc0ac\uc124 \uc778\uc99d\uc11c\ub97c \ubd99\uc5ec\uc90d\ub2c8\ub2e4.<\/p>\n<p>. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .<\/p>\n<h2>rootCA \uc778\uc99d\uc11c \/ \uc11c\ubc84 \uc778\uc99d\uc11c \uc0dd\uc131<\/h2>\n<p><a href=\"https:\/\/www.skyer9.pe.kr\/wordpress\/?p=2585\">\ucc38\uc870<\/a><\/p>\n<p>\uc704 \ub9c1\ud06c\ub97c \ucc38\uc870\ud558\uc5ec rootCA \uc778\uc99d\uc11c\ub97c \uc0dd\uc131\ud569\ub2c8\ub2e4.<\/p>\n<p>\uc544\ub798 \uba85\ub839\uc744 \uc785\ub825\ud558\uc5ec <code>*.default.private<\/code>, <code>*. repository.private<\/code> \ub97c \uac01\uac01 \uc0dd\uc131\ud569\ub2c8\ub2e4.<\/p>\n<pre><code class=\"language-bash\">openssl ecparam -out default.key -name prime256v1 -genkey\nopenssl req -new -sha256 -key default.key -out default.csr\n\nopenssl ecparam -out repository.key -name prime256v1 -genkey\nopenssl req -new -sha256 -key repository.key -out repository.csr<\/code><\/pre>\n<pre><code class=\"language-bash\">vi default-extention.ext\n---------------------------\nauthorityKeyIdentifier=keyid,issuer\nbasicConstraints=CA:FALSE\nkeyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment\nsubjectAltName = @alt_names\n\n[alt_names]\nDNS.1 = *.default.private\n---------------------------<\/code><\/pre>\n<pre><code class=\"language-bash\">vi repository-extention.ext\n---------------------------\nauthorityKeyIdentifier=keyid,issuer\nbasicConstraints=CA:FALSE\nkeyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment\nsubjectAltName = @alt_names\n\n[alt_names]\nDNS.1 = *.repository.private\n---------------------------<\/code><\/pre>\n<pre><code class=\"language-bash\">openssl x509 -req -sha256 -days 999999 -in default.csr -CA rootCA.crt -CAkey rootCA.key -CAcreateserial -out default.crt -extfile default-extention.ext<\/code><\/pre>\n<pre><code class=\"language-bash\">openssl x509 -req -sha256 -days 999999 -in repository.csr -CA rootCA.crt -CAkey rootCA.key -CAcreateserial -out repository.crt -extfile repository-extention.ext<\/code><\/pre>\n<p>\uc778\uc99d\uc11c\uac00 \uc815\uc0c1\uc801\uc73c\ub85c \uc0dd\uc131\ub418\uc5c8\ub294\uc9c0 \ud655\uc778\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<pre><code class=\"language-bash\">openssl x509 -in default.crt -text -noout\nopenssl x509 -in repository.crt -text -noout<\/code><\/pre>\n<h2>rootCA \uc778\uc99d\uc11c\ub97c Pod \uc5d0 \ubc30\ud3ec<\/h2>\n<p><a href=\"https:\/\/paraspatidar.medium.com\/add-self-signed-or-ca-root-certificate-in-kubernetes-pod-ca-root-certificate-store-cb7863cb3f87\">\ucc38\uc870<\/a><\/p>\n<h3>rootCA \uc778\uc99d\uc11c \ud655\uc778<\/h3>\n<p>\uc778\uc99d\uc11c\ub294 \uc544\ub798\uc640 \uac19\uc740 \ub0b4\uc6a9\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4.<\/p>\n<pre><code class=\"language-bash\">cat rootCA.crt\n-----BEGIN CERTIFICATE-----\nMIICBzCCAa0CFFQsOnoVXsnZPXXXXXXXXXXXX\n......\n6ks6jOgQdifuAiAA9XXXXXXXXXXXXXXXXXXXX\n-----END CERTIFICATE-----<\/code><\/pre>\n<h3>\uc778\uc99d\uc11c \ub4f1\ub85d<\/h3>\n<pre><code class=\"language-bash\">kubectl create configmap default-pemstore --from-file=rootCA.crt -n default\nkubectl create configmap repository-pemstore --from-file=rootCA.crt -n repository<\/code><\/pre>\n<h3>Pod \uc5d0 \ubc30\ud3ec<\/h3>\n<pre><code class=\"language-bash\">vi nginx-deployment-rootCa.yaml\n---------------------------\napiVersion: apps\/v1\nkind: Deployment\nmetadata:\n  name: nginx-deployment\n  namespace: default\n  labels:\n    app: nginx\nspec:\n  replicas: 1\n  selector:\n    matchLabels:\n      app: nginx\n  template:\n    metadata:\n      labels:\n        app: nginx\n    spec:\n      containers:\n      - name: nginx\n        image: nginx:1.14.2\n        volumeMounts:\n        - name: default-pemstore            # \uc5ec\uae30\n          mountPath: \/etc\/ssl\/certs\/default.pem\n          subPath: rootCA.crt\n          readOnly: true\n        ports:\n        - containerPort: 80\n      volumes:\n      - name: default-pemstore              # \uc5ec\uae30\n        configMap:\n          name: default-pemstore\n---------------------------<\/code><\/pre>\n<pre><code class=\"language-bash\">kubectl apply -f nginx-deployment-rootCa.yaml<\/code><\/pre>\n<h3>\ud655\uc778\ud558\uae30<\/h3>\n<pre><code class=\"language-bash\">kubectl get pods -n default\nNAME                                READY   STATUS             RESTARTS   AGE\nnginx-deployment-6669bcf7d4-8hdst   1\/1     Running            0          42s<\/code><\/pre>\n<p>nginx \uc774\ubbf8\uc9c0 \uc790\uccb4\uc5d0 pem \ud30c\uc77c\uc774 \uc5c6\uae30 \ub54c\ubb38\uc5d0,<br \/>\n\ucd94\uac00\ud55c <code>default.pem<\/code> \ud30c\uc77c \ud55c\uac1c\ub9cc \uc788\ub2e4.<\/p>\n<pre><code class=\"language-bash\">kubectl exec -it nginx-deployment-6669bcf7d4-8hdst -- \/bin\/bash\nls -al \/etc\/ssl\/certs\/<\/code><\/pre>\n<h2>Pod \uc5d0 \uc11c\ubc84 \uc778\uc99d\uc11c \ubc30\ud3ec<\/h2>\n<p><a href=\"https:\/\/ooeunz.tistory.com\/143\">\ucc38\uc870<\/a><\/p>\n<h3>\uc778\uc99d\uc11c \ub4f1\ub85d<\/h3>\n<pre><code class=\"language-bash\">mkdir default\nmv default.* default\/\nmkdir repository\nmv repository.* repository\/<\/code><\/pre>\n<pre><code class=\"language-bash\">kubectl create configmap default-server-pemstore --from-file=default\/ -n default\n# kubectl create configmap repository-server-pemstore --from-file=repository\/ -n repository<\/code><\/pre>\n<h3>Pod \uc5d0 \ubc30\ud3ec<\/h3>\n<pre><code class=\"language-bash\">vi nginx-deployment-rootCa-server.yaml\n---------------------------\napiVersion: apps\/v1\nkind: Deployment\nmetadata:\n  name: nginx-deployment\n  namespace: default\n  labels:\n    app: nginx\nspec:\n  replicas: 1\n  selector:\n    matchLabels:\n      app: nginx\n  template:\n    metadata:\n      labels:\n        app: nginx\n    spec:\n      containers:\n      - name: nginx\n        image: nginx:1.14.2\n        volumeMounts:\n        - name: default-pemstore\n          mountPath: \/etc\/ssl\/certs\/default.pem\n          subPath: rootCA.crt\n          readOnly: true\n        - name: default-server-pemstore      # \uc5ec\uae30\n          mountPath: \/ssl\/\n          readOnly: true\n        ports:\n        - containerPort: 80\n      volumes:\n      - name: default-pemstore\n        configMap:\n          name: default-pemstore\n      - name: default-server-pemstore       # \uc5ec\uae30\n        configMap:\n          name: default-server-pemstore\n---------------------------<\/code><\/pre>\n<pre><code class=\"language-bash\">kubectl apply -f nginx-deployment-rootCa-server.yaml<\/code><\/pre>\n<h3>\ud655\uc778\ud558\uae30<\/h3>\n<pre><code class=\"language-bash\">kubectl get pods -n default\nNAME                                READY   STATUS             RESTARTS   AGE\nnginx-deployment-6669bcf7d4-8hdst   1\/1     Running            0          42s<\/code><\/pre>\n<p>nginx \uc774\ubbf8\uc9c0 \uc790\uccb4\uc5d0 pem \ud30c\uc77c\uc774 \uc5c6\uae30 \ub54c\ubb38\uc5d0,<br \/>\n\ucd94\uac00\ud55c <code>default.pem<\/code> \ud30c\uc77c \ud55c\uac1c\ub9cc \uc788\ub2e4.<\/p>\n<pre><code class=\"language-bash\">kubectl exec -it nginx-deployment-6669bcf7d4-8hdst -- \/bin\/bash\nls -al \/ssl\/<\/code><\/pre>\n<h3>nginx https \uc124\uc815<\/h3>\n<pre><code class=\"language-bash\">vi test.default.private-default.conf\n---------------------------\nserver {\n    listen       80;\n    server_name  test.default.private;\n\n    location \/ {\n        root   \/usr\/share\/nginx\/html;\n        index  index.html index.htm;\n    }\n\n    error_page   500 502 503 504  \/50x.html;\n    location = \/50x.html {\n        root   \/usr\/share\/nginx\/html;\n    }\n}\n\nserver {\n    listen       443 ssl;\n    server_name  test.default.private;\n\n    ssl_certificate \/ssl\/default.crt;\n    ssl_certificate_key \/ssl\/default.key;\n\n    location \/ {\n        root   \/usr\/share\/nginx\/html;\n        index  index.html index.htm;\n    }\n\n    error_page   500 502 503 504  \/50x.html;\n    location = \/50x.html {\n        root   \/usr\/share\/nginx\/html;\n    }\n}\n---------------------------<\/code><\/pre>\n<pre><code class=\"language-bash\">kubectl create configmap test.default.private-default --from-file=test.default.private-default.conf -n default<\/code><\/pre>\n<pre><code class=\"language-bash\">vi nginx-deployment-rootCa-server.yaml\n---------------------------\napiVersion: apps\/v1\nkind: Deployment\nmetadata:\n  name: nginx-deployment\n  namespace: default\n  labels:\n    app: nginx-deployment\nspec:\n  replicas: 1\n  selector:\n    matchLabels:\n      app: nginx\n  template:\n    metadata:\n      labels:\n        app: nginx\n    spec:\n      containers:\n      - name: nginx\n        image: nginx:1.14.2\n        volumeMounts:\n        - name: default-pemstore\n          mountPath: \/etc\/ssl\/certs\/default.pem\n          subPath: rootCA.crt\n          readOnly: true\n        - name: default-server-pemstore\n          mountPath: \/ssl\/\n          readOnly: true\n        - name: test-default-private-default     # \uc5ec\uae30\n          mountPath: \/etc\/nginx\/conf.d\/default.conf\n          subPath: test.default.private-default.conf\n          readOnly: true\n        ports:\n        - containerPort: 80\n      volumes:\n      - name: default-pemstore\n        configMap:\n          name: default-pemstore\n      - name: default-server-pemstore\n        configMap:\n          name: default-server-pemstore\n      - name: test-default-private-default       # \uc5ec\uae30\n        configMap:\n          name: test.default.private-default\n---------------------------<\/code><\/pre>\n<pre><code class=\"language-bash\">kubectl apply -f nginx-deployment-rootCa-server.yaml<\/code><\/pre>\n<h3>\ud655\uc778\ud558\uae30<\/h3>\n<h4>Pod \uc544\uc774\ud53c \ud655\uc778<\/h4>\n<pre><code class=\"language-bash\">kubectl get pods -n default\nNAME                                READY   STATUS             RESTARTS   AGE\nnginx-deployment-6669bcf7d4-8hdst   1\/1     Running            0          42s<\/code><\/pre>\n<pre><code class=\"language-bash\">kubectl describe pod nginx-deployment-6669bcf7d4-8hdst\nName:             nginx-deployment-6669bcf7d4-8hdst\nNamespace:        default\nPriority:         0\nService Account:  default\nNode:             notebook\/192.168.0.4\nStart Time:       Mon, 05 Dec 2022 16:10:31 +0900\nLabels:           app=nginx\n                  pod-template-hash=68cff86475\nAnnotations:      &lt;none&gt;\nStatus:           Running\nIP:               10.32.0.3<\/code><\/pre>\n<h4>Worker \uc11c\ubc84\uc5d0 \ub3c4\uba54\uc778 \ub4f1\ub85d<\/h4>\n<p>Worker \uc11c\ubc84 \uc811\uc18d \ud6c4 \ud638\uc2a4\ud2b8\ud30c\uc77c\uc744 \uc218\uc815\ud574 \uc900\ub2e4.<\/p>\n<pre><code class=\"language-bash\">sudo vi \/etc\/hosts\n---------------------------\n10.32.0.3 test.default.private\n---------------------------<\/code><\/pre>\n<h4>Worker \uc11c\ubc84\uc5d0 \uc778\uc99d\uc11c \ub4f1\ub85d<\/h4>\n<p>Worker \uc11c\ubc84 \uc811\uc18d \ud6c4 \uc11c\ubc84\uc5d0 \uc778\uc99d\uc11c\ub97c \ucd94\uac00\ud574 \uc900\ub2e4.<\/p>\n<pre><code class=\"language-bash\"># Linux\nsudo cp rootCA.crt \/etc\/ssl\/certs\/default.pem\nsudo update-ca-certificates\n\n# Ubuntu\nsudo cp rootCA.crt \/usr\/share\/ca-certificates\/mozilla\/default.crt\nsudo dpkg-reconfigure ca-certificates\nsudo update-ca-certificates<\/code><\/pre>\n<h4>https \ud655\uc778<\/h4>\n<p>Worker \uc11c\ubc84 \uc811\uc18d \ud6c4 \uc544\ub798 \uba85\ub839\uc744 \uc2e4\ud589\ud569\ub2c8\ub2e4.<\/p>\n<pre><code class=\"language-bash\">curl http:\/\/test.default.private\/\ncurl https:\/\/test.default.private\/<\/code><\/pre>\n<h2>\uc11c\ube44\uc2a4 DNS \ub85c \uc811\uc18d<\/h2>\n<p>\uc11c\ube44\uc2a4 DNS \uc5d0 \uc0ac\uc124 \uc778\uc99d\uc11c\ub97c \ubd99\uc774\ub824\uba74 default \ub124\uc784\uc2a4\ud398\uc774\uc2a4 \uc774\uc678\uc758 \ub124\uc784\uc2a4\ud398\uc774\uc2a4\uc5d0\uc11c \uc791\uc5c5\ud574\uc57c \ud569\ub2c8\ub2e4.<\/p>\n<p><code>kubernetes.default<\/code> \ub77c\ub294 \uc2dc\uc2a4\ud15c \uc11c\ube44\uc2a4\uac00 \uc788\uae30\ub54c\ubb38\uc5d0 \ubb38\uc81c\uac00 \ubc1c\uc0dd\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<h3>\ub8e8\ud2b8 \uc778\uc99d\uc11c \ud655\uc778<\/h3>\n<pre><code class=\"language-bash\">kubectl get configmap -n repository<\/code><\/pre>\n<h3>\uc11c\ubc84 \uc778\uc99d\uc11c \uc0dd\uc131<\/h3>\n<pre><code class=\"language-bash\">openssl ecparam -out repository.key -name prime256v1 -genkey\nopenssl req -new -sha256 -key repository.key -out repository.csr<\/code><\/pre>\n<pre><code class=\"language-bash\">vi repository-extention.ext\n---------------------------\nauthorityKeyIdentifier=keyid,issuer\nbasicConstraints=CA:FALSE\nkeyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment\nsubjectAltName = @alt_names\n\n[alt_names]\nDNS.1 = *.repository\nDNS.2 = *.repository.svc\nDNS.3 = *.repository.svc.cluster\nDNS.4 = *.repository.svc.cluster.local\n---------------------------<\/code><\/pre>\n<pre><code class=\"language-bash\">openssl x509 -req -sha256 -days 999999 -in repository.csr -CA rootCA.crt -CAkey rootCA.key -CAcreateserial -out repository.crt -extfile repository-extention.ext<\/code><\/pre>\n<pre><code class=\"language-bash\">rm -rf repository\/\nmkdir repository\nmv repository.* repository\/<\/code><\/pre>\n<pre><code class=\"language-bash\">kubectl create configmap repository-server-pemstore --from-file=repository\/ -n repository<\/code><\/pre>\n<h3>Deployment \uc0dd\uc131<\/h3>\n<pre><code class=\"language-bash\">vi test.repository.conf\n---------------------------\nserver {\n    listen       80;\n    server_name  test.repository;\n\n    location \/ {\n        root   \/usr\/share\/nginx\/html;\n        index  index.html index.htm;\n    }\n\n    error_page   500 502 503 504  \/50x.html;\n    location = \/50x.html {\n        root   \/usr\/share\/nginx\/html;\n    }\n}\n\nserver {\n    listen       443 ssl;\n    server_name  test.repository;\n\n    ssl_certificate \/ssl\/repository.crt;\n    ssl_certificate_key \/ssl\/repository.key;\n\n    location \/ {\n        root   \/usr\/share\/nginx\/html;\n        index  index.html index.htm;\n    }\n\n    error_page   500 502 503 504  \/50x.html;\n    location = \/50x.html {\n        root   \/usr\/share\/nginx\/html;\n    }\n}\n---------------------------<\/code><\/pre>\n<pre><code class=\"language-bash\">kubectl create configmap test.repository.conf --from-file=test.repository.conf -n repository<\/code><\/pre>\n<pre><code class=\"language-bash\">vi test.repository.yaml\n---------------------------\napiVersion: apps\/v1\nkind: Deployment\nmetadata:\n  name: nginx-deployment\n  namespace: repository\n  labels:\n    app: nginx-deployment\nspec:\n  replicas: 1\n  selector:\n    matchLabels:\n      app: nginx\n  template:\n    metadata:\n      labels:\n        app: nginx\n    spec:\n      containers:\n      - name: nginx\n        image: nginx:1.14.2\n        volumeMounts:\n        - name: repository-pemstore\n          mountPath: \/etc\/ssl\/certs\/repository.pem\n          subPath: rootCA.crt\n          readOnly: true\n        - name: repository-server-pemstore\n          mountPath: \/ssl\/\n          readOnly: true\n        - name: test-repository-conf     # \uc5ec\uae30\n          mountPath: \/etc\/nginx\/conf.d\/default.conf\n          subPath: test.repository.conf\n          readOnly: true\n        ports:\n        - containerPort: 80\n      volumes:\n      - name: repository-pemstore\n        configMap:\n          name: repository-pemstore\n      - name: repository-server-pemstore\n        configMap:\n          name: repository-server-pemstore\n      - name: test-repository-conf       # \uc5ec\uae30\n        configMap:\n          name: test.repository.conf\n---------------------------<\/code><\/pre>\n<pre><code class=\"language-bash\">kubectl apply -f test.repository.yaml<\/code><\/pre>\n<pre><code class=\"language-bash\">kubectl get pods -n repository<\/code><\/pre>\n<h3>Service \uc0dd\uc131<\/h3>\n<pre><code class=\"language-bash\">vi repository-nginx-svc.yaml\n---------------------------\napiVersion: v1\nkind: Service\nmetadata:\n  name: test\n  namespace: repository\n  labels:\n    app: nginx-service\nspec:\n  type: ClusterIP    # \uc11c\ube44\uc2a4 \ud0c0\uc785\n  ports:\n  - name: http\n    port: 80         # \uc11c\ube44\uc2a4 \ud3ec\ud2b8\n    targetPort: 80   # \ucee8\ud14c\uc774\ub108 \ud3ec\ud2b8(pod \ud3ec\ud2b8)\n    protocol: TCP\n  - name: https\n    port: 443        # \uc11c\ube44\uc2a4 \ud3ec\ud2b8\n    targetPort: 443  # \ucee8\ud14c\uc774\ub108 \ud3ec\ud2b8(pod \ud3ec\ud2b8)\n    protocol: TCP\n  selector:\n    app: nginx\n---------------------------<\/code><\/pre>\n<pre><code class=\"language-bash\">kubectl apply -f repository-nginx-svc.yaml<\/code><\/pre>\n<pre><code class=\"language-bash\">kubectl get svc -n repository\nkubectl describe svc test -n repository<\/code><\/pre>\n<h3>\ud655\uc778\ud558\uae30<\/h3>\n<p><a href=\"https:\/\/www.skyer9.pe.kr\/wordpress\/?p=7173\">\uc5ec\uae30<\/a> \ub97c \ucc38\uc870\ud558\uc5ec busybox Pod \uc744 \uc0dd\uc131\ud569\ub2c8\ub2e4.<\/p>\n<pre><code class=\"language-bash\">kubectl get pod\nkubectl exec -it busybox -- \/bin\/sh\n\nwget http:\/\/test.repository\/\ncat index.html\nrm index.html\n\nwget https:\/\/test.repository\/\ncat index.html\nrm index.html\n\nexit<\/code><\/pre>\n<p><code>wget: note: TLS certificate validation not implemented<\/code><\/p>\n<p>busybox \uc5d0 \uc788\ub294 wget \uc740 https \uc778\uc99d\uc744 \uc9c0\uc6d0\ud558\uc9c0 \uc54a\ub294\ub2e4.<\/p>\n<pre><code class=\"language-bash\">kubectl get pod\nkubectl exec -it busybox -- \/bin\/sh\n\nwget https:\/\/google.com\/\n\nexit<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Kubernetes \u2013 \uc0ac\uc124 \ub3c4\uba54\uc778\uc5d0 https \uc801\uc6a9\ud558\uae30 \uc0ac\uc124 \ub3c4\uba54\uc778\uc744 \uc0dd\uc131 \ub610\ub294 \uc11c\ube44\uc2a4 DNS \uc5d0 \uc0ac\uc124 \uc778\uc99d\uc11c\ub97c \ubd99\uc5ec\uc90d\ub2c8\ub2e4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . rootCA \uc778\uc99d\uc11c \/ \uc11c\ubc84 \uc778\uc99d\uc11c \uc0dd\uc131\u2026 <span class=\"read-more\"><a href=\"https:\/\/www.skyer9.pe.kr\/wordpress\/?p=7151\">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-7151","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\/7151","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=7151"}],"version-history":[{"count":25,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/7151\/revisions"}],"predecessor-version":[{"id":7187,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/7151\/revisions\/7187"}],"wp:attachment":[{"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=7151"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=7151"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=7151"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}