<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>공부 내용 정리 블로그</title>
    <link>https://box8741.tistory.com/</link>
    <description>안녕하세요 </description>
    <language>ko</language>
    <pubDate>Fri, 8 May 2026 05:52:05 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>민콕이</managingEditor>
    <image>
      <title>공부 내용 정리 블로그</title>
      <url>https://tistory1.daumcdn.net/tistory/8451632/attach/ab80973ea1ca4c21ba6ad2a689867551</url>
      <link>https://box8741.tistory.com</link>
    </image>
    <item>
      <title>AWS Service - Launch Template</title>
      <link>https://box8741.tistory.com/58</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;AWS 시작 템플릿 (Launch Template)&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;정의 및 구성&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;EC2 인스턴스를 실행하기 위한 모든 설정 정보&lt;/b&gt;를 저장해두는 설계도입니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Golden Image (AMI)&lt;/b&gt;: OS, 필수 패키지, 보안 패키지, 런타임이 미리 설치된 표준 이미지.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;사용자 설정 (Instance Details)&lt;/b&gt;:
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;인스턴스 유형 (t3.medium 등)&lt;/li&gt;
&lt;li&gt;키 페어 (SSH 접속용)&lt;/li&gt;
&lt;li&gt;보안 그룹 (Security Groups)&lt;/li&gt;
&lt;li&gt;EBS 볼륨 설정&lt;/li&gt;
&lt;li&gt;&lt;b&gt;User Data&lt;/b&gt;: 인스턴스 시작 시 자동으로 실행될 쉘 스크립트.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;시작 템플릿의 강력한 기능 (버전 관리)&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 큰 장점은 &lt;b&gt;버전 관리&lt;/b&gt;가 가능하다는 점입니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;히스토리 관리&lt;/b&gt;: &lt;code&gt;v1&lt;/code&gt;은 PHP 7.4, &lt;code&gt;v2&lt;/code&gt;는 PHP 8.1 식으로 설정을 업데이트하며 이력을 남길 수 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;기본 버전 설정&lt;/b&gt;: 여러 버전 중 하나를 &lt;code&gt;Default&lt;/code&gt;로 지정하여 실수 없이 배포할 수 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;교체 용이&lt;/b&gt;: 문제 발생 시 이전 버전으로 빠르게 롤백(Rollback)이 가능합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;실습&lt;/h2&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;VPC 관련 기본 세팅을 모르겠다면 해당 글을 참고&lt;br /&gt;&lt;a href=&quot;https://velog.io/@box8741/AWS&quot;&gt;https://velog.io/@box8741/AWS&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;시작 템플릿 생성&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AWS에서 EC2 검색 &amp;rarr; 시작 템플릿 &amp;rarr; 시작 템플릿 생성&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;622&quot; data-origin-height=&quot;780&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/mn6mw/dJMcajn7xwM/rtKT5sDDSYT344lhSPA0X1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/mn6mw/dJMcajn7xwM/rtKT5sDDSYT344lhSPA0X1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/mn6mw/dJMcajn7xwM/rtKT5sDDSYT344lhSPA0X1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fmn6mw%2FdJMcajn7xwM%2FrtKT5sDDSYT344lhSPA0X1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;622&quot; height=&quot;780&quot; data-origin-width=&quot;622&quot; data-origin-height=&quot;780&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;626&quot; data-origin-height=&quot;661&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/biKYwD/dJMcagkGMzV/Li5oDQRlQRNHWJMKr9io61/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/biKYwD/dJMcagkGMzV/Li5oDQRlQRNHWJMKr9io61/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/biKYwD/dJMcagkGMzV/Li5oDQRlQRNHWJMKr9io61/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbiKYwD%2FdJMcagkGMzV%2FLi5oDQRlQRNHWJMKr9io61%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;626&quot; height=&quot;661&quot; data-origin-width=&quot;626&quot; data-origin-height=&quot;661&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;740&quot; data-origin-height=&quot;298&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/5dXEc/dJMcacJoL5S/KOdgNj9xQIh6IhBZGyqRw0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/5dXEc/dJMcacJoL5S/KOdgNj9xQIh6IhBZGyqRw0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/5dXEc/dJMcacJoL5S/KOdgNj9xQIh6IhBZGyqRw0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F5dXEc%2FdJMcacJoL5S%2FKOdgNj9xQIh6IhBZGyqRw0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;735&quot; height=&quot;296&quot; data-origin-width=&quot;740&quot; data-origin-height=&quot;298&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;949&quot; data-origin-height=&quot;294&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Fb7kU/dJMcagkGMAk/rA7jRQV5VCZdyxKjTlIPIk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Fb7kU/dJMcagkGMAk/rA7jRQV5VCZdyxKjTlIPIk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Fb7kU/dJMcagkGMAk/rA7jRQV5VCZdyxKjTlIPIk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FFb7kU%2FdJMcagkGMAk%2FrA7jRQV5VCZdyxKjTlIPIk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;744&quot; height=&quot;230&quot; data-origin-width=&quot;949&quot; data-origin-height=&quot;294&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>Public Cloud/AWS</category>
      <author>민콕이</author>
      <guid isPermaLink="true">https://box8741.tistory.com/58</guid>
      <comments>https://box8741.tistory.com/58#entry58comment</comments>
      <pubDate>Thu, 2 Apr 2026 14:39:25 +0900</pubDate>
    </item>
    <item>
      <title>AWS Service - EFS</title>
      <link>https://box8741.tistory.com/57</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;EFS(Elastic File System)&lt;/b&gt;는 한마디로 &lt;b&gt;&quot;여러 서버가 동시에 연결해서 사용할 수 있는 거대한 클라우드 공유 폴더&quot;&lt;/b&gt; 즉 NAS같은 존재입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;EFS의 핵심 특징&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;다중 접속 (Shared Access)&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;수백, 수천 개의 &lt;b&gt;EC2 인스턴스가 동시에&lt;/b&gt; 하나의 EFS에 연결하여 파일을 읽고 쓸 수 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;NFS(Network File System) v4&lt;/b&gt; 프로토콜을 사용하여 리눅스 기반 시스템에서 일반 디렉토리처럼 마운트해 사용합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;완전 탄력적 (Elasticity)&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;용량을 미리 정할 필요가 없습니다. 파일을 넣으면 늘어나고, 지우면 줄어듭니다.&lt;/li&gt;
&lt;li&gt;사용한 만큼만 비용을 지불하므로 관리가 매우 편리합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;고가용성 및 내구성&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;기본적으로 &lt;b&gt;여러 가용 영역(Multi-AZ)&lt;/b&gt;에 데이터를 분산 저장합니다. 특정 AZ에 문제가 생겨도 데이터는 안전하며 다른 AZ의 서버에서 접근이 가능합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;실습&lt;/h2&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;VPC 관련 기본 세팅을 모르겠다면 해당 글을 참고&lt;br /&gt;&lt;a href=&quot;https://velog.io/@box8741/AWS&quot;&gt;https://velog.io/@box8741/AWS&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;파일 시스템 생성&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AWS에서 EFS 검색 &amp;rarr; 파일 시스템 &amp;rarr; 파일 시스템 생성&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;818&quot; data-origin-height=&quot;799&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bXW8Ke/dJMcacbxiUI/bn2xOmZxOI5UUflQHXBAh0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bXW8Ke/dJMcacbxiUI/bn2xOmZxOI5UUflQHXBAh0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bXW8Ke/dJMcacbxiUI/bn2xOmZxOI5UUflQHXBAh0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbXW8Ke%2FdJMcacbxiUI%2Fbn2xOmZxOI5UUflQHXBAh0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;671&quot; height=&quot;655&quot; data-origin-width=&quot;818&quot; data-origin-height=&quot;799&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;생성된 EFS에 들어가서 연결 클릭&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;843&quot; data-origin-height=&quot;547&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/2oHXj/dJMcaiQjBGx/apGziS2015Umug1JRjUhb0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/2oHXj/dJMcaiQjBGx/apGziS2015Umug1JRjUhb0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/2oHXj/dJMcaiQjBGx/apGziS2015Umug1JRjUhb0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F2oHXj%2FdJMcaiQjBGx%2FapGziS2015Umug1JRjUhb0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;707&quot; height=&quot;459&quot; data-origin-width=&quot;843&quot; data-origin-height=&quot;547&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;nfs로 mount&lt;/h4&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;sudo mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport fs-0932c26c953521905.efs.ap-northeast-2.amazonaws.com:/ /etc/nginx/default.d&lt;/code&gt;&lt;/pre&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;efs로 mount&lt;/h4&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;sudo dnf install -y amazon-efs-utils

sudo mount -t efs -o tls fs-0932c26c953521905:/ /etc/nginx/default.d&lt;/code&gt;&lt;/pre&gt;</description>
      <category>Public Cloud/AWS</category>
      <author>민콕이</author>
      <guid isPermaLink="true">https://box8741.tistory.com/57</guid>
      <comments>https://box8741.tistory.com/57#entry57comment</comments>
      <pubDate>Thu, 2 Apr 2026 14:38:17 +0900</pubDate>
    </item>
    <item>
      <title>AWS Service - ELB</title>
      <link>https://box8741.tistory.com/56</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;AWS ELB(Elastic Load Balancing) 종류 및 특징&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;ALB (Application Load Balancer) - L7 (응용 계층)&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;특징&lt;/b&gt;: HTTP/HTTPS 트래픽 처리에 최적화되어 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;고급 기능&lt;/b&gt;: URL 경로(&lt;code&gt;.../images&lt;/code&gt;)나 호스트 이름(&lt;code&gt;api.example.com&lt;/code&gt;), HTTP 헤더 기반의 콘텐츠 라우팅이 가능합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;대상&lt;/b&gt;: 마이크로서비스(MSA), 컨테이너 기반 애플리케이션(ECS/EKS)에 가장 적합합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;NLB (Network Load Balancer) - L4 (전송 계층)&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;특징&lt;/b&gt;: TCP, UDP, TLS 프로토콜을 처리하며, &lt;b&gt;초당 수백만 개의 요청&lt;/b&gt;을 처리할 수 있는 초고성능 로드 밸런서입니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;참고&lt;/b&gt;: NLB는 HTTP(L7)의 내용을 읽고 라우팅(경로 기반 등)을 할 수는 없지만, HTTP 트래픽을 단순 TCP 페이로드로 보고 전달하는 것이 가능합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;핵심 장점&lt;/b&gt;: &lt;b&gt;고정 IP(Static IP)&lt;/b&gt;를 가질 수 있어 방화벽 설정이 필요한 환경에 필수적입니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;GLB (Gateway Load Balancer)&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;특징&lt;/b&gt;: 방화벽, 침입 탐지 시스템(IDS/IPS) 같은 &lt;b&gt;가상 어플라이언스&lt;/b&gt;로 트래픽을 전달할 때 사용합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;용도&lt;/b&gt;: 보안 및 네트워크 분석 장비를 거쳐야 하는 인프라 구성 시 사용됩니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;CLB (Classic Load Balancer) - 권장 X&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;상태&lt;/b&gt;: &lt;b&gt;현재는 사용을 권장하지 않는(Deprecated)&lt;/b&gt; 레거시 서비스입니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;특징&lt;/b&gt;: L4와 L7 기능을 모두 조금씩 가지고 있으나, ALB나 NLB만큼 정교하지 않습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;용도&lt;/b&gt;: 아주 오래된 EC2-Classic 네트워크를 사용하는 경우를 제외하고는 신규 프로젝트에서 거의 사용되지 않습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;실습&lt;/h2&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;VPC 관련 기본 세팅을 모르겠다면 해당 글을 참고&lt;br /&gt;&lt;a href=&quot;https://velog.io/@box8741/AWS&quot;&gt;https://velog.io/@box8741/AWS&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;로드 밸런서 생성&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AWS에서 EC2 검색 &amp;rarr; 로드밸런서 &amp;rarr; 로드밸런서 생성&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;831&quot; data-origin-height=&quot;722&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dVpYgk/dJMcajaCBwY/7sQnKgjzaGGSRrK0nmeW9k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dVpYgk/dJMcajaCBwY/7sQnKgjzaGGSRrK0nmeW9k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dVpYgk/dJMcajaCBwY/7sQnKgjzaGGSRrK0nmeW9k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdVpYgk%2FdJMcajaCBwY%2F7sQnKgjzaGGSRrK0nmeW9k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;654&quot; height=&quot;568&quot; data-origin-width=&quot;831&quot; data-origin-height=&quot;722&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각각에 맞는 유형을 선택해 생성하면 되지만 여기선 ALB를 기준으로 설명하겠습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;920&quot; data-origin-height=&quot;741&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xFjrJ/dJMcaf0nmMa/hzz1vZBXA9Kz4m3hOeTSdK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xFjrJ/dJMcaf0nmMa/hzz1vZBXA9Kz4m3hOeTSdK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xFjrJ/dJMcaf0nmMa/hzz1vZBXA9Kz4m3hOeTSdK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FxFjrJ%2FdJMcaf0nmMa%2Fhzz1vZBXA9Kz4m3hOeTSdK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;706&quot; height=&quot;569&quot; data-origin-width=&quot;920&quot; data-origin-height=&quot;741&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;912&quot; data-origin-height=&quot;768&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dqBSAF/dJMcaipitBb/Z8N45c2B1qK2J2fJBNcGxK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dqBSAF/dJMcaipitBb/Z8N45c2B1qK2J2fJBNcGxK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dqBSAF/dJMcaipitBb/Z8N45c2B1qK2J2fJBNcGxK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdqBSAF%2FdJMcaipitBb%2FZ8N45c2B1qK2J2fJBNcGxK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;722&quot; height=&quot;608&quot; data-origin-width=&quot;912&quot; data-origin-height=&quot;768&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;884&quot; data-origin-height=&quot;428&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bGimFs/dJMcaipitBA/6gbT1nvcryEdDDzEUeKcCk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bGimFs/dJMcaipitBA/6gbT1nvcryEdDDzEUeKcCk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bGimFs/dJMcaipitBA/6gbT1nvcryEdDDzEUeKcCk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbGimFs%2FdJMcaipitBA%2F6gbT1nvcryEdDDzEUeKcCk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;748&quot; height=&quot;362&quot; data-origin-width=&quot;884&quot; data-origin-height=&quot;428&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;미리 설정해둔 그룹이 있다면 연결하고 없다면 생성 후 연결해주면 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;로드 밸런서 그룹 생성&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;722&quot; data-origin-height=&quot;729&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b4ZODu/dJMcaiivSfY/e5dTBkuGsIZo4dKImsvC3K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b4ZODu/dJMcaiivSfY/e5dTBkuGsIZo4dKImsvC3K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b4ZODu/dJMcaiivSfY/e5dTBkuGsIZo4dKImsvC3K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb4ZODu%2FdJMcaiivSfY%2Fe5dTBkuGsIZo4dKImsvC3K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;722&quot; height=&quot;729&quot; data-origin-width=&quot;722&quot; data-origin-height=&quot;729&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;755&quot; data-origin-height=&quot;762&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/d9Cd6F/dJMcabwUIJP/X4i1JTBPzW0kDcKnN6hPcK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/d9Cd6F/dJMcabwUIJP/X4i1JTBPzW0kDcKnN6hPcK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/d9Cd6F/dJMcabwUIJP/X4i1JTBPzW0kDcKnN6hPcK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fd9Cd6F%2FdJMcabwUIJP%2FX4i1JTBPzW0kDcKnN6hPcK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;755&quot; height=&quot;762&quot; data-origin-width=&quot;755&quot; data-origin-height=&quot;762&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;736&quot; data-origin-height=&quot;696&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bapS9E/dJMcaipitCa/9fEVQjBKq1x9jWsiQJjf1K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bapS9E/dJMcaipitCa/9fEVQjBKq1x9jWsiQJjf1K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bapS9E/dJMcaipitCa/9fEVQjBKq1x9jWsiQJjf1K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbapS9E%2FdJMcaipitCa%2F9fEVQjBKq1x9jWsiQJjf1K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;736&quot; height=&quot;696&quot; data-origin-width=&quot;736&quot; data-origin-height=&quot;696&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;로드 밸런싱 할 인스턴스를 체크 후 포함 시키면 됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;736&quot; data-origin-height=&quot;621&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/y5X82/dJMcabRdKE2/1qB9toax2V31K0YwRQabZ0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/y5X82/dJMcabRdKE2/1qB9toax2V31K0YwRQabZ0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/y5X82/dJMcabRdKE2/1qB9toax2V31K0YwRQabZ0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fy5X82%2FdJMcabRdKE2%2F1qB9toax2V31K0YwRQabZ0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;736&quot; height=&quot;621&quot; data-origin-width=&quot;736&quot; data-origin-height=&quot;621&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>Public Cloud/AWS</category>
      <author>민콕이</author>
      <guid isPermaLink="true">https://box8741.tistory.com/56</guid>
      <comments>https://box8741.tistory.com/56#entry56comment</comments>
      <pubDate>Thu, 2 Apr 2026 14:36:39 +0900</pubDate>
    </item>
    <item>
      <title>AWS Service - Route53</title>
      <link>https://box8741.tistory.com/55</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;AWS의 Route 53 이란&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AWS의 Route 53에서 &lt;b&gt;호스팅&lt;/b&gt;은 정확히는 &lt;b&gt;호스팅 영역(Hosted Zone)&lt;/b&gt;을 의미합니다. 쉽게 말해, 특정 도메인(예: &lt;code&gt;example.com&lt;/code&gt;)과 그 하위 도메인(www, api 등)의 DNS 레코드를 관리하는 컨테이너이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;호스팅 영역의 종류&lt;/h2&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;퍼블릭 호스팅 영역 (Public Hosted Zone)&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인터넷에서 들어오는 트래픽을 라우팅할 때 사용합니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;용도: 웹사이트를 대중에게 공개할 때 사용.&lt;/li&gt;
&lt;li&gt;작동 방식: 브라우저에 도메인을 입력하면 Route 53의 네임서버가 이를 퍼블릭 IP로 변환해줍니다.&lt;/li&gt;
&lt;li&gt;특징: 생성 시 자동으로 4개의 NS(Name Server) 레코드와 1개의 SOA 레코드가 생성됩니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;프라이빗 호스팅 영역 (Private Hosted Zone)&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하나 이상의 &lt;b&gt;VPC(Virtual Private Cloud)&lt;/b&gt; 내부에서만 도메인을 해석할 때 사용합니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;용도: 내부 서버 간 통신(예: &lt;code&gt;db.internal.local&lt;/code&gt;), 사내망 전용 도메인 구성.&lt;/li&gt;
&lt;li&gt;작동 방식: 외부 인터넷에서는 이 도메인을 찾을 수 없으며, 연결된 VPC 내부의 리소스들만 이 주소를 이해할 수 있습니다.&lt;/li&gt;
&lt;li&gt;특징: VPC 설정을 통해 &lt;code&gt;enableDnsHostnames&lt;/code&gt;와 &lt;code&gt;enableDnsSupport&lt;/code&gt; 옵션이 켜져 있어야 작동합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;실습&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AWS에서 Route 53 검색 &amp;rarr; 호스팅 영역 &amp;rarr; 호스팅 영역 생성&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;923&quot; data-origin-height=&quot;720&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/TQzJe/dJMcahKHiF1/iCjUf3bwcm85T1HMQPz6v1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/TQzJe/dJMcahKHiF1/iCjUf3bwcm85T1HMQPz6v1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/TQzJe/dJMcahKHiF1/iCjUf3bwcm85T1HMQPz6v1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FTQzJe%2FdJMcahKHiF1%2FiCjUf3bwcm85T1HMQPz6v1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;923&quot; height=&quot;720&quot; data-origin-width=&quot;923&quot; data-origin-height=&quot;720&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;695&quot; data-origin-height=&quot;525&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bAx1B5/dJMcabDHRze/y3scdr9Khn5b0AQ7HPB7K0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bAx1B5/dJMcabDHRze/y3scdr9Khn5b0AQ7HPB7K0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bAx1B5/dJMcabDHRze/y3scdr9Khn5b0AQ7HPB7K0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbAx1B5%2FdJMcabDHRze%2Fy3scdr9Khn5b0AQ7HPB7K0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;695&quot; height=&quot;525&quot; data-origin-width=&quot;695&quot; data-origin-height=&quot;525&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;919&quot; data-origin-height=&quot;598&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/MDqwr/dJMcabDHRzr/rA22evSV8C9Ku99iIC8QUk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/MDqwr/dJMcabDHRzr/rA22evSV8C9Ku99iIC8QUk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/MDqwr/dJMcabDHRzr/rA22evSV8C9Ku99iIC8QUk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FMDqwr%2FdJMcabDHRzr%2FrA22evSV8C9Ku99iIC8QUk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;919&quot; height=&quot;598&quot; data-origin-width=&quot;919&quot; data-origin-height=&quot;598&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;img src=&quot;https://velog.velcdn.com/images/box8741/post/d2637059-5f18-4454-a8e7-4656e383c858/image.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;레코드 등록 시 특정 IP 주소를 직접 입력하거나 별칭 기능을 통해 AWS 내부 리소스를 선택하여 연결할 수 있습니다.&lt;/p&gt;</description>
      <category>Public Cloud/AWS</category>
      <author>민콕이</author>
      <guid isPermaLink="true">https://box8741.tistory.com/55</guid>
      <comments>https://box8741.tistory.com/55#entry55comment</comments>
      <pubDate>Thu, 2 Apr 2026 14:34:52 +0900</pubDate>
    </item>
    <item>
      <title>AWS Service - VPC Peering</title>
      <link>https://box8741.tistory.com/54</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;정의 및 특징&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;프라이빗 연결&lt;/b&gt;: 2개의 VPC 간에 비공개 연결을 생성하여, 리소스들이 &lt;b&gt;Private IP&lt;/b&gt;를 기반으로 직접 통신합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;AWS 백본망 사용&lt;/b&gt;: 별도의 VPN 장비나 물리적 하드웨어 없이 AWS 내부 네트워크 인프라를 사용합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;보안성&lt;/b&gt;: 모든 트래픽이 공용 인터넷을 거치지 않고 AWS 백본 네트워크를 통해 라우팅되므로 보안이 우수합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;성능 최적화&lt;/b&gt;: 낮은 지연 시간과 높은 대역폭을 제공하여 고성능 애플리케이션에 적합합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;사용시 주의 사항&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;CIDR 블록 중복 불가&lt;/b&gt;: 연결하려는 두 VPC의 &lt;b&gt;IP 대역(CIDR)이 중복되거나 겹치면 안 됩니다.&lt;/b&gt; 통신 경로를 찾을 수 없기 때문입니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;전이적 루팅(Transitive Routing) 불가&lt;/b&gt;: 가장 많이 오해하는 부분입니다.
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;VPC A-B가 연결되어 있고 B-C가 연결되어 있어도, &lt;b&gt;A에서 C로 직접 통신은 불가능&lt;/b&gt;합니다. (A-C 간에 별도의 Peering을 맺거나 Transit Gateway를 사용해야 합니다.)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;전송 비용&lt;/b&gt;: 동일 리전 내 Peering은 저렴하지만, *&lt;i&gt;리전 간(Inter-Region) Peering *&lt;/i&gt;시에는 표준 AWS 리전 간 데이터 전송 요금이 부과되며 지연 시간이 발생할 수 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;쿼터(Quota) 제한&lt;/b&gt;: 하나의 VPC에 생성할 수 있는 Peering 연결 수에는 제한이 있습니다. 대규모 연결이 필요한 경우 Transit Gateway 도입을 검토해야 합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;실습&lt;/h2&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;VPC 관련 기본 세팅을 모르겠다면 해당 글을 참고&lt;br /&gt;&lt;a href=&quot;https://velog.io/@box8741/AWS&quot;&gt;https://velog.io/@box8741/AWS&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;일단 필자는 B 서울이다&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;구조&lt;/b&gt; : A=&amp;gt;B=&amp;gt;C=&amp;gt;A Peering 실습&lt;br /&gt;&lt;b&gt;A 시드니&lt;/b&gt; : 10.17.0.0/16 (수락자 B에게 요청, B의 ID, VPC 필요)&lt;br /&gt;&lt;b&gt;A 인스턴스 사설 아이피&lt;/b&gt;: 10.17.1.93&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;B 서울&lt;/b&gt; : 10.9.0.0/16 (수락자 C에게 요청, C의 ID, VPC 필요)&lt;br /&gt;&lt;b&gt;B 인스턴스 사설 아이피&lt;/b&gt;: 10.9.1.90&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;C 서울&lt;/b&gt; : 10.10.0.0/16 (수락자 A에게 요청, A의 ID, VPC 필요)&lt;br /&gt;&lt;b&gt;C 인스턴스 사설 아이피&lt;/b&gt;: 10.9.1.90&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;C 서울 쪽에 피어링 연결 생성과&lt;br /&gt;A 시드니 쪽에서 온 피어링 요청 수락&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;873&quot; data-origin-height=&quot;203&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bTtvvx/dJMcaax2iPp/7wqikUA5rkhsktFcjBLXU0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bTtvvx/dJMcaax2iPp/7wqikUA5rkhsktFcjBLXU0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bTtvvx/dJMcaax2iPp/7wqikUA5rkhsktFcjBLXU0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbTtvvx%2FdJMcaax2iPp%2F7wqikUA5rkhsktFcjBLXU0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;873&quot; height=&quot;203&quot; data-origin-width=&quot;873&quot; data-origin-height=&quot;203&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;A쪽으로 가는 라우팅과 C쪽으로 가는 라우팅 두개 작업&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1064&quot; data-origin-height=&quot;376&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c0b5CA/dJMcaiW49Nm/aKgky1dDZVmO9mB82YSO31/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c0b5CA/dJMcaiW49Nm/aKgky1dDZVmO9mB82YSO31/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c0b5CA/dJMcaiW49Nm/aKgky1dDZVmO9mB82YSO31/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc0b5CA%2FdJMcaiW49Nm%2FaKgky1dDZVmO9mB82YSO31%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1064&quot; height=&quot;376&quot; data-origin-width=&quot;1064&quot; data-origin-height=&quot;376&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;최종 해당 내 인스턴스 PC로 들어가 A, C 사설 아이피에 핑을 보내 연결된 것을 확인&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;550&quot; data-origin-height=&quot;361&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/JbBzm/dJMcaax2iQH/mOFKqQO7TineIWKklm5rGk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/JbBzm/dJMcaax2iQH/mOFKqQO7TineIWKklm5rGk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/JbBzm/dJMcaax2iQH/mOFKqQO7TineIWKklm5rGk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJbBzm%2FdJMcaax2iQH%2FmOFKqQO7TineIWKklm5rGk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;550&quot; height=&quot;361&quot; data-origin-width=&quot;550&quot; data-origin-height=&quot;361&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>Public Cloud/AWS</category>
      <author>민콕이</author>
      <guid isPermaLink="true">https://box8741.tistory.com/54</guid>
      <comments>https://box8741.tistory.com/54#entry54comment</comments>
      <pubDate>Thu, 2 Apr 2026 14:34:00 +0900</pubDate>
    </item>
    <item>
      <title>AWS</title>
      <link>https://box8741.tistory.com/53</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;AWS(Amazon Web Services)는 아마존에서 제공하는 &lt;b&gt;클라우드 컴퓨팅&lt;/b&gt; 플랫폼입니다.&lt;br /&gt;쉽게 말해, 예전처럼 직접 서버 컴퓨터를 사고 전용 창고(IDC)를 꾸릴 필요 없이, 인터넷을 통해 필요한 만큼의 컴퓨팅 자원을 빌려 쓰는 서비스 입니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;AWS를 쓰는 이유&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;비용 효율성&lt;/b&gt;: 초기 구축 비용 없이 &lt;b&gt;쓴 만큼만&lt;/b&gt; 돈을 냅니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;유연성 및 확장성&lt;/b&gt;: 사용자가 갑자기 늘어나면 클릭 몇 번(혹은 자동 설정)으로 서버 성능을 즉시 높일 수 있습니다. (Auto Scaling)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;글로벌 인프라&lt;/b&gt;: 전 세계 곳곳에 데이터 센터(Region)가 있어, 해외 사용자에게도 빠른 서비스를 제공할 수 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;보안&lt;/b&gt;: 전용 하드웨어 수준의 보안부터 소프트웨어 기반의 방화벽(WAF, Security Group)까지 강력한 보안 도구를 제공합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h1&gt;AWS Service - User&lt;/h1&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AWS에는 접근 방식에 따라 크게 두 가지 사용자 유형이 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;550&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/JLyy3/dJMcagE18rF/hUoqBBNnPjguMSOQgKIwVk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/JLyy3/dJMcagE18rF/hUoqBBNnPjguMSOQgKIwVk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/JLyy3/dJMcagE18rF/hUoqBBNnPjguMSOQgKIwVk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJLyy3%2FdJMcagE18rF%2FhUoqBBNnPjguMSOQgKIwVk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1024&quot; height=&quot;550&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;550&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Root User (루트 사용자)&lt;/b&gt;: 계정 생성 시 만들어지는 이메일 주소 로그인 계정입니다.
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;모든 권한&lt;/b&gt;을 가지며 제한할 수 없습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;보안 원칙&lt;/b&gt;: 평소에는 절대 사용하지 말고, MFA(OTP)를 설정한 뒤 안전한 곳에 보관해야 합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;IAM User&lt;/b&gt;: 루트 사용자가 생성하는 &lt;b&gt;개별 사용자&lt;/b&gt;입니다.
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;특정 작업에 필요한 &lt;b&gt;최소 권한&lt;/b&gt;만 부여하여 관리합니다.&lt;/li&gt;
&lt;li&gt;콘솔 접속용 비밀번호나 CLI용 Access Key를 가집니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h1&gt;Region&lt;/h1&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;물리적인 호스팅 영역&lt;/li&gt;
&lt;li&gt;Network 속도&lt;/li&gt;
&lt;li&gt;각종 재해(장애) 대비 &amp;rarr; High Availability&lt;/li&gt;
&lt;li&gt;지역마다 법률 or 문화의 차이&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;가용 영역 - Availability Zone&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Region을 더 작은 단위로 격리시킨 것&lt;/li&gt;
&lt;li&gt;AWS 정책 : 1개의 Region은 3개 이상의 가용 영역을 가짐&lt;/li&gt;
&lt;li&gt;가상의 Datacenter&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;614&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bbQKfz/dJMcaaSlyV8/Iu7eNQtbwbzeNLTfKbOY01/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bbQKfz/dJMcaaSlyV8/Iu7eNQtbwbzeNLTfKbOY01/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bbQKfz/dJMcaaSlyV8/Iu7eNQtbwbzeNLTfKbOY01/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbbQKfz%2FdJMcaaSlyV8%2FIu7eNQtbwbzeNLTfKbOY01%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1024&quot; height=&quot;614&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;614&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;물리적인 Datacenter group으로 가용영역별 전원,냉각,네트워크가 독립적
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;재해, 장애 상황이 발생했을 때 해당 가용 영역만 영향을 받도록 하기 위해&lt;/li&gt;
&lt;li&gt;AZ에 분산시 가용성과 내결함성이 크게 향상&lt;/li&gt;
&lt;li&gt;AZ간 연결은 초저지연 전용 광 Network로 통신&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h1&gt;AWS Service - VPC&lt;/h1&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;클라우드 내에서 사용자만이 점유하는 &lt;b&gt;독립된 가상 네트워크 공간&lt;/b&gt; 즉 AWS 인프라 위에 나만의 전용 &lt;b&gt;사설 네트워크&lt;/b&gt;를 구축하는 것과 같습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;VPC의 핵심 구성 요소&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Public Could (공공 클라우드)를 사용하는 기업/사용자에게 격리된 Private Network를 구성할 수 있게 해줍니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Subnet&lt;/b&gt; : VPC를 더 작은 네트워크 단위로 나눠 사용&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Routing Table&lt;/b&gt; : VPC 내부/외부 트래픽 흐름 제어&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Internet Gateway&lt;/b&gt; : Internet(Public Network)와 1:1로 연결(NAT)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;NAT Gateway&lt;/b&gt; : 내부 서버가 인터넷 환경으로 나갈 수 있는 기능 제공 (외부에서는 진입 X)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Security Group/Network ACL&lt;/b&gt; : 방화벽 규칙을 설정하여 보안&lt;/li&gt;
&lt;li&gt;&lt;b&gt;VPC Peering&lt;/b&gt; : 서로 다른 VPC끼리 통신 가능하게 연&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;VPC 관련 구성요소 실습&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;VPC 생성&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AWS에서 VPC 검색 &amp;rarr; VPC &amp;rarr; VPC 생성&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;869&quot; data-origin-height=&quot;760&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/I8H9O/dJMcaaSlyWD/kdWSoIolVO9KUaCP5kAja0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/I8H9O/dJMcaaSlyWD/kdWSoIolVO9KUaCP5kAja0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/I8H9O/dJMcaaSlyWD/kdWSoIolVO9KUaCP5kAja0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FI8H9O%2FdJMcaaSlyWD%2FkdWSoIolVO9KUaCP5kAja0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;869&quot; height=&quot;760&quot; data-origin-width=&quot;869&quot; data-origin-height=&quot;760&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Subnet 생성&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;944&quot; data-origin-height=&quot;771&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bVKg7d/dJMcaiW49vd/7l7fl63q2NGJKK6dKrDj81/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bVKg7d/dJMcaiW49vd/7l7fl63q2NGJKK6dKrDj81/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bVKg7d/dJMcaiW49vd/7l7fl63q2NGJKK6dKrDj81/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbVKg7d%2FdJMcaiW49vd%2F7l7fl63q2NGJKK6dKrDj81%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;944&quot; height=&quot;771&quot; data-origin-width=&quot;944&quot; data-origin-height=&quot;771&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Routing Table 생성 및 Subnet 연결&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;947&quot; data-origin-height=&quot;443&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dNoH7M/dJMcaiW49vA/4XbA8RmEcWXhs8ZKp0YHp1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dNoH7M/dJMcaiW49vA/4XbA8RmEcWXhs8ZKp0YHp1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dNoH7M/dJMcaiW49vA/4XbA8RmEcWXhs8ZKp0YHp1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdNoH7M%2FdJMcaiW49vA%2F4XbA8RmEcWXhs8ZKp0YHp1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;947&quot; height=&quot;443&quot; data-origin-width=&quot;947&quot; data-origin-height=&quot;443&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;750&quot; data-origin-height=&quot;588&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lONpx/dJMcacvRzQv/xlwqyeYCqDniSmfvkNKt21/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lONpx/dJMcacvRzQv/xlwqyeYCqDniSmfvkNKt21/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lONpx/dJMcacvRzQv/xlwqyeYCqDniSmfvkNKt21/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlONpx%2FdJMcacvRzQv%2FxlwqyeYCqDniSmfvkNKt21%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;668&quot; height=&quot;524&quot; data-origin-width=&quot;750&quot; data-origin-height=&quot;588&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;943&quot; data-origin-height=&quot;350&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bWtQuF/dJMcaf0nmn3/EZ4FfbAtkDlhPNs92huF40/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bWtQuF/dJMcaf0nmn3/EZ4FfbAtkDlhPNs92huF40/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bWtQuF/dJMcaf0nmn3/EZ4FfbAtkDlhPNs92huF40/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbWtQuF%2FdJMcaf0nmn3%2FEZ4FfbAtkDlhPNs92huF40%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;943&quot; height=&quot;350&quot; data-origin-width=&quot;943&quot; data-origin-height=&quot;350&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Internet Gateway 생성 및 VPC 연결&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;947&quot; data-origin-height=&quot;386&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bT5xky/dJMcaf0nmoM/7cmTt7oy5iNgShXiLHNE1k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bT5xky/dJMcaf0nmoM/7cmTt7oy5iNgShXiLHNE1k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bT5xky/dJMcaf0nmoM/7cmTt7oy5iNgShXiLHNE1k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbT5xky%2FdJMcaf0nmoM%2F7cmTt7oy5iNgShXiLHNE1k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;947&quot; height=&quot;386&quot; data-origin-width=&quot;947&quot; data-origin-height=&quot;386&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;754&quot; data-origin-height=&quot;253&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dgzTPC/dJMcaiQjAZS/YwDKnOn3oOZzyoLUIOD7eK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dgzTPC/dJMcaiQjAZS/YwDKnOn3oOZzyoLUIOD7eK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dgzTPC/dJMcaiQjAZS/YwDKnOn3oOZzyoLUIOD7eK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdgzTPC%2FdJMcaiQjAZS%2FYwDKnOn3oOZzyoLUIOD7eK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;754&quot; height=&quot;253&quot; data-origin-width=&quot;754&quot; data-origin-height=&quot;253&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;950&quot; data-origin-height=&quot;265&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bKX4ej/dJMcacP8SfK/FH63fMAw0A7MgsBbhgk2b0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bKX4ej/dJMcacP8SfK/FH63fMAw0A7MgsBbhgk2b0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bKX4ej/dJMcacP8SfK/FH63fMAw0A7MgsBbhgk2b0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbKX4ej%2FdJMcacP8SfK%2FFH63fMAw0A7MgsBbhgk2b0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;950&quot; height=&quot;265&quot; data-origin-width=&quot;950&quot; data-origin-height=&quot;265&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;749&quot; data-origin-height=&quot;147&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ch0TER/dJMcaf0nmpH/kgc4FMxINOnC4BLwOuUHL0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ch0TER/dJMcaf0nmpH/kgc4FMxINOnC4BLwOuUHL0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ch0TER/dJMcaf0nmpH/kgc4FMxINOnC4BLwOuUHL0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fch0TER%2FdJMcaf0nmpH%2Fkgc4FMxINOnC4BLwOuUHL0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;749&quot; height=&quot;147&quot; data-origin-width=&quot;749&quot; data-origin-height=&quot;147&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Routing Table에 Internet Gateway 연결&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;746&quot; data-origin-height=&quot;382&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/B5ZLj/dJMcaf0nmpT/k6pJmcBAEbMDIblULA1zm0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/B5ZLj/dJMcaf0nmpT/k6pJmcBAEbMDIblULA1zm0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/B5ZLj/dJMcaf0nmpT/k6pJmcBAEbMDIblULA1zm0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FB5ZLj%2FdJMcaf0nmpT%2Fk6pJmcBAEbMDIblULA1zm0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;746&quot; height=&quot;382&quot; data-origin-width=&quot;746&quot; data-origin-height=&quot;382&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;944&quot; data-origin-height=&quot;510&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/NkFw5/dJMcaiW49yj/7ZUHwptqgAB11xVRQ1ns70/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/NkFw5/dJMcaiW49yj/7ZUHwptqgAB11xVRQ1ns70/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/NkFw5/dJMcaiW49yj/7ZUHwptqgAB11xVRQ1ns70/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FNkFw5%2FdJMcaiW49yj%2F7ZUHwptqgAB11xVRQ1ns70%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;944&quot; height=&quot;510&quot; data-origin-width=&quot;944&quot; data-origin-height=&quot;510&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Security Group 생성&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;934&quot; data-origin-height=&quot;683&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cP3Oen/dJMcaiW49y7/yhYoE9T7O1lq9KpEgoed0k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cP3Oen/dJMcaiW49y7/yhYoE9T7O1lq9KpEgoed0k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cP3Oen/dJMcaiW49y7/yhYoE9T7O1lq9KpEgoed0k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcP3Oen%2FdJMcaiW49y7%2FyhYoE9T7O1lq9KpEgoed0k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;934&quot; height=&quot;683&quot; data-origin-width=&quot;934&quot; data-origin-height=&quot;683&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;EC2 인스턴스 생성&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;753&quot; data-origin-height=&quot;775&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/WCq40/dJMcaiW49zV/9kwzLna2GUvNDCYAnXZ4RK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/WCq40/dJMcaiW49zV/9kwzLna2GUvNDCYAnXZ4RK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/WCq40/dJMcaiW49zV/9kwzLna2GUvNDCYAnXZ4RK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FWCq40%2FdJMcaiW49zV%2F9kwzLna2GUvNDCYAnXZ4RK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;753&quot; height=&quot;775&quot; data-origin-width=&quot;753&quot; data-origin-height=&quot;775&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;745&quot; data-origin-height=&quot;713&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/clLKTY/dJMcaf0nmqA/RNF6RM5QcZYtCYECfBBPm0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/clLKTY/dJMcaf0nmqA/RNF6RM5QcZYtCYECfBBPm0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/clLKTY/dJMcaf0nmqA/RNF6RM5QcZYtCYECfBBPm0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FclLKTY%2FdJMcaf0nmqA%2FRNF6RM5QcZYtCYECfBBPm0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;745&quot; height=&quot;713&quot; data-origin-width=&quot;745&quot; data-origin-height=&quot;713&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;920&quot; data-origin-height=&quot;521&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cJmCPK/dJMcagSyeVY/YOHeMk5lfHwEGMWCu3Q9w0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cJmCPK/dJMcagSyeVY/YOHeMk5lfHwEGMWCu3Q9w0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cJmCPK/dJMcagSyeVY/YOHeMk5lfHwEGMWCu3Q9w0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcJmCPK%2FdJMcagSyeVY%2FYOHeMk5lfHwEGMWCu3Q9w0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;920&quot; height=&quot;521&quot; data-origin-width=&quot;920&quot; data-origin-height=&quot;521&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 해당 퍼블릭 IP로 SSH 접속해 원하는 작업을 할 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;648&quot; data-origin-height=&quot;441&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bk8WzY/dJMb996W9AU/7JmGKEDhwWHJoplIJGdzcK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bk8WzY/dJMb996W9AU/7JmGKEDhwWHJoplIJGdzcK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bk8WzY/dJMb996W9AU/7JmGKEDhwWHJoplIJGdzcK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbk8WzY%2FdJMb996W9AU%2F7JmGKEDhwWHJoplIJGdzcK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;648&quot; height=&quot;441&quot; data-origin-width=&quot;648&quot; data-origin-height=&quot;441&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>Public Cloud/AWS</category>
      <author>민콕이</author>
      <guid isPermaLink="true">https://box8741.tistory.com/53</guid>
      <comments>https://box8741.tistory.com/53#entry53comment</comments>
      <pubDate>Thu, 2 Apr 2026 14:31:28 +0900</pubDate>
    </item>
    <item>
      <title>VPN</title>
      <link>https://box8741.tistory.com/52</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;VPN - Virtual Private Network&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가상 사설 네트워크 -&amp;gt; Tunneling + Encrytion&lt;br /&gt;Public Network를 Priavte Network처럼 사용하기 위한 기술&lt;br /&gt;본사/지사(or 외부) 각각의 Network를 연결하여 하나의 전용선처럼 연결&lt;br /&gt;Tunneling을 통해 논리적인 연결을 생성 인증/암호화/접근제어 등을 통해 보안성을 높임&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;구성 방법&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;VPN 전용 장비&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;VPN용으로 제작된 전용 H/W를 이용하여 구축&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;장점:&lt;/b&gt; 확장이 용이&lt;/li&gt;
&lt;li&gt;&lt;b&gt;단점:&lt;/b&gt; 별도의 H/W를 구매해야한다. (초기 구축 비용이 높다)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Router&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Router(Access Server)에서 지원하는 VPN 기능을 이용하여 구축&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;장점:&lt;/b&gt; 별도의 장비 구입이 필요하지 않고, Topology의 변화가 없다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;단점:&lt;/b&gt; Router 자체 성능에 따라 VPN 성능이 결정. Router 자체의 보안 문제가 VPN에 영향을 준다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Firewall&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Firewall에 지원하는 VPN 기능을 이용하여 구축&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;장점:&lt;/b&gt; 별도의 장비 구입 없이 기존 장비로 구축하기 때문에 관리 및 유지보수가 용이&lt;/li&gt;
&lt;li&gt;&lt;b&gt;단점:&lt;/b&gt;병목현상(bottleneck) 발생 가능&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;터널링(Tunneling)&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;물리적으로 떨어진 특정 장소들을 논리적으로 하나로 연결하는 기술&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;송신측 : Data Encapsulation&lt;/li&gt;
&lt;li&gt;수신측 : Data Decapsulation (De-Encapsulation)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;목적&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Protocol이 호환되지 않는 Network를 통해 Data를 전달&lt;br /&gt;ex) IPX는 IP망에서 통신이 불가(Routing X)&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Tunnel로 전달되는 Data를 암호화하여 보안을 높임&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;기능&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Packet 암호화&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;암호화 키 관리 -&amp;gt; 협상을 통해서 지정&lt;/li&gt;
&lt;li&gt;Tunneling 생성 관리&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;용어 정리&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Passenger Protocol&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;원본 데이터를 담고 있는 Protocol&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Encapsulation Protocol&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;src 에서 dst로 data를 전달할 때 Encapsulation/Decapsulation을 수행하는 Protocol&lt;/li&gt;
&lt;li&gt;Layer2 Tunneling Protocol &amp;rarr; PPTP, L2TP, L2F &amp;hellip;&lt;/li&gt;
&lt;li&gt;Layer3 Tunneling Protocol &amp;rarr; Cisco GRE, 표준 GRE, IPsec(ESP) &amp;hellip;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Carrier Protocol&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Tunneling Protocol로 재 Encapsulation된 Data의 물리적인 src와 dst 정보를 지정하기 위해 추가되는 Protoco&lt;/li&gt;
&lt;li&gt;Tunneling된 data를 물리적인 Network로 전송하기 위해 사용&lt;/li&gt;
&lt;li&gt;모든 장비에서 지원하는 범용적인 Layer3 Protocol을 사용 (IP)&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;GRE&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GRE (Generic Routing Encapsulation)&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;CISCO에서 개발한 Tunneling Protocol -&amp;gt; 산업 표준으로 사용됨&lt;/li&gt;
&lt;li&gt;다양한 Passenger Protocol을 Encapsulation하여 전달&lt;/li&gt;
&lt;li&gt;단순한 Tunneling 기능만 제공 -&amp;gt; 암호화 x&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;GRE 실습&lt;/h3&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;hostname&lt;br /&gt;R0 - ISP / R1 - HQ / R2 - BR&lt;/blockquote&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;기본 라우팅 작업&lt;/h3&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;HQ(config)#ip route 0.0.0.0 0.0.0.0 1.1.1.2&lt;br /&gt;BR(config)#ip route 0.0.0.0 0.0.0.0 2.2.2.2&lt;br /&gt;&lt;br /&gt;ISP(config)#ip route 192.168.53.0 255.255.255.0 1.1.1.1&lt;br /&gt;ISP(config)#ip route 172.16.0.0 255.255.0.0 2.2.2.3&lt;/blockquote&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1000&quot; data-origin-height=&quot;582&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/eVQNhM/dJMcad2wSfX/rOWXAdAxXTx26yk2Ah2Vl0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/eVQNhM/dJMcad2wSfX/rOWXAdAxXTx26yk2Ah2Vl0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/eVQNhM/dJMcad2wSfX/rOWXAdAxXTx26yk2Ah2Vl0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FeVQNhM%2FdJMcad2wSfX%2FrOWXAdAxXTx26yk2Ah2Vl0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1000&quot; height=&quot;582&quot; data-origin-width=&quot;1000&quot; data-origin-height=&quot;582&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;터널링 작업&lt;/h4&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;HQ(config)#interface tunnel 0&lt;br /&gt;HQ(config-if)#tunnel mode gre ip&lt;br /&gt;HQ(config-if)#tunnel source g0/0&lt;br /&gt;HQ(config-if)#tunnel destination 2.2.2.3&lt;br /&gt;HQ(config-if)#ip address 10.0.0.1 255.0.0.0&lt;/blockquote&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;BR(config)#interface tunnel 0&lt;br /&gt;BR(config-if)#tunnel mode gre ip&lt;br /&gt;BR(config-if)#tunnel source g0/0&lt;br /&gt;BR(config-if)#tunnel destination 1.1.1.1&lt;br /&gt;BR(config-if)#ip address 10.0.0.2 255.0.0.0&lt;/blockquote&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;Tunnel로 Routing&lt;br /&gt;HQ(config)#ip route 172.16.0.0 255.255.0.0 10.0.0.2&lt;br /&gt;BR(config)#ip route 192.168.53.0 255.255.255.0 10.0.0.1&lt;/blockquote&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1260&quot; data-origin-height=&quot;551&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b1PFZD/dJMcabcBtDc/Tqa80fpU8lorw7kwi4TBt1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b1PFZD/dJMcabcBtDc/Tqa80fpU8lorw7kwi4TBt1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b1PFZD/dJMcabcBtDc/Tqa80fpU8lorw7kwi4TBt1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb1PFZD%2FdJMcabcBtDc%2FTqa80fpU8lorw7kwi4TBt1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1260&quot; height=&quot;551&quot; data-origin-width=&quot;1260&quot; data-origin-height=&quot;551&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;648&quot; data-origin-height=&quot;331&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bO9vpR/dJMcaaY40l1/wNdWPlSaLkkgxkYKSUpvN1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bO9vpR/dJMcaaY40l1/wNdWPlSaLkkgxkYKSUpvN1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bO9vpR/dJMcaaY40l1/wNdWPlSaLkkgxkYKSUpvN1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbO9vpR%2FdJMcaaY40l1%2FwNdWPlSaLkkgxkYKSUpvN1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;648&quot; height=&quot;331&quot; data-origin-width=&quot;648&quot; data-origin-height=&quot;331&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;Before&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;686&quot; data-origin-height=&quot;273&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/MSZtx/dJMcaax2hVX/zk04wgqefzGsdKfWsGCjkK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/MSZtx/dJMcaax2hVX/zk04wgqefzGsdKfWsGCjkK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/MSZtx/dJMcaax2hVX/zk04wgqefzGsdKfWsGCjkK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FMSZtx%2FdJMcaax2hVX%2Fzk04wgqefzGsdKfWsGCjkK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;686&quot; height=&quot;273&quot; data-origin-width=&quot;686&quot; data-origin-height=&quot;273&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;After&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;682&quot; data-origin-height=&quot;322&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bgtiZs/dJMcabX0oHE/45ii0usO8KGxclDLn3Rvsk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bgtiZs/dJMcabX0oHE/45ii0usO8KGxclDLn3Rvsk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bgtiZs/dJMcabX0oHE/45ii0usO8KGxclDLn3Rvsk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbgtiZs%2FdJMcabX0oHE%2F45ii0usO8KGxclDLn3Rvsk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;682&quot; height=&quot;322&quot; data-origin-width=&quot;682&quot; data-origin-height=&quot;322&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;TTL 값이 변경된것을 볼 수 있습니다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;IPSec (IP Security)&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Network Layer에서 동작하는 IP망에서 사용하는 표준 보안 Protocol&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;3계층 Tunneling을 위한 방식&lt;/li&gt;
&lt;li&gt;protocol suite : 여러개의 Protocol의 집합 (AH, ESP ..)
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;AH : 무결성 / ESP : 무결성 + 기밀성&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;암호화 알고리즘을 위한 키 결정, 인증키 협상
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Protocol&lt;/li&gt;
&lt;li&gt;무조건&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;IPSec에서 사용하는 알고리즘
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;기밀성
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;대칭키 알고리즘 &amp;rarr; DES, 3DES, AES&lt;/li&gt;
&lt;li&gt;Key 교환 알고리즘 &amp;rarr; DH1, DH2, DH5&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;무결성
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;HMAC-MD5, HMAC-SHA-1&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;인증
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;PSK, 인증&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Tunneling Mode
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Transport Mode : 통신 대상이 암호화에 대한 설정&lt;/li&gt;
&lt;li&gt;Tunnel Mode : 통신 대상에 암호화 설정 X&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;PPP, PPTP&lt;/h3&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;PPP&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;VPN 인증, 암호화&lt;/li&gt;
&lt;li&gt;Point-to-Point Protocol, 두 지점간 데이터 전송을 목적으로 사용하는 Protocol&lt;/li&gt;
&lt;li&gt;Layer2에서 동작&lt;/li&gt;
&lt;li&gt;인증 방식 : PAP, CHAP 같은 인증 Protocol 내장
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;PAP (Password Authentication Protocol) : 단순 사용자명/비밀번호를 평문으로 전송&lt;/li&gt;
&lt;li&gt;CHAP (Challenge Handshake Authentication Protocol) : 암호화된 Challenge/Response 방식&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;PPTP&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;PPTP
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Point-to-Point Tunneling Protocol&lt;/li&gt;
&lt;li&gt;Layer2에서 동작(MS에서 개발)&lt;/li&gt;
&lt;li&gt;no-ip protocol들이 ip망에서 이동하도록 지원 &amp;rarr; 별도의 IP헤더를 사용해서 Routing (Carrier)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;실습 - IPSec Transport Mode&lt;/h3&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;secpol.msc &lt;br /&gt;&lt;br /&gt;IP&amp;nbsp;보안&amp;nbsp;정책&amp;nbsp;&amp;gt;&amp;nbsp;IP&amp;nbsp;보안&amp;nbsp;정책&amp;nbsp;만들기 &lt;br /&gt;&amp;gt;&amp;nbsp;IP&amp;nbsp;보안&amp;nbsp;정책&amp;nbsp;이름&amp;nbsp;:&amp;nbsp;IPSec&amp;nbsp;ICMP &lt;br /&gt;&amp;gt;&amp;nbsp;보안&amp;nbsp;통신&amp;nbsp;요청&amp;nbsp;:&amp;nbsp;기본&amp;nbsp;응답&amp;nbsp;규칙&amp;nbsp;활성화&amp;nbsp;체크&amp;nbsp;해제된&amp;nbsp;상태로&amp;nbsp;진행 &lt;br /&gt;&amp;gt;&amp;nbsp;IP&amp;nbsp;보안&amp;nbsp;정책&amp;nbsp;마법사&amp;nbsp;완료 &lt;br /&gt;&lt;br /&gt;IP&amp;nbsp;보안&amp;nbsp;정책&amp;nbsp;&amp;gt;&amp;nbsp;IPSec&amp;nbsp;ICMP&amp;nbsp;우클릭&amp;nbsp;&amp;gt;&amp;nbsp;속성 &lt;br /&gt;&amp;gt;&amp;nbsp;추가&amp;nbsp;마법사&amp;nbsp;사용&amp;nbsp;체크&amp;nbsp;해제&amp;nbsp;&amp;gt;&amp;nbsp;추가 &lt;br /&gt;&amp;gt;&amp;nbsp;IP&amp;nbsp;필터&amp;nbsp;목록&amp;nbsp;&amp;gt;&amp;nbsp;추가&amp;nbsp;&amp;gt;&amp;nbsp;추가&amp;nbsp;마법사&amp;nbsp;시용&amp;nbsp;체크&amp;nbsp;해제&amp;nbsp;&amp;gt;&amp;nbsp;추가&amp;nbsp;&amp;gt;&amp;nbsp;새&amp;nbsp;IP&amp;nbsp;필터&amp;nbsp;목록&amp;nbsp;체크 &lt;br /&gt;&amp;gt;&amp;nbsp;원본/대상&amp;nbsp;주소&amp;nbsp;:&amp;nbsp;모든&amp;nbsp;주소,&amp;nbsp;프로토콜&amp;nbsp;:&amp;nbsp;ICMP&amp;nbsp;&amp;gt;&amp;nbsp;확인&amp;nbsp;&amp;gt;&amp;nbsp;확인 &lt;br /&gt;&amp;gt;&amp;nbsp;필터&amp;nbsp;동작&amp;nbsp;&amp;gt;&amp;nbsp;추가&amp;nbsp;마법사&amp;nbsp;사용&amp;nbsp;체크&amp;nbsp;해제&amp;nbsp;&amp;gt;&amp;nbsp;추가 &lt;br /&gt;&amp;gt;&amp;nbsp;보안&amp;nbsp;방법&amp;nbsp;&amp;gt;&amp;nbsp;보안&amp;nbsp;협상&amp;nbsp;&amp;gt;&amp;nbsp;추가&amp;nbsp;&amp;gt;&amp;nbsp;무결성&amp;nbsp;및&amp;nbsp;암호화&amp;nbsp;&amp;gt;&amp;nbsp;확인&amp;nbsp;&amp;gt;&amp;nbsp;적용&amp;nbsp;&amp;gt;&amp;nbsp;확인&amp;nbsp;&amp;gt;&amp;nbsp;새&amp;nbsp;필터&amp;nbsp;동작&amp;nbsp;체크 &lt;br /&gt;&amp;gt;&amp;nbsp;인증&amp;nbsp;방법&amp;nbsp;&amp;gt;&amp;nbsp;편집&amp;nbsp;&amp;gt;&amp;nbsp;이&amp;nbsp;문자열&amp;nbsp;사용&amp;nbsp;:&amp;nbsp;ipsec@&amp;lt;&amp;lt;원하는번호&amp;gt;&amp;gt; &lt;br /&gt;&amp;gt;&amp;nbsp;확인&amp;nbsp;&amp;gt;&amp;nbsp;적용&amp;nbsp;&amp;gt;&amp;nbsp;확인 &lt;br /&gt;&amp;gt;&amp;nbsp;적용&amp;nbsp;&amp;gt;&amp;nbsp;확인 &lt;br /&gt;&amp;gt;&amp;nbsp;IPSec&amp;nbsp;ICMP&amp;nbsp;우클릭&amp;nbsp;&amp;gt;&amp;nbsp;할당 &lt;br /&gt;&lt;br /&gt;wireshark&amp;nbsp;icmp&amp;nbsp;||&amp;nbsp;esp&amp;nbsp;||&amp;nbsp;isakmp&amp;nbsp;로&amp;nbsp;필터&amp;nbsp;걸고&amp;nbsp;새로&amp;nbsp;패킷&amp;nbsp;잡기 &lt;br /&gt;다시&amp;nbsp;ping&amp;nbsp;보내서&amp;nbsp;패킷&amp;nbsp;확인&lt;/blockquote&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;ISAKMP : 암호화 준비 과정, 협상 Protocol
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Main Mode : 통신 대상 확인&lt;/li&gt;
&lt;li&gt;Quick Mode : 암호화 Key 생성&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;ESP : 실제 암호화된 상태로 통신
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;icmp는 encapsulation되어 보이지 않는다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;473&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bg8ael/dJMcaduGpQ3/PffbC5ftgaDf9alFloC3Ok/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bg8ael/dJMcaduGpQ3/PffbC5ftgaDf9alFloC3Ok/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bg8ael/dJMcaduGpQ3/PffbC5ftgaDf9alFloC3Ok/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbg8ael%2FdJMcaduGpQ3%2FPffbC5ftgaDf9alFloC3Ok%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1024&quot; height=&quot;473&quot; data-origin-width=&quot;1024&quot; data-origin-height=&quot;473&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;실습 - IPSec Tunnel Mode&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;VM 구성&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;512&quot; data-origin-height=&quot;297&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ZeHc2/dJMcadhcOm2/BOYazOIf6XxgIFKXVEzey0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ZeHc2/dJMcadhcOm2/BOYazOIf6XxgIFKXVEzey0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ZeHc2/dJMcadhcOm2/BOYazOIf6XxgIFKXVEzey0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FZeHc2%2FdJMcadhcOm2%2FBOYazOIf6XxgIFKXVEzey0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;512&quot; height=&quot;297&quot; data-origin-width=&quot;512&quot; data-origin-height=&quot;297&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;-&amp;nbsp;window&amp;nbsp;server&amp;nbsp;2022&amp;nbsp;-&amp;nbsp;00 &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-&amp;nbsp;vmnet0&amp;nbsp;:&amp;nbsp;10.x.0.100 &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-&amp;nbsp;vmnet1&amp;nbsp;:&amp;nbsp;192.168.x.1 &lt;br /&gt;-&amp;nbsp;window&amp;nbsp;server&amp;nbsp;2022&amp;nbsp;-&amp;nbsp;01 &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-&amp;nbsp;vmnet0&amp;nbsp;:&amp;nbsp;10.x.0.200 &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-&amp;nbsp;vmnet1&amp;nbsp;:&amp;nbsp;192.168.x+50.1 &lt;br /&gt;-&amp;nbsp;window&amp;nbsp;10&amp;nbsp;-&amp;nbsp;00 &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-&amp;nbsp;vmnet1&amp;nbsp;:&amp;nbsp;192.168.x.100 &lt;br /&gt;-&amp;nbsp;window&amp;nbsp;10&amp;nbsp;-&amp;nbsp;01 &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-&amp;nbsp;vmnet1&amp;nbsp;:&amp;nbsp;192.168.x+50.100&lt;/blockquote&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;2022-00&lt;/h4&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;방화벽 활성&lt;/li&gt;
&lt;li&gt;인바운드 규칙 - IPv4 규칙 사용&lt;/li&gt;
&lt;li&gt;연결 보안 규칙 &amp;rarr; 새 보안 규칙&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;규칙&amp;nbsp;종류:&amp;nbsp;터널 &lt;br /&gt;터널&amp;nbsp;종류&amp;nbsp;:&amp;nbsp;사용자&amp;nbsp;지정&amp;nbsp;구성 &lt;br /&gt;요구사항&amp;nbsp;:&amp;nbsp;인바운드및&amp;nbsp;아웃바운드에&amp;nbsp;대한&amp;nbsp;인증&amp;nbsp;필요 &lt;br /&gt;터널&amp;nbsp;끝점 &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;끝점&amp;nbsp;1에&amp;nbsp;있는&amp;nbsp;컴퓨터~~&amp;nbsp;:&amp;nbsp;추가&amp;nbsp;&amp;gt;&amp;nbsp;작업중인&amp;nbsp;서버의&amp;nbsp;vmnet1에&amp;nbsp;설정한&amp;nbsp;대역 &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;끝점&amp;nbsp;1&amp;nbsp;가장&amp;nbsp;가까운&amp;nbsp;끝점&amp;nbsp;:&amp;nbsp;편집&amp;nbsp;&amp;gt;&amp;nbsp;작업중인&amp;nbsp;서버의&amp;nbsp;vmnet0에&amp;nbsp;설정한&amp;nbsp;IP &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;끝점&amp;nbsp;2&amp;nbsp;가장&amp;nbsp;가까운&amp;nbsp;끝점&amp;nbsp;:&amp;nbsp;편집&amp;nbsp;&amp;gt;&amp;nbsp;연결할&amp;nbsp;서버의&amp;nbsp;vmnet0에&amp;nbsp;설정한&amp;nbsp;IP &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;끝점&amp;nbsp;2에&amp;nbsp;있는&amp;nbsp;컴퓨터~~&amp;nbsp;:&amp;nbsp;추가&amp;nbsp;&amp;gt;&amp;nbsp;연결할&amp;nbsp;서버의&amp;nbsp;vmnet1에&amp;nbsp;설정한&amp;nbsp;대역 &lt;br /&gt;인증&amp;nbsp;방식 &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;고급&amp;nbsp;&amp;gt;&amp;nbsp;사용자&amp;nbsp;지정&amp;nbsp;&amp;gt;&amp;nbsp;첫번째&amp;nbsp;인증&amp;nbsp;방법&amp;nbsp;추가&amp;nbsp;&amp;gt;&amp;nbsp;미리&amp;nbsp;공유한&amp;nbsp;키(PSK)&amp;nbsp;:&amp;nbsp;ipsec@&amp;lt;&amp;lt;원하는번호&amp;gt;&amp;gt;&amp;nbsp;&amp;gt;&amp;nbsp;확인&amp;nbsp; &lt;br /&gt;이름&amp;nbsp;:&amp;nbsp;IPSec&amp;nbsp;Tunnel&amp;nbsp;Mode &lt;br /&gt;&lt;br /&gt;&amp;gt;&amp;nbsp;마침&lt;/blockquote&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; start=&quot;4&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;라우팅 활성화&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;관리도구&amp;nbsp;&amp;gt;&amp;nbsp;서버&amp;nbsp;관리자&amp;nbsp;&amp;gt;&amp;nbsp;역할&amp;nbsp;및&amp;nbsp;기능&amp;nbsp;추가&amp;nbsp;&amp;gt;&amp;nbsp;역할&amp;nbsp;또는&amp;nbsp;기능&amp;nbsp;기반&amp;nbsp;설치&amp;nbsp;&amp;gt;&amp;nbsp;서버풀에서&amp;nbsp;서버&amp;nbsp;선택&amp;nbsp; &lt;br /&gt;&amp;gt;&amp;nbsp;원격&amp;nbsp;액세스&amp;nbsp;체크&amp;nbsp;&amp;nbsp;&amp;gt;&amp;nbsp;&amp;nbsp;기능&amp;nbsp;:&amp;nbsp;그대로&amp;nbsp;&amp;nbsp;&amp;gt;&amp;nbsp; &lt;br /&gt;원격&amp;nbsp;액세스&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;gt;&amp;nbsp;역할&amp;nbsp;서비스&amp;nbsp;라우팅&amp;nbsp;체크&amp;nbsp;,&amp;nbsp;DirectAccess&amp;nbsp;도&amp;nbsp;같이&amp;nbsp;체크됨&amp;nbsp; &lt;br /&gt;&amp;gt;&amp;nbsp;필요한&amp;nbsp;경우&amp;nbsp;다시&amp;nbsp;시작&amp;nbsp;체크&amp;nbsp;후&amp;nbsp;설치 &lt;br /&gt;&lt;br /&gt;관리&amp;nbsp;도구&amp;nbsp; &lt;br /&gt;&amp;gt;&amp;nbsp;라우팅&amp;nbsp;및&amp;nbsp;원격액세스&amp;nbsp;&amp;gt;&amp;gt;&amp;nbsp;라우팅&amp;nbsp;및&amp;nbsp;원격&amp;nbsp;액세스&amp;nbsp;구성&amp;nbsp;및&amp;nbsp;사용&amp;nbsp; &lt;br /&gt;구성&amp;nbsp;:&amp;nbsp;사용자&amp;nbsp;지정&amp;nbsp;구성 &lt;br /&gt;사용자&amp;nbsp;지정&amp;nbsp;구성&amp;nbsp;:&amp;nbsp;LAN&amp;nbsp;Routing&amp;nbsp;선택&amp;nbsp;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;810&quot; data-origin-height=&quot;197&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/o37rg/dJMcahRq6FZ/BaUK4kvCL48X0RQxa7k8x1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/o37rg/dJMcahRq6FZ/BaUK4kvCL48X0RQxa7k8x1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/o37rg/dJMcahRq6FZ/BaUK4kvCL48X0RQxa7k8x1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fo37rg%2FdJMcahRq6FZ%2FBaUK4kvCL48X0RQxa7k8x1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;761&quot; height=&quot;185&quot; data-origin-width=&quot;810&quot; data-origin-height=&quot;197&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1040&quot; data-origin-height=&quot;353&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/byi0B0/dJMcaa5RNzA/uWbATuPhZkhRj2yg7VbGq0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/byi0B0/dJMcaa5RNzA/uWbATuPhZkhRj2yg7VbGq0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/byi0B0/dJMcaa5RNzA/uWbATuPhZkhRj2yg7VbGq0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbyi0B0%2FdJMcaa5RNzA%2FuWbATuPhZkhRj2yg7VbGq0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;745&quot; height=&quot;253&quot; data-origin-width=&quot;1040&quot; data-origin-height=&quot;353&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;662&quot; data-origin-height=&quot;451&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/7uIhT/dJMcadanSQr/4cMpk9tS9EpbULWjoxNDm0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/7uIhT/dJMcadanSQr/4cMpk9tS9EpbULWjoxNDm0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/7uIhT/dJMcadanSQr/4cMpk9tS9EpbULWjoxNDm0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F7uIhT%2FdJMcadanSQr%2F4cMpk9tS9EpbULWjoxNDm0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;662&quot; height=&quot;451&quot; data-origin-width=&quot;662&quot; data-origin-height=&quot;451&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;PPTP&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;TCP 1723, GRE 47&lt;/li&gt;
&lt;li&gt;암호화 : MS-CHAP v1/v2, 매우 취약함&lt;/li&gt;
&lt;li&gt;구성 단계
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;TCP 1723 port로 제어 연결을 연다&lt;/li&gt;
&lt;li&gt;GRE Protocol을 통해 Data Tunneling&lt;/li&gt;
&lt;li&gt;CHAP 방식으로 암호화 - 로그인 정보가 확인됨.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;실습&lt;/h3&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;VM 구성&lt;/h4&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;win2022(Gateway),&amp;nbsp;win10(Host)&amp;nbsp;&amp;rarr;&amp;nbsp;G&amp;nbsp;to&amp;nbsp;H&amp;nbsp;(Remote&amp;nbsp;Access&amp;nbsp;VPN) &lt;br /&gt;&lt;br /&gt;win2022&amp;nbsp;-&amp;nbsp;vmnet0(10.x.0.150),&amp;nbsp;vmnet1(192.168.x.1) &lt;br /&gt;win10&amp;nbsp;-&amp;nbsp;vmnet0(10.x.1.150)&lt;/blockquote&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;2022) VPN 기능 설정&lt;/h4&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;관리도구&amp;nbsp;&amp;gt;&amp;nbsp;서버&amp;nbsp;관리자&amp;nbsp;&amp;gt;&amp;nbsp;역할&amp;nbsp;및&amp;nbsp;기능&amp;nbsp;추가&amp;nbsp;&amp;gt;&amp;nbsp;역할&amp;nbsp;또는&amp;nbsp;기능&amp;nbsp;기반&amp;nbsp;설치&amp;nbsp;&amp;gt;&amp;nbsp;서버풀에서&amp;nbsp;서버&amp;nbsp;선택&amp;nbsp; &lt;br /&gt;&amp;gt;&amp;nbsp;원격&amp;nbsp;액세스&amp;nbsp;체크&amp;nbsp;&amp;nbsp;&amp;gt;&amp;nbsp;&amp;nbsp;기능&amp;nbsp;:&amp;nbsp;그대로&amp;nbsp;&amp;nbsp;&amp;gt;&amp;nbsp; &lt;br /&gt;원격&amp;nbsp;액세스&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;gt;&amp;nbsp;역할&amp;nbsp;서비스&amp;nbsp;라우팅&amp;nbsp;체크&amp;nbsp;,&amp;nbsp;DirectAccess&amp;nbsp;도&amp;nbsp;같이&amp;nbsp;체크됨&amp;nbsp; &lt;br /&gt;&amp;gt;&amp;nbsp;필요한&amp;nbsp;경우&amp;nbsp;다시&amp;nbsp;시작&amp;nbsp;체크&amp;nbsp;후&amp;nbsp;설치 &lt;br /&gt;&lt;br /&gt;관리도구&amp;nbsp;&amp;gt;&amp;nbsp;서버&amp;nbsp;관리자&amp;nbsp;&amp;gt;&amp;nbsp;도구&amp;nbsp;&amp;gt;&amp;nbsp;라우팅&amp;nbsp;및&amp;nbsp;액세스&amp;nbsp;설정&amp;nbsp;&amp;gt;&amp;nbsp;2022-00(로컬)&amp;nbsp;우클릭&amp;nbsp;&amp;gt;&amp;nbsp;라우팅&amp;nbsp;및&amp;nbsp;원격&amp;nbsp;액세스&amp;nbsp;구성&amp;nbsp;및&amp;nbsp;사용 &lt;br /&gt;&amp;gt;&amp;nbsp;VPN&amp;nbsp;액세스&amp;nbsp;및&amp;nbsp;NAT&amp;nbsp;선택&amp;nbsp;&amp;gt;&amp;nbsp;VPN&amp;nbsp;연결&amp;nbsp;Ethernet0&amp;nbsp;선택&amp;nbsp; &lt;br /&gt;&amp;gt;&amp;nbsp;IP&amp;nbsp;주소&amp;nbsp;할당:&amp;nbsp;지정한&amp;nbsp;주소&amp;nbsp;범위에서&amp;nbsp;&amp;gt;&amp;nbsp;주소&amp;nbsp;범위&amp;nbsp;할당:&amp;nbsp;192.168.x.1&amp;nbsp;~&amp;nbsp;192.168.x.50 &lt;br /&gt;&amp;gt;&amp;nbsp;이름&amp;nbsp;및&amp;nbsp;주소&amp;nbsp;변환&amp;nbsp;서비스&amp;nbsp;:&amp;nbsp;나중에&amp;nbsp;설치 &lt;br /&gt;&amp;gt;&amp;nbsp;다중&amp;nbsp;원격&amp;nbsp;액세스&amp;nbsp;서버&amp;nbsp;관리&amp;nbsp;:&amp;nbsp;아니요,~~&amp;nbsp;선택 &lt;br /&gt;&amp;gt;&amp;nbsp;DHCP&amp;nbsp;릴레이&amp;nbsp;에이전트&amp;nbsp;속성&amp;nbsp;~~&amp;nbsp;:&amp;nbsp;확인 &lt;br /&gt;&amp;gt;&amp;nbsp;마침 &lt;br /&gt;&amp;gt;&amp;nbsp;2022-00(로컬)&amp;nbsp;우클릭&amp;nbsp;&amp;gt;&amp;nbsp;속성&amp;nbsp;&amp;gt;&amp;nbsp;보안&amp;nbsp;&amp;gt;&amp;nbsp;인증&amp;nbsp;방법&amp;nbsp;&amp;gt;&amp;nbsp;MS-CHAP&amp;nbsp;v2만&amp;nbsp;남기고&amp;nbsp;확인 &lt;br /&gt;&lt;br /&gt;win+r&amp;nbsp;&amp;gt;&amp;nbsp;lusrmgr.msc&amp;nbsp;&amp;gt;&amp;nbsp;사용자&amp;nbsp;&amp;gt;&amp;nbsp;사용자&amp;nbsp;추가 &lt;br /&gt;&amp;gt;&amp;nbsp;이름&amp;nbsp;:&amp;nbsp;vpnuser&amp;nbsp;/&amp;nbsp;암호&amp;nbsp;:&amp;nbsp;P@ssw0rd&amp;nbsp;/&amp;nbsp;암호&amp;nbsp;변경&amp;nbsp;체크&amp;nbsp;해제,&amp;nbsp;기간&amp;nbsp;만료&amp;nbsp;없음&amp;nbsp;체크 &lt;br /&gt;&amp;gt;&amp;nbsp;vpnuser&amp;nbsp;우클릭&amp;nbsp;속성&amp;nbsp;&amp;gt;&amp;nbsp;전화&amp;nbsp;접속&amp;nbsp;로그인&amp;nbsp;&amp;gt;&amp;nbsp;액세스&amp;nbsp;허용&lt;/blockquote&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;win10) VPN 연결 설정&lt;/h4&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;관리도구&amp;nbsp;&amp;gt;&amp;nbsp;서버&amp;nbsp;관리자&amp;nbsp;&amp;gt;&amp;nbsp;역할&amp;nbsp;및&amp;nbsp;기능&amp;nbsp;추가&amp;nbsp;&amp;gt;&amp;nbsp;역할&amp;nbsp;또는&amp;nbsp;기능&amp;nbsp;기반&amp;nbsp;설치&amp;nbsp;&amp;gt;&amp;nbsp;서버풀에서&amp;nbsp;서버&amp;nbsp;선택&amp;nbsp; &lt;br /&gt;&amp;gt;&amp;nbsp;원격&amp;nbsp;액세스&amp;nbsp;체크&amp;nbsp;&amp;nbsp;&amp;gt;&amp;nbsp;&amp;nbsp;기능&amp;nbsp;:&amp;nbsp;그대로&amp;nbsp;&amp;nbsp;&amp;gt;&amp;nbsp; &lt;br /&gt;원격&amp;nbsp;액세스&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;gt;&amp;nbsp;역할&amp;nbsp;서비스&amp;nbsp;라우팅&amp;nbsp;체크&amp;nbsp;,&amp;nbsp;DirectAccess&amp;nbsp;도&amp;nbsp;같이&amp;nbsp;체크됨&amp;nbsp; &lt;br /&gt;&amp;gt;&amp;nbsp;필요한&amp;nbsp;경우&amp;nbsp;다시&amp;nbsp;시작&amp;nbsp;체크&amp;nbsp;후&amp;nbsp;설치 &lt;br /&gt;&lt;br /&gt;관리도구&amp;nbsp;&amp;gt;&amp;nbsp;서버&amp;nbsp;관리자&amp;nbsp;&amp;gt;&amp;nbsp;도구&amp;nbsp;&amp;gt;&amp;nbsp;라우팅&amp;nbsp;및&amp;nbsp;액세스&amp;nbsp;설정&amp;nbsp;&amp;gt;&amp;nbsp;2022-00(로컬)&amp;nbsp;우클릭&amp;nbsp;&amp;gt;&amp;nbsp;라우팅&amp;nbsp;및&amp;nbsp;원격&amp;nbsp;액세스&amp;nbsp;구성&amp;nbsp;및&amp;nbsp;사용 &lt;br /&gt;&amp;gt;&amp;nbsp;VPN&amp;nbsp;액세스&amp;nbsp;및&amp;nbsp;NAT&amp;nbsp;선택&amp;nbsp;&amp;gt;&amp;nbsp;VPN&amp;nbsp;연결&amp;nbsp;Ethernet0&amp;nbsp;선택&amp;nbsp; &lt;br /&gt;&amp;gt;&amp;nbsp;IP&amp;nbsp;주소&amp;nbsp;할당:&amp;nbsp;지정한&amp;nbsp;주소&amp;nbsp;범위에서&amp;nbsp;&amp;gt;&amp;nbsp;주소&amp;nbsp;범위&amp;nbsp;할당:&amp;nbsp;192.168.x.1&amp;nbsp;~&amp;nbsp;192.168.x.50 &lt;br /&gt;&amp;gt;&amp;nbsp;이름&amp;nbsp;및&amp;nbsp;주소&amp;nbsp;변환&amp;nbsp;서비스&amp;nbsp;:&amp;nbsp;나중에&amp;nbsp;설치 &lt;br /&gt;&amp;gt;&amp;nbsp;다중&amp;nbsp;원격&amp;nbsp;액세스&amp;nbsp;서버&amp;nbsp;관리&amp;nbsp;:&amp;nbsp;아니요,~~&amp;nbsp;선택 &lt;br /&gt;&amp;gt;&amp;nbsp;DHCP&amp;nbsp;릴레이&amp;nbsp;에이전트&amp;nbsp;속성&amp;nbsp;~~&amp;nbsp;:&amp;nbsp;확인 &lt;br /&gt;&amp;gt;&amp;nbsp;마침 &lt;br /&gt;&amp;gt;&amp;nbsp;2022-00(로컬)&amp;nbsp;우클릭&amp;nbsp;&amp;gt;&amp;nbsp;속성&amp;nbsp;&amp;gt;&amp;nbsp;보안&amp;nbsp;&amp;gt;&amp;nbsp;인증&amp;nbsp;방법&amp;nbsp;&amp;gt;&amp;nbsp;MS-CHAP&amp;nbsp;v2만&amp;nbsp;남기고&amp;nbsp;확인 &lt;br /&gt;&lt;br /&gt;win+r&amp;nbsp;&amp;gt;&amp;nbsp;lusrmgr.msc&amp;nbsp;&amp;gt;&amp;nbsp;사용자&amp;nbsp;&amp;gt;&amp;nbsp;사용자&amp;nbsp;추가 &lt;br /&gt;&amp;gt;&amp;nbsp;이름&amp;nbsp;:&amp;nbsp;vpnuser&amp;nbsp;/&amp;nbsp;암호&amp;nbsp;:&amp;nbsp;P@ssw0rd&amp;nbsp;/&amp;nbsp;암호&amp;nbsp;변경&amp;nbsp;체크&amp;nbsp;해제,&amp;nbsp;기간&amp;nbsp;만료&amp;nbsp;없음&amp;nbsp;체크 &lt;br /&gt;&amp;gt;&amp;nbsp;vpnuser&amp;nbsp;우클릭&amp;nbsp;속성&amp;nbsp;&amp;gt;&amp;nbsp;전화&amp;nbsp;접속&amp;nbsp;로그인&amp;nbsp;&amp;gt;&amp;nbsp;액세스&amp;nbsp;허용&lt;/blockquote&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;결과&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;488&quot; data-origin-height=&quot;241&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Tx0oz/dJMcacJoKVY/exkB6IpnRkKCYzyFcNWl50/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Tx0oz/dJMcacJoKVY/exkB6IpnRkKCYzyFcNWl50/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Tx0oz/dJMcacJoKVY/exkB6IpnRkKCYzyFcNWl50/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FTx0oz%2FdJMcacJoKVY%2FexkB6IpnRkKCYzyFcNWl50%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;488&quot; height=&quot;241&quot; data-origin-width=&quot;488&quot; data-origin-height=&quot;241&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;490&quot; data-origin-height=&quot;296&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dN3CjV/dJMcagydvbo/sfVNLT6Oe9U0ABdNahHw01/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dN3CjV/dJMcagydvbo/sfVNLT6Oe9U0ABdNahHw01/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dN3CjV/dJMcagydvbo/sfVNLT6Oe9U0ABdNahHw01/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdN3CjV%2FdJMcagydvbo%2FsfVNLT6Oe9U0ABdNahHw01%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;490&quot; height=&quot;296&quot; data-origin-width=&quot;490&quot; data-origin-height=&quot;296&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;L2TP&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;L2F + PPTP&lt;/li&gt;
&lt;li&gt;PPTP의 단점인 보안을 향상 시킨 Protocol (+확장성)&lt;/li&gt;
&lt;li&gt;로그인 전까지 암호화가 되지 않는다.&lt;/li&gt;
&lt;li&gt;구성 단계
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;IPSec으로 인증 (Pre-Shared-Key)&lt;/li&gt;
&lt;li&gt;암호화&lt;/li&gt;
&lt;li&gt;PPP로 사용자 인증&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;실습 - Windows VPN Gateway&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;PPTP 실습 구성이 되어있는 상태로 진행&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;2022) VPN 설정 변경&lt;/h4&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;관리도구&amp;nbsp;&amp;gt;&amp;nbsp;서버&amp;nbsp;관리자&amp;nbsp;&amp;gt;&amp;nbsp;도구&amp;nbsp;&amp;gt;&amp;nbsp;라우팅&amp;nbsp;및&amp;nbsp;액세스&amp;nbsp;설정&amp;nbsp; &lt;br /&gt;&amp;gt;&amp;nbsp;2022-00(로컬)&amp;nbsp;우클릭&amp;nbsp;&amp;gt;&amp;nbsp;속성&amp;nbsp;&amp;gt;&amp;nbsp;보안&amp;nbsp;&amp;gt;&amp;nbsp;L2TP/IKEv2&amp;nbsp;~~&amp;nbsp;체크&amp;nbsp;&amp;gt;&amp;nbsp;미리&amp;nbsp;공유한&amp;nbsp;키:&amp;nbsp;ipsec@&amp;lt;&amp;lt;원하는번호&amp;gt;&amp;gt;&lt;/blockquote&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;win10) VPN 연결 정보 변경&lt;/h4&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;설정&amp;nbsp;&amp;gt;&amp;nbsp;네트워크&amp;nbsp;및&amp;nbsp;인터넷&amp;nbsp;&amp;gt;&amp;nbsp;VPN&amp;nbsp;&amp;gt;&amp;nbsp;VPN&amp;nbsp;연결&amp;nbsp;&amp;gt;&amp;nbsp;고급&amp;nbsp;설정 &lt;br /&gt;&amp;gt;&amp;nbsp;편집&amp;nbsp;&amp;gt;&amp;nbsp;VPN&amp;nbsp;종류&amp;nbsp;:&amp;nbsp;L2TP~~&amp;nbsp;미리&amp;nbsp;공유한키&amp;nbsp;&amp;gt;&amp;nbsp;미리&amp;nbsp;공유한&amp;nbsp;키&amp;nbsp;:&amp;nbsp;ipsec@&amp;lt;&amp;lt;원하는번호&amp;gt;&amp;gt;&amp;nbsp; &lt;br /&gt;&amp;gt;&amp;nbsp;사용자&amp;nbsp;이름:&amp;nbsp;vpnuser&amp;nbsp;/&amp;nbsp;암호&amp;nbsp;:&amp;nbsp;P@ssw0rd&amp;nbsp;&amp;gt;&amp;nbsp;저장 &lt;br /&gt;&lt;br /&gt;설정&amp;nbsp;&amp;gt;&amp;nbsp;네트워크&amp;nbsp;및&amp;nbsp;인터넷&amp;nbsp;&amp;gt;&amp;nbsp;VPN&amp;nbsp;&amp;gt;&amp;nbsp;VPN&amp;nbsp;연결&amp;nbsp;&amp;gt;&amp;nbsp;연결&lt;/blockquote&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;실습 - Linux VPN Gateway&lt;/h3&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;VM 구성&lt;/h4&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;ubuntu22.04(Gateway),&amp;nbsp;win10(Host)&amp;nbsp;&amp;rarr;&amp;nbsp;G&amp;nbsp;to&amp;nbsp;H&amp;nbsp;(Remote&amp;nbsp;Access&amp;nbsp;VPN) &lt;br /&gt;&lt;br /&gt;ubuntu22.04&amp;nbsp;-&amp;nbsp;vmnet0(10.x.0.150),&amp;nbsp;vmnet1(192.168.x.1) &lt;br /&gt;&lt;br /&gt;win10&amp;nbsp;-&amp;nbsp;vmnet0(10.x.1.150)&lt;/blockquote&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;ub2204) VPN 기능 구성 (PPTP)&lt;/h4&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# Routing 관련 패키지 설치
apt update
apt install -y iptables-persistent

# pptp 설치
apt install -y pptpd

# pptpd 설정
vi /etc/pptpd.conf
localip 192.168.x+50.1
remoteip 192.168.x+50.100-200

vi /etc/ppp/chap-secrets
vpnuser * P@ssw0rd *

cp /etc/ppp/pptpd-options /etc/ppp/pptpd-options.bak
vi /etc/ppp/pptpd-options
name pptpd
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2
require-mppe-128
ms-dns 8.8.8.8
ms-dns 8.8.4.4
proxyarp
lock
nobsdcomp

# pptpd 실행
systemctl start pptpd&lt;/code&gt;&lt;/pre&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;win10) VPN 연결&lt;/h4&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;설정&amp;nbsp;&amp;gt;&amp;nbsp;네트워크&amp;nbsp;및&amp;nbsp;인터넷&amp;nbsp;&amp;gt;&amp;nbsp;네트워크&amp;nbsp;및&amp;nbsp;공유&amp;nbsp;센터 &lt;br /&gt;&amp;gt;&amp;nbsp;새&amp;nbsp;연결&amp;nbsp;또는&amp;nbsp;네트워크&amp;nbsp;설정 &lt;br /&gt;&amp;gt;&amp;nbsp;회사에&amp;nbsp;연결&amp;nbsp;&amp;gt;&amp;nbsp;내&amp;nbsp;인터넷&amp;nbsp;연결&amp;nbsp;사용 &lt;br /&gt;&amp;gt;&amp;nbsp;인터넷&amp;nbsp;주소&amp;nbsp;:&amp;nbsp;ub2204의&amp;nbsp;IP&amp;nbsp;&amp;gt;&amp;nbsp;만들기 &lt;br /&gt;&lt;br /&gt;ncpa.cpl &lt;br /&gt;vpn&amp;nbsp;연결&amp;nbsp;우클릭&amp;nbsp;&amp;gt;&amp;nbsp;속성&amp;nbsp;&amp;gt;&amp;nbsp;보안&amp;nbsp; &lt;br /&gt;&amp;gt;&amp;nbsp;VPN&amp;nbsp;종류&amp;nbsp;:&amp;nbsp;PPTP&amp;nbsp;/&amp;nbsp;인증&amp;nbsp;-&amp;nbsp;다음&amp;nbsp;프로토콜&amp;nbsp;허용&amp;nbsp;:&amp;nbsp;MS-CHAP만&amp;nbsp;선택&amp;nbsp;&amp;gt;&amp;nbsp;확인 &lt;br /&gt;&lt;br /&gt;설정&amp;nbsp;&amp;gt;&amp;nbsp;네트워크&amp;nbsp;및&amp;nbsp;인터넷&amp;nbsp;&amp;gt;&amp;nbsp;VPN&amp;nbsp;&amp;gt;&amp;nbsp;VPN&amp;nbsp;연결&amp;nbsp;&amp;gt;&amp;nbsp;고급&amp;nbsp;설정 &lt;br /&gt;&amp;gt;&amp;nbsp;편집&amp;nbsp;&amp;gt;&amp;nbsp;사용자&amp;nbsp;이름:&amp;nbsp;vpnuser&amp;nbsp;/&amp;nbsp;암호&amp;nbsp;:&amp;nbsp;P@ssw0rd&amp;nbsp;&amp;gt;&amp;nbsp;저장 &lt;br /&gt;&lt;br /&gt;설정&amp;nbsp;&amp;gt;&amp;nbsp;네트워크&amp;nbsp;및&amp;nbsp;인터넷&amp;nbsp;&amp;gt;&amp;nbsp;VPN&amp;nbsp;&amp;gt;&amp;nbsp;VPN&amp;nbsp;연결&amp;nbsp;&amp;gt;&amp;nbsp;연결 &lt;br /&gt;&lt;br /&gt;cmd &lt;br /&gt;ipconfig&amp;nbsp;&amp;gt;&amp;nbsp;ppp&amp;nbsp;어뎁터&amp;nbsp;확인 &lt;br /&gt;ping&amp;nbsp;8.8.8.8&amp;nbsp;로&amp;nbsp;외부&amp;nbsp;통신&amp;nbsp;확인 &lt;br /&gt;tracert&amp;nbsp;8.8.8.8로&amp;nbsp;어느&amp;nbsp;환경에서&amp;nbsp;통신하는지&amp;nbsp;확&lt;/blockquote&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;ub2204) VPN 기능 구성 (L2TP)&lt;/h4&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# PPTPD 중지
systemctl stop pptpd

# 패키지 설치
apt install -y strongswan xl2tpd ppp lsof

# IPSec 설정
cp /etc/ipsec.conf /etc/ipsec.conf.bak
vi /etc/ipsec.conf
config setup
    charondebug=&quot;ike 2, knl 2, cfg 2, net 2, esp 2, dmn 2, mgr 2&quot;

conn L2TP-PSK
    keyexchange=ikev1
    type=transport
    authby=secret
    ike=aes256-sha1-modp1024
    esp=aes256-sha1
    left=10.x.0.150
    leftid=10.x.0.150
    leftprotoport=17/1701
    right=%any
    rightprotoport=17/%any
    auto=add

# IPSec PSK 설정
vi /etc/ipsec.secrets
%any %any : PSK &quot;ipsec@출석번호&quot;

# L2TP 설정
cp /etc/xl2tpd/xl2tpd.conf /etc/xl2tpd/xl2tpd.conf.bak
vi /etx/xl2tpd/xl2tpd.conf
[global]
port = 1701

[lns default]
ip range = 192.168.x+50.10-192.168.x+50.25
local ip = 192.168.x+50.1
require chap = yes
refuse pap = yes
require authentication = yes
name = L2TP-VPN
ppp debug = yes
pppoptfile = /etc/ppp/options.xl2tpd
length bit = yes

# ppp 설정
vi /etc/ppp/chap-secrets
vpnuser * P@ssw0rd *

vi /etc/ppp/options.xl2tpd
require-mschap-v2
ms-dns 8.8.8.8
ms-dns 1.1.1.1
asyncmap 0
auth
hide-password
debug
name l2tpd
proxyarp
lcp-echo-interval 30
lcp-echo-failure 4

# service 시작
systemctl restart strongswan-starter
systemctl restart xl2tpd&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Network R&amp;amp;S</category>
      <author>민콕이</author>
      <guid isPermaLink="true">https://box8741.tistory.com/52</guid>
      <comments>https://box8741.tistory.com/52#entry52comment</comments>
      <pubDate>Thu, 2 Apr 2026 14:28:55 +0900</pubDate>
    </item>
    <item>
      <title>Kubernetes(k8s) 에 대해서</title>
      <link>https://box8741.tistory.com/51</link>
      <description>&lt;h1&gt;Kubernetes 란?&lt;/h1&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;쿠버네티스(Kubernetes, 줄여서 K8s)는 수많은 컨테이너화된 애플리케이션을 자동으로 배포, 확장 및 관리해주는 오픈소스 오케스트레이션 플랫폼입니다.&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;k8s&lt;/b&gt; 라는 표기는 &quot;K&quot;와 &quot;s&quot;와 그 사이에 있는 8글자를 나타내는 약식 표기이다&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;쿠버네티스가 필요한 이유&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;471&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/beCIti/dJMcaf69xZx/m1q8KJGS4Uk4JekE9rwDJK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/beCIti/dJMcaf69xZx/m1q8KJGS4Uk4JekE9rwDJK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/beCIti/dJMcaf69xZx/m1q8KJGS4Uk4JekE9rwDJK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbeCIti%2FdJMcaf69xZx%2Fm1q8KJGS4Uk4JekE9rwDJK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;471&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;471&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;과거에는 서버 한 대에 하나의 운영체제를 설치하고 앱을 실행했지만, 현대의 서비스는 수십, 수백개의 작은 서비스로 쪼개져 컨테이너 형태로 돌아갑니다. 사람이 일일이 이 컨테이너들을 관리하는 것은 불가능에 가깝기 때문에 쿠버네티스가 다음과 같은 일을 대신 해줍니다.&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;컨테이너란&lt;/b&gt; 애플리케이션과 그 실행에 필요한 모든 환경(라이브러리, 설정 등)을 하나로 묶어 독립적으로 실행하는 기술&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;자동 복구(Self-healing)&lt;/b&gt;: 컨테이너가 다운되면 즉시 감지하여 다시 살려냅니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;자동 확장(Auto-Scaling)&lt;/b&gt;: 사용자가 몰리면 컨테이너 수를 늘리고, 한산해지면 다시 줄여 비용을 절감합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;로드 밸런싱&lt;/b&gt;: 트래픽이 몰리지 않도록 여러 컨테이너에 골고루 나누어 줍니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;무중단 배포&lt;/b&gt;: 서비스를 멈추지 않고도 새로운 버전으로 업데이트할 수 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Kubernetes vs Docker 차이점&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;715&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/mMll7/dJMcaf69x0t/whRw3wM3I6qOu2K1ArllKK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/mMll7/dJMcaf69x0t/whRw3wM3I6qOu2K1ArllKK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/mMll7/dJMcaf69x0t/whRw3wM3I6qOu2K1ArllKK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FmMll7%2FdJMcaf69x0t%2FwhRw3wM3I6qOu2K1ArllKK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;715&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;715&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;핵심적인 차이는 &lt;b&gt;&quot;단일 컨테이너를 만드느냐(Docker)&quot;&lt;/b&gt;와 &lt;b&gt;&quot;수많은 컨테이너를 관리하느냐(Kubernetes)&quot;&lt;/b&gt;의 차이&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;역할의 차이&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;도커 (Docker)&lt;/b&gt;: 컨테이너 기술의 표준입니다. 애플리케이션을 실행하는 데 필요한 모든 것을 하나로 묶어 &lt;b&gt;컨테이너 이미지를 만들고 실행&lt;/b&gt;하는 것에 집중합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;쿠버네티스 (Kubernetes)&lt;/b&gt;: 도커로 만든 컨테이너들을 &lt;b&gt;여러 대의 서버(클러스터)&lt;/b&gt;에 걸쳐 효율적으로 운영하는 도구입니다. 컨테이너가 꺼지면 다시 살리고, 트래픽이 몰리면 개수를 늘리는 등의 관리를 자동화합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;클러스터의 기본 구조&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;614&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b2QoIW/dJMcafMTAby/63bEXSczbviwspW2H6Rrt0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b2QoIW/dJMcafMTAby/63bEXSczbviwspW2H6Rrt0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b2QoIW/dJMcafMTAby/63bEXSczbviwspW2H6Rrt0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb2QoIW%2FdJMcafMTAby%2F63bEXSczbviwspW2H6Rrt0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;614&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;614&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;쿠버네티스 클러스터는 컨트롤 플레인과 하나 이상의 워커 노드로 구성된다&lt;br /&gt;사용자가 앱을 배포하면, 클러스터는 마치 하나의 거대한 가상 컴퓨터처럼 작동하여 내부적으로 어떤 노드가 여유로운지 계산하고 적절한 곳에 앱을 띄워줍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;클러스터의 핵심 구성 요소&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;마스터 노드&lt;/b&gt; (Control Plane): 클러스터의 '뇌'입니다. 전체적인 상태를 관리하고 명령을 내립니다.&lt;br /&gt;(예: master00)
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;API Server&lt;/b&gt;&lt;br /&gt;쿠버네티스 시스템의 중심 창구로, 모든 내부 및 외부 요청을 처리하는 &lt;b&gt;REST API를 노출&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;etcd&lt;/b&gt;&lt;br /&gt;클러스터의 모든 상태 정보(설정, 포드 상태, 노드 정보 등)를 저장하는 &lt;b&gt;고가용성 키-값(Key-Value) 저장소&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Scheduler&lt;/b&gt;&lt;br /&gt;생성되었지만 아직 특정 노드에 배치되지 않은 파드를 감지하여 &lt;b&gt;최적의 노드를 결정&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Controller Manager&lt;/b&gt;&lt;br /&gt;클러스터 내의 다양한 상태를 모니터링하고 &lt;b&gt;원하는 상태&lt;/b&gt;로 유지하기 위해 지속적으로 루프를 실행하는 프로세스&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Cloud Controller Manager&lt;/b&gt; (선택 사항)&lt;br /&gt;쿠버네티스 클러스터를 &lt;b&gt;특정 클라우드 제공업체(AWS, Azure, GCP 등)의 API와 연결&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;워커 노드&lt;/b&gt; (Worker Nodes): 실제 '몸통'입니다. 컨테이너(앱)가 실제로 돌아가는 물리 서버 또는 가상 머신들입니다.&lt;br /&gt;(예: worker00, worker01, ...)
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Kubelet&lt;/b&gt;&lt;br /&gt;각 노드에서 실행되는 기본 에이전트로, &lt;b&gt;파드(Pod)와 컨테이너의 생명 주기&lt;/b&gt;를 관리&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Kube-proxy&lt;/b&gt; (선택 사항)&lt;br /&gt;노드 내부의 &lt;b&gt;네트워크 규칙을 관리&lt;/b&gt;하여 쿠버네티스 서비스 개념을 구현&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Container Runtime&lt;/b&gt;&lt;br /&gt;실제로 &lt;b&gt;컨테이너를 실행하고 관리&lt;/b&gt;하는 핵심 소프트웨어&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Resource&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;995&quot; data-origin-height=&quot;559&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/caRf4J/dJMcacJoICM/eqX2CjlbDTXVHBpd1HhYK0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/caRf4J/dJMcacJoICM/eqX2CjlbDTXVHBpd1HhYK0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/caRf4J/dJMcacJoICM/eqX2CjlbDTXVHBpd1HhYK0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcaRf4J%2FdJMcacJoICM%2FeqX2CjlbDTXVHBpd1HhYK0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;995&quot; height=&quot;559&quot; data-origin-width=&quot;995&quot; data-origin-height=&quot;559&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>Kubernetes</category>
      <author>민콕이</author>
      <guid isPermaLink="true">https://box8741.tistory.com/51</guid>
      <comments>https://box8741.tistory.com/51#entry51comment</comments>
      <pubDate>Thu, 2 Apr 2026 14:09:36 +0900</pubDate>
    </item>
    <item>
      <title>Docker 에 대해서</title>
      <link>https://box8741.tistory.com/50</link>
      <description>&lt;h1&gt;Docker 란 무엇인가&lt;/h1&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;도커는 &lt;b&gt;애플리케이션을 구축, 테스트 및 배포할 수 있는 소프트웨어 플랫폼&lt;/b&gt; 입니다.&lt;br /&gt;특징으로는 &lt;b&gt;애플리케이션과 그 애플리케이션을 실행하는 데 필요한 모든 파일(코드, 라이브러리, 설정)을 &lt;code&gt;컨테이너&lt;/code&gt;라는 단위로 묶는&lt;/b&gt; 것입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;왜 쓰는걸까?&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;도커를 사용하는 가장 큰 이유는 &lt;b&gt;내 컴퓨터에서는 잘 되는데, 왜 서버에서는 안돼?&lt;/b&gt; 라는 고질적인 문제를 해결해주기 떄문입니다.&lt;br /&gt;도커는 애플리케이션과 이를 실행하는 데 필요한 모든 환경을 &lt;code&gt;컨테이너&lt;/code&gt;라는 독립된 공간에 모두 집어넣습니다&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;환경 일관성&lt;/b&gt;&lt;br /&gt;개발자 PC, 테스트 서버, 운영 서버가 모두 다른 운영체제나 설정을 가지고 있더라도, 도커 컨테이너는 &lt;b&gt;어디서나 똑같이 작동&lt;/b&gt;합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;가볍고 빠른 실행&lt;/b&gt;&lt;br /&gt;도커 컨테이너는 가상 머신(VM)과 달리 운영체제를 통째로 부팅하지 않습니다. 호스트 운영체제의 커널을 공유하며 &lt;b&gt;애플리케이션만 격리하여 실행&lt;/b&gt;하기 때문에, 훨씬 가볍고 부팅 속도가 몇 초 단위로 빠릅니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;이식성&lt;/b&gt;&lt;br /&gt;&quot;컨테이너&quot;로 묶인 애플리케이션은 도커만 설치되어 있다면 노트북, 물리 서버, 클라우드(AWS, Google Cloud 등) 어디로든 &lt;b&gt;쉽게 옮겨서 실행&lt;/b&gt;할 수 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;효율적인 자원 관리&lt;/b&gt;&lt;br /&gt;VM은 각 서버마다 OS를 따로 설치해야 해서 자원 낭비가 심하지만, 도커는 불필요한 OS 오버헤드가 없어서 &lt;b&gt;같은 하드웨어 자원에서 더 많은 애플리케이션을 실행&lt;/b&gt;할 수 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;쉬운 버전 관리와 배포&lt;/b&gt;&lt;br /&gt;도커 이미지는 마치 코드의 Git처럼 버전 관리가 가능합니다.&lt;br /&gt;문제가 발생하면 &lt;b&gt;이전 버전의 이미지로 즉시 되돌릴&lt;/b&gt; 수 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Docker와 VMware의 차이점&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;도커(Container 기반)와 VMware(Virtual Machine 기반)는 애플리케이션을 격리된 환경에서 실행한다는 점은 같지만, &lt;b&gt;격리하는 방식과 목적&lt;/b&gt;에서 큰 차이가 있습니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th align=&quot;left&quot;&gt;특징&lt;/th&gt;
&lt;th align=&quot;left&quot;&gt;도커 (Container)&lt;/th&gt;
&lt;th align=&quot;left&quot;&gt;VMware (Virtual Machine)&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td align=&quot;left&quot;&gt;&lt;b&gt;격리 수준&lt;/b&gt;&lt;/td&gt;
&lt;td align=&quot;left&quot;&gt;애플리케이션 단위 격리&lt;/td&gt;
&lt;td align=&quot;left&quot;&gt;하드웨어(가상) 단위 격리&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;left&quot;&gt;&lt;b&gt;OS 사용&lt;/b&gt;&lt;/td&gt;
&lt;td align=&quot;left&quot;&gt;호스트 OS의 커널 공유 (경량)&lt;/td&gt;
&lt;td align=&quot;left&quot;&gt;게스트 OS를 각 VM마다 설치 (무거움)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;left&quot;&gt;&lt;b&gt;격시작 속도&lt;/b&gt;&lt;/td&gt;
&lt;td align=&quot;left&quot;&gt;수 초 (초고속)&lt;/td&gt;
&lt;td align=&quot;left&quot;&gt;수 분 (부팅 과정 필요)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;left&quot;&gt;&lt;b&gt;크기(용량)&lt;/b&gt;&lt;/td&gt;
&lt;td align=&quot;left&quot;&gt;메가바이트(MB) 단위 (매우 작음)&lt;/td&gt;
&lt;td align=&quot;left&quot;&gt;기가바이트(GB) 단위 (매우 큼)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;left&quot;&gt;&lt;b&gt;성능 오버헤드&lt;/b&gt;&lt;/td&gt;
&lt;td align=&quot;left&quot;&gt;거의 없음&lt;/td&gt;
&lt;td align=&quot;left&quot;&gt;가상화 계층으로 인한 오버헤드 존재&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;구조적 차이점&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;VMware (VM)&lt;/b&gt;: 하드웨어 위에 하이퍼바이저를 설치하고, 그 위에 가상 하드웨어를 에뮬레이션하여 게스트 OS를 설치합니다. 진짜 컴퓨터 한 대를 가상으로 만드는 것입니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;도커 (Container)&lt;/b&gt;: 호스트 OS 위에 도커 엔진이 있고, 컨테이너는 호스트 OS의 커널을 공유하면서 애플리케이션에 필요한 파일들만 격리하여 실행합니다. 컴퓨터 안의 '폴더'를 격리하는 것과 비슷합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;706&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bl2Qr1/dJMcad2wQo6/KEg8uvyuOk0byDYTvKpHK0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bl2Qr1/dJMcad2wQo6/KEg8uvyuOk0byDYTvKpHK0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bl2Qr1/dJMcad2wQo6/KEg8uvyuOk0byDYTvKpHK0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbl2Qr1%2FdJMcad2wQo6%2FKEg8uvyuOk0byDYTvKpHK0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;706&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;706&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;하이퍼바이저 (Hypervisor)&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하이퍼바이저는 &lt;b&gt;하드웨어 위에서 여러 개의 가상 머신(VM)을 실행하고 관리하는 소프트웨어&lt;/b&gt;입니다. 쉽게 말해 진짜 컴퓨터 한 대를 가상으로 쪼개주는 역할을 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;역할&lt;/b&gt;: 물리적인 서버의 CPU, 메모리, 디스크 등의 자원을 가상 머신들에게 나누어 줍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;특징&lt;/b&gt;: 각 가상 머신(VM)마다 &lt;b&gt;독립적인 운영체제(Guest OS)&lt;/b&gt;를 설치해야 합니다. 그래서 무겁고 시작하는 데 시간이 걸립니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대표적인 예: VMware, VirtualBox, Hyper-V, KVM&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;컨테이너 (Container)&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;컨테이너는 &lt;b&gt;애플리케이션과 그 실행에 필요한 모든 파일(코드, 라이브러리, 설정 등)을 하나로 묶어 격리된 환경에서 실행하는 기술&lt;/b&gt;입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;역할&lt;/b&gt;: 애플리케이션을 실행하는 데 필요한 환경만 딱 싸서 실행합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;특징&lt;/b&gt;: 운영체제(OS)를 새로 설치하지 않고, &lt;b&gt;호스트 운영체제의 커널을 공유&lt;/b&gt;합니다. 그래서 가볍고 시작하는 데 몇 초밖에 걸리지 않습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대표적인 기술: Docker, Containerd&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Docker의 구조&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;도커 이미지 (Docker Image)&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;도커 이미지는 애플리케이션을 실행하는 데 필요한 모든 파일, 라이브러리, 설정, 실행 명령어 등을 포함하고 있는 &lt;b&gt;읽기 전용 템플릿&lt;/b&gt;입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;구조&lt;/b&gt;: 여러 개의 &lt;b&gt;레이어(Layer)&lt;/b&gt;가 겹겹이 쌓인 구조입니다. 각 레이어는 Dockerfile의 명령어(&lt;code&gt;RUN&lt;/code&gt;, &lt;code&gt;COPY&lt;/code&gt; 등)에 의해 생성됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;특징&lt;/b&gt;: 불변(Immutable) 상태입니다. 이미지는 한 번 생성되면 수정할 수 없습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;466&quot; data-origin-height=&quot;169&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vkcLV/dJMcaduGnrl/zos0qPCocfWkItxBPy5d80/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vkcLV/dJMcaduGnrl/zos0qPCocfWkItxBPy5d80/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vkcLV/dJMcaduGnrl/zos0qPCocfWkItxBPy5d80/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FvkcLV%2FdJMcaduGnrl%2Fzos0qPCocfWkItxBPy5d80%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;466&quot; height=&quot;169&quot; data-origin-width=&quot;466&quot; data-origin-height=&quot;169&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;position: absolute;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;826&quot; data-origin-height=&quot;218&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/nYPSq/dJMcaduGnrQ/ay1RiMOR5P9EkP3Wr4zVcK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/nYPSq/dJMcaduGnrQ/ay1RiMOR5P9EkP3Wr4zVcK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/nYPSq/dJMcaduGnrQ/ay1RiMOR5P9EkP3Wr4zVcK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnYPSq%2FdJMcaduGnrQ%2Fay1RiMOR5P9EkP3Wr4zVcK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;682&quot; height=&quot;180&quot; data-origin-width=&quot;826&quot; data-origin-height=&quot;218&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;도커 컨테이너 (Docker Container)&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;도커 컨테이너는 도커 이미지를 기반으로 생성된 &lt;b&gt;실제 실행 중인 인스턴스&lt;/b&gt;입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;구조&lt;/b&gt;: 이미지 레이어 위에 &lt;b&gt;쓰기 가능 레이어(Writable Layer)&lt;/b&gt;가 추가된 형태입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;특징&lt;/b&gt;: 가변(Mutable) 상태입니다. 애플리케이션 실행 중 발생하는 파일 생성, 수정, 삭제 작업은 쓰기 가능 레이어에서 일어납니다. 컨테이너를 삭제하면 이 레이어도 함께 삭제됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;격리&lt;/b&gt;: 리눅스 커널 기술인 &lt;b&gt;네임스페이스(Namespaces)&lt;/b&gt;와 &lt;b&gt;컨트롤 그룹(Cgroups)&lt;/b&gt;을 사용하여 호스트 운영체제 및 다른 컨테이너로부터 파일 시스템, 네트워크, 자원 사용량을 격리합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;832&quot; data-origin-height=&quot;77&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dfKYcO/dJMcaiivO30/aQ25B5NWucfXyCnN6yktgK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dfKYcO/dJMcaiivO30/aQ25B5NWucfXyCnN6yktgK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dfKYcO/dJMcaiivO30/aQ25B5NWucfXyCnN6yktgK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdfKYcO%2FdJMcaiivO30%2FaQ25B5NWucfXyCnN6yktgK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;832&quot; height=&quot;77&quot; data-origin-width=&quot;832&quot; data-origin-height=&quot;77&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;도커 레지스트리 (Docker Registry)&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;도커 이미지를 저장하고 공유하기 위한 &lt;b&gt;저장소&lt;/b&gt;입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;동작&lt;/b&gt;: 사용자는 레지스트리에 이미지를 업로드(push)하거나 다운로드(pull)할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;대표 예시&lt;/b&gt;: 도커 허브(Docker Hub)와 같은 공개 레지스트리나 사설 레지스트리(Private Registry)가 있습니다&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;413&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xNSky/dJMcag548O8/6YGDkkKCutjBkd9KtS1q3k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xNSky/dJMcag548O8/6YGDkkKCutjBkd9KtS1q3k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xNSky/dJMcag548O8/6YGDkkKCutjBkd9KtS1q3k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FxNSky%2FdJMcag548O8%2F6YGDkkKCutjBkd9KtS1q3k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;413&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;413&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;909&quot; data-origin-height=&quot;259&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/x5FGI/dJMcaaEOvVl/UKjMBx0XqhsYguo7xHqvS0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/x5FGI/dJMcaaEOvVl/UKjMBx0XqhsYguo7xHqvS0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/x5FGI/dJMcaaEOvVl/UKjMBx0XqhsYguo7xHqvS0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fx5FGI%2FdJMcaaEOvVl%2FUKjMBx0XqhsYguo7xHqvS0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;909&quot; height=&quot;259&quot; data-origin-width=&quot;909&quot; data-origin-height=&quot;259&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Docker</category>
      <author>민콕이</author>
      <guid isPermaLink="true">https://box8741.tistory.com/50</guid>
      <comments>https://box8741.tistory.com/50#entry50comment</comments>
      <pubDate>Thu, 2 Apr 2026 14:07:17 +0900</pubDate>
    </item>
    <item>
      <title>Ansible</title>
      <link>https://box8741.tistory.com/49</link>
      <description>&lt;blockquote data-ke-style=&quot;style3&quot;&gt;IT System, Infrastructure (Server, Storage, OS, Network) 자동화하는 관리 도구&lt;br /&gt;&quot;Server 설정, Application 배포, 작업 스케줄링&quot; 을 스크립트로 처리 &lt;br /&gt;&lt;br /&gt;괸리해야 할 서버가 100대인 경우 모든 서버를 똑같은 보안 패치를 설치해야 한다고 가정할때 기존 방식대로라면 일일이 원격접속해서 작업해야하지만 Ansible 방식으로 한다면 내 컴퓨터에서 명령어 한줄이면 모든 PC가 작업이 완료됩니다.&lt;/blockquote&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;특징&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Agentless로 대상 서버에 별도의 소프트웨어 설치 없이 ssh 접속만 활성화 되어있으면 된다.&lt;/li&gt;
&lt;li&gt;YAML file로 설정을 저장하여 작업을 정의(playbook 형식)&lt;/li&gt;
&lt;li&gt;같은 작업을 여러 서버에 똑같이 반복이 가능하고 대상 서버의 개수 제한이 없다(확장성)&lt;/li&gt;
&lt;li&gt;같은 작업을 여러번 실행해도 같은 결과를 보여준다. (멱등성)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;구성 요소&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Control Node : Ansible이 설치된 컴퓨터 (명령을 내리는 곳)&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Managed Node : 관리 대상 서버 (명령을 받는 곳)&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Inventory : 관리할 서버들의 목록과 IP 주소를 적어둔 파일&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;대상 파일의 IP(Domain)만 정의하는게 아닌 다른 정보(접속 정보 - SSH IP, Port User)&lt;/li&gt;
&lt;li&gt;Static Inventory, Dynamic Inventory&lt;/li&gt;
&lt;li&gt;yaml(yml), ini 파일 형식&lt;/li&gt;
&lt;li&gt;Group에 대상 서버를 추가하여 사용(ungrouped도 존재)
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;all (모든 대상), Group 이름을 지정하면 해당 그룹에만 적용&lt;/li&gt;
&lt;li&gt;그룹 이름에는 _(언더바)만 허용&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Playbook : 어떤 작업을 할지 정의해둔 시나리오 파일 (YAML 형식)&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;yaml(yml), ini 파일 형식으로 지정&lt;/li&gt;
&lt;li&gt;Inventory에서 정의한 서버들이 적용할 동작을 정의&lt;/li&gt;
&lt;li&gt;ad-hoc : 필요한 Module을 단발성으로 사용&lt;/li&gt;
&lt;li&gt;playbook : 동작 시킬 작업들을 yaml 파일로 일괄 적용&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Module : Ansible이 실행하는 작은 프로그램&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;단위&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Playbook에서 Task이 어떻게 수행될지를 지정&lt;/li&gt;
&lt;li&gt;ansible-doc -I : 사용할 수 있는 모든 Module을 나열하고 간단한 설명&lt;/li&gt;
&lt;li&gt;ansible-doc : 특징 Module의 상세 설명&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;※ Variable 변수&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ansible 환경에서 사용할 변수&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;전역 범위 :&lt;/b&gt; 명령어로 실행 할 때 (-e 옵션) 또는 ansible 구성 단계에서 설정 변수&lt;/li&gt;
&lt;li&gt;&lt;b&gt;플레이 범위 :&lt;/b&gt; 플레이 단계에서 정의한 변수&lt;/li&gt;
&lt;li&gt;&lt;b&gt;호스트 범위 :&lt;/b&gt; 등록한 호스트 그룹 또는 개별 호스트에서 설정한 변수&lt;/li&gt;
&lt;li&gt;&lt;b&gt;우선 순위&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;전역 범위 &amp;gt; 플레이 범위 &amp;gt; 호스트 범위&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;- 실습 -&lt;/h1&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;테스트 환경&lt;/h3&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;3대 Guest (Rocky9.7)&lt;br /&gt;- ansible-host / Mem 2G / 10.9.0.200&lt;br /&gt;- ansible-node01 / Mem 1G / 10.9.0.201&lt;br /&gt;- ansible-node02 / Mem 1G / 10.9.0.202&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;SSH 키 발급 해서 넘겨주는 방법 (Windows)&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 작업 시 &lt;code&gt;-k&lt;/code&gt; 옵션을 안 붙이고 명령을 보낼 수 있습니다&lt;/p&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# RSA 키 생성 (Windows)
ssh-keygen -t rsa -b 4096&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;607&quot; data-origin-height=&quot;498&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cr7jPJ/dJMcac3D4Xh/6hrcYfW6FP0sIKOv75BKWk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cr7jPJ/dJMcac3D4Xh/6hrcYfW6FP0sIKOv75BKWk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cr7jPJ/dJMcac3D4Xh/6hrcYfW6FP0sIKOv75BKWk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcr7jPJ%2FdJMcac3D4Xh%2F6hrcYfW6FP0sIKOv75BKWk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;607&quot; height=&quot;498&quot; data-origin-width=&quot;607&quot; data-origin-height=&quot;498&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# hosts pc로 RSA 파일 전송 (Windows -&amp;gt; Linux)
# 위치 : C:\Users\&amp;lt;&amp;lt;사용자 이름&amp;gt;&amp;gt;\.ssh
scp id_rsa.pub root@10.9.0.200:/root/.ssh/authorized_keys&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;720&quot; data-origin-height=&quot;228&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/svy8T/dJMcaipiekr/L7sZMjHtdW0Ik5kgolxPE1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/svy8T/dJMcaipiekr/L7sZMjHtdW0Ik5kgolxPE1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/svy8T/dJMcaipiekr/L7sZMjHtdW0Ik5kgolxPE1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fsvy8T%2FdJMcaipiekr%2FL7sZMjHtdW0Ik5kgolxPE1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;720&quot; height=&quot;228&quot; data-origin-width=&quot;720&quot; data-origin-height=&quot;228&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;SSH 키 발급 해서 넘겨주는 방법 (Linux)&lt;/h3&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# RSA 키 생성 (Linux)
ssh-keygen&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;653&quot; data-origin-height=&quot;377&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/blRb1u/dJMcaipiekE/KkmKQwQ7AhRFMYVqGjeqU0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/blRb1u/dJMcaipiekE/KkmKQwQ7AhRFMYVqGjeqU0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/blRb1u/dJMcaipiekE/KkmKQwQ7AhRFMYVqGjeqU0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FblRb1u%2FdJMcaipiekE%2FKkmKQwQ7AhRFMYVqGjeqU0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;653&quot; height=&quot;377&quot; data-origin-width=&quot;653&quot; data-origin-height=&quot;377&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# hosts pc로 id_rsa.pub 파일 전송 (Linux -&amp;gt; Linux)
ssh-copy-id root@10.9.0.201 &amp;amp;&amp;amp; ssh-copy-id root@10.9.0.202&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;823&quot; data-origin-height=&quot;128&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/9hEhK/dJMcacvRwFM/l2gi48YlANJkkE3qJblpT1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/9hEhK/dJMcacvRwFM/l2gi48YlANJkkE3qJblpT1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/9hEhK/dJMcacvRwFM/l2gi48YlANJkkE3qJblpT1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F9hEhK%2FdJMcacvRwFM%2Fl2gi48YlANJkkE3qJblpT1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;823&quot; height=&quot;128&quot; data-origin-width=&quot;823&quot; data-origin-height=&quot;128&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;실습 1&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;설치할 패키지 (Host)&lt;/b&gt;&lt;/h3&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;dnf install -y epel-release
dnf install -y ansible&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;관리 대상 리스트 등록 (hosts가 관리할 컴퓨터)&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Ansible은 기본적으로 어떤 서버에 접속해야 할지 모릅니다. 따라서 &lt;code&gt;/etc/ansible/hosts&lt;/code&gt; 파일에 IP 주소나 도메인을 적어줌으로써 hosts가 관리할 서버들은 해당 컴퓨터들이라고 목록을 작성 하는 것입니다.&lt;/p&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;#/etc/ansible/hosts
... 
[rockylinux]
10.9.0.201
10.9.0.202&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;SSH 접속이 가능한지 확인&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 명령어를 작성 할 경우 &amp;ldquo;이 서버의 식별 번호 (Fingerprint)&amp;rdquo;를 신뢰 할 수 있니?&amp;rdquo; 라고 묻고, 승인하면&lt;br /&gt;&lt;code&gt;~/.ssh/known_hosts&lt;/code&gt; 라는 파일에 저장하게 됩니다.&lt;/p&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;&amp;gt; ansible all -m ping -k&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;570&quot; data-origin-height=&quot;248&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/4cG4q/dJMcacii4i4/oYOWB41kyLHF36hJAGP3e1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/4cG4q/dJMcacii4i4/oYOWB41kyLHF36hJAGP3e1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/4cG4q/dJMcacii4i4/oYOWB41kyLHF36hJAGP3e1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F4cG4q%2FdJMcacii4i4%2FoYOWB41kyLHF36hJAGP3e1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;570&quot; height=&quot;248&quot; data-origin-width=&quot;570&quot; data-origin-height=&quot;248&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;실습 2 (ad-hoc)&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인벤토리에 있는 모든 서버에 접속해서, 특정 명령어를 대상 서버에 전달 (실제 리눅스 명령어)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;$ansible \quad [대상] \quad -m \quad [모듈] \quad -a \quad &quot;[명령어]&quot; \quad [옵션]$&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Shell Module&lt;/h3&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# uptime 
ansible all -m shell -a &quot;uptime&quot; -k&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;537&quot; data-origin-height=&quot;94&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bQHToS/dJMcacii4kk/kXgykDVZcytrAJmtm0lVkk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bQHToS/dJMcacii4kk/kXgykDVZcytrAJmtm0lVkk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bQHToS/dJMcacii4kk/kXgykDVZcytrAJmtm0lVkk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbQHToS%2FdJMcacii4kk%2FkXgykDVZcytrAJmtm0lVkk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;537&quot; height=&quot;94&quot; data-origin-width=&quot;537&quot; data-origin-height=&quot;94&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# last reboot
ansible all -m shell -a &quot;last reboot&quot; -k&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;606&quot; data-origin-height=&quot;301&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cmsAWQ/dJMcag54Xpi/rmTgdZzKnx8jOklnWYSXd1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cmsAWQ/dJMcag54Xpi/rmTgdZzKnx8jOklnWYSXd1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cmsAWQ/dJMcag54Xpi/rmTgdZzKnx8jOklnWYSXd1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcmsAWQ%2FdJMcag54Xpi%2FrmTgdZzKnx8jOklnWYSXd1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;606&quot; height=&quot;301&quot; data-origin-width=&quot;606&quot; data-origin-height=&quot;301&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# ifconfig
ansible all -m shell -a &quot;ifconfig&quot; -k&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;603&quot; data-origin-height=&quot;575&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ckEm02/dJMcacCClk2/WClARjA6ZY93P2XuIE21H0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ckEm02/dJMcacCClk2/WClARjA6ZY93P2XuIE21H0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ckEm02/dJMcacCClk2/WClARjA6ZY93P2XuIE21H0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FckEm02%2FdJMcacCClk2%2FWClARjA6ZY93P2XuIE21H0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;603&quot; height=&quot;575&quot; data-origin-width=&quot;603&quot; data-origin-height=&quot;575&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;User Module&lt;/h3&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# user 생성
ansible all -m user -a &quot;name=ans01&quot; -k&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;510&quot; data-origin-height=&quot;483&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kPQbx/dJMcacP8DUt/bWEXM2etCQO9GQFgVkVs4K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kPQbx/dJMcacP8DUt/bWEXM2etCQO9GQFgVkVs4K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kPQbx/dJMcacP8DUt/bWEXM2etCQO9GQFgVkVs4K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkPQbx%2FdJMcacP8DUt%2FbWEXM2etCQO9GQFgVkVs4K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;510&quot; height=&quot;483&quot; data-origin-width=&quot;510&quot; data-origin-height=&quot;483&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# user 확인 (shell)
ansible all -m shell -a &quot;tail -1 /etc/passwd&quot; -k&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;584&quot; data-origin-height=&quot;96&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bRf3em/dJMcabcBeQm/TVgERwKoH0zfZRLgxWwyV1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bRf3em/dJMcabcBeQm/TVgERwKoH0zfZRLgxWwyV1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bRf3em/dJMcabcBeQm/TVgERwKoH0zfZRLgxWwyV1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbRf3em%2FdJMcabcBeQm%2FTVgERwKoH0zfZRLgxWwyV1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;584&quot; height=&quot;96&quot; data-origin-width=&quot;584&quot; data-origin-height=&quot;96&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# user 삭제
# User Module에서 삭제 : state=absent
ansible all -m user -a &quot;name=ans01 state=absent&quot; -k&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;601&quot; data-origin-height=&quot;335&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/WjwoX/dJMcagydgNV/YZsVtjqwe2WLTKKXElRKsK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/WjwoX/dJMcagydgNV/YZsVtjqwe2WLTKKXElRKsK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/WjwoX/dJMcagydgNV/YZsVtjqwe2WLTKKXElRKsK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FWjwoX%2FdJMcagydgNV%2FYZsVtjqwe2WLTKKXElRKsK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;601&quot; height=&quot;335&quot; data-origin-width=&quot;601&quot; data-origin-height=&quot;335&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Dnf Module&lt;/h3&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# httpd 설치
ansible all -m dnf -a &quot;name=httpd state=present&quot; -k&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;607&quot; data-origin-height=&quot;349&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vv5la/dJMcaf69lH0/0oPjHMjWgI2kcxfCfXaTOK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vv5la/dJMcaf69lH0/0oPjHMjWgI2kcxfCfXaTOK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vv5la/dJMcaf69lH0/0oPjHMjWgI2kcxfCfXaTOK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fvv5la%2FdJMcaf69lH0%2F0oPjHMjWgI2kcxfCfXaTOK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;607&quot; height=&quot;349&quot; data-origin-width=&quot;607&quot; data-origin-height=&quot;349&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# httpd 상태 확인 (Shell)
ansible all -m shell -a &quot;systemctl status httpd&quot; -k&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;698&quot; data-origin-height=&quot;214&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/85DNd/dJMcaf69lIz/EVhghCkzvvkqZRT6NzUAv0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/85DNd/dJMcaf69lIz/EVhghCkzvvkqZRT6NzUAv0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/85DNd/dJMcaf69lIz/EVhghCkzvvkqZRT6NzUAv0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F85DNd%2FdJMcaf69lIz%2FEVhghCkzvvkqZRT6NzUAv0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;698&quot; height=&quot;214&quot; data-origin-width=&quot;698&quot; data-origin-height=&quot;214&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Copy Module&lt;/h3&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# 복사할 File 생성
echo &quot;My Web Server&quot; &amp;gt; index.html

# copy module로 복사
ansible all -m copy -a &quot;src=/root/index.html dest=/var/www/html/index.html&quot; -k&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;706&quot; data-origin-height=&quot;591&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/YJ4DJ/dJMcacbw34v/h1zr6QJ2Z2SXVGlvcoPt90/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/YJ4DJ/dJMcacbw34v/h1zr6QJ2Z2SXVGlvcoPt90/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/YJ4DJ/dJMcacbw34v/h1zr6QJ2Z2SXVGlvcoPt90/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FYJ4DJ%2FdJMcacbw34v%2Fh1zr6QJ2Z2SXVGlvcoPt90%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;706&quot; height=&quot;591&quot; data-origin-width=&quot;706&quot; data-origin-height=&quot;591&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# index.html 파일 복사 됐는지 확인 (Shell)
ansible all -m shell -a &quot;cat /var/www/html/index.html&quot; -k&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;648&quot; data-origin-height=&quot;95&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bwz0ah/dJMcac3D46o/kO2hT8n6gdBf4BK5udzkFk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bwz0ah/dJMcac3D46o/kO2hT8n6gdBf4BK5udzkFk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bwz0ah/dJMcac3D46o/kO2hT8n6gdBf4BK5udzkFk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbwz0ah%2FdJMcac3D46o%2FkO2hT8n6gdBf4BK5udzkFk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;648&quot; height=&quot;95&quot; data-origin-width=&quot;648&quot; data-origin-height=&quot;95&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Systemd Module&lt;/h3&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# httpd service 실행
ansible all -m systemd -a &quot;name=httpd.service state=started&quot; -k&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;728&quot; data-origin-height=&quot;405&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pznGZ/dJMcaiv1ePH/OmhyNqyeXwRhIOBRjzs4s0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pznGZ/dJMcaiv1ePH/OmhyNqyeXwRhIOBRjzs4s0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pznGZ/dJMcaiv1ePH/OmhyNqyeXwRhIOBRjzs4s0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpznGZ%2FdJMcaiv1ePH%2FOmhyNqyeXwRhIOBRjzs4s0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;728&quot; height=&quot;405&quot; data-origin-width=&quot;728&quot; data-origin-height=&quot;405&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# ansible host에서 curl로 확인
curl 10.9.0.201
curl 10.9.0.202&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;359&quot; data-origin-height=&quot;83&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/KT9Er/dJMcaiCNB2X/rCEmCKvU16R9Pk8WIJuHt1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/KT9Er/dJMcaiCNB2X/rCEmCKvU16R9Pk8WIJuHt1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/KT9Er/dJMcaiCNB2X/rCEmCKvU16R9Pk8WIJuHt1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FKT9Er%2FdJMcaiCNB2X%2FrCEmCKvU16R9Pk8WIJuHt1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;359&quot; height=&quot;83&quot; data-origin-width=&quot;359&quot; data-origin-height=&quot;83&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;실습 3 (Playbook)&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ad-hoc처럼 단발성으로 실행하는 명령어들의 집합을 play라고 하는데, 그런 play가 1개 이상 있는 집합을 playbook이라고 한다.&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;playbook yaml &lt;br /&gt;작성 규칙 &lt;br /&gt;&lt;br /&gt;--- : 시작&lt;br /&gt;name : 작업 구분용 이름 &lt;br /&gt;hosts : 작업 대상 &lt;br /&gt;tasks : 적용할 작업&lt;br /&gt;... : 종료 (생략 가능)&lt;/blockquote&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# 문법 검사
ansible-playbook playbooks/create_user.yaml --syntax-check

# 파일 실행
ansible-playbook playbooks/create_user.yaml -k&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;ans01 라는 이름의 유저 생성&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;code&gt;playbooks/create_user.yaml&lt;/code&gt; 파일 생성 후 아래와 같이 작성&lt;/p&gt;
&lt;pre class=&quot;yaml&quot;&gt;&lt;code&gt;---
- name: Create User Playbook
  hosts: all
  tasks:
  - name: Create user
    user:
      name: ans01
      uid: 1100
      state: present
...&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;epel-release, Nginx 패키지 설치와 Nginx 실행&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;code&gt;playbooks/install_nginx.yaml&lt;/code&gt; 파일 생성 후 아래와 같이 작성&lt;/p&gt;
&lt;pre class=&quot;yaml&quot;&gt;&lt;code&gt;---
- name: Install nginx
  hosts: all
  gather_facts: false  #정보를 수집하는 과정을 생략 (설치 속도 UP)
  tasks:
    - name: Install epel-release
      dnf: 
        name: epel-release
        state: present
    - name: Install nginx
      dnf:
        name: nginx
        state: present
    - name: Start nginx
      systemd:
        name: nginx
        state: started
...&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;copy 모듈을 사용해 index.html 파일 복사&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;code&gt;playbooks/copy_index.yaml&lt;/code&gt; 파일 생성 후 아래와 같이 작성&lt;/p&gt;
&lt;pre class=&quot;yaml&quot;&gt;&lt;code&gt;---
- name: Copy index.html to nginx
  hosts: all
  tasks:
    - name: Copy local index.html to Nginx Web Server
      copy:
        src: /root/index.html
        dest: /usr/share/nginx/html/index.html
...&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;실습 3-2 (Playbook-loop)&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;code&gt;create_group_loop.yaml&lt;/code&gt; 파일 생성 후 아래와 같이 작성&lt;/p&gt;
&lt;pre class=&quot;yaml&quot;&gt;&lt;code&gt;---
- name: Create Group by loop
  hosts: all
  tasks:
    - name: Add Group loop
      group: 
        name: &quot;{{ item.gname }}&quot;
        state: present
      loop: 
        - gname: &quot;test_grp01&quot;
        - gname: &quot;test_grp02&quot;
        - gname: &quot;test_grp03&quot;
...&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;488&quot; data-origin-height=&quot;162&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bWb2AQ/dJMcadnWCWU/TyKptQydYealrN425yDDa0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bWb2AQ/dJMcadnWCWU/TyKptQydYealrN425yDDa0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bWb2AQ/dJMcadnWCWU/TyKptQydYealrN425yDDa0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbWb2AQ%2FdJMcadnWCWU%2FTyKptQydYealrN425yDDa0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;488&quot; height=&quot;162&quot; data-origin-width=&quot;488&quot; data-origin-height=&quot;162&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;실습 3-3 (Playbook)&lt;/h2&gt;
&lt;pre class=&quot;yaml&quot;&gt;&lt;code&gt;---
- name: Exam01
  hosts: all
  gather_facts: false
  tasks:
    - name: Create User Group
      group: 
        name: &quot;{{ item.name }}&quot;
        state: present
      loop: 
        - { name: &quot;g-adm&quot; }
        - { name: &quot;g-test&quot; }
    - name: Create User
      user:
        name: &quot;{{ item.name }}&quot;
        group: &quot;{{ item.group }}&quot;
        uid: &quot;{{ item.uid }}&quot;
        state: present
      loop:
        - { name: &quot;u-adm&quot;, group: &quot;g-adm&quot;, uid: 2000 }
        - { name: &quot;u-test01&quot;, group: &quot;g-test&quot;, uid: 3001 }
        - { name: &quot;u-test02&quot;, group: &quot;g-test&quot;, uid: 3002 }
    - name: Install package traceroute
      dnf:
        name: traceroute
        state: present
    - name: Stop crond.service
      systemd:
        name: crond
        state: stopped
    - name: Create file
      file:
        path: /root/503.html
        state: touch
        mode: 0644
...&lt;/code&gt;&lt;/pre&gt;</description>
      <author>민콕이</author>
      <guid isPermaLink="true">https://box8741.tistory.com/49</guid>
      <comments>https://box8741.tistory.com/49#entry49comment</comments>
      <pubDate>Thu, 2 Apr 2026 14:04:08 +0900</pubDate>
    </item>
  </channel>
</rss>