<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>글 on Build on AWS</title><link>https://buildonaws.lakil.org/ko/posts/</link><description>Recent content in 글 on Build on AWS</description><generator>Hugo</generator><language>ko</language><lastBuildDate>Fri, 15 May 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://buildonaws.lakil.org/ko/posts/index.xml" rel="self" type="application/rss+xml"/><item><title>짧은 팁: AI agent가 AWS managed rule에 의해 막힐 때</title><link>https://buildonaws.lakil.org/ko/posts/ai-agent-blocked-by-managed-rule/</link><pubDate>Fri, 15 May 2026 00:00:00 +0000</pubDate><guid>https://buildonaws.lakil.org/ko/posts/ai-agent-blocked-by-managed-rule/</guid><description>&lt;h1 id="짧은-팁-ai-agent가-aws-managed-rule에-의해-막힐-때"&gt;짧은 팁: AI agent가 AWS managed rule에 의해 막힐 때&lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; OpenAI agent 트래픽이 AWS WAF의 Anonymous IP List 규칙(HostingProviderIPList)에 의해 차단되고 있었습니다. OpenAI가 사용하는 일부 Azure IP 대역이 이 목록에 포함되어 있었기 때문입니다. Bot Control은 해당 트래픽을 verified bot으로 정상 식별하고 있었으므로, HostingProviderIPList 규칙을 Count로 전환하고 &amp;ldquo;hosting provider이면서 verified bot이 아닌&amp;rdquo; 트래픽만 차단하도록 변경했습니다. 주의: HostingProviderIPList에서 먼저 차단하던 트래픽이 Bot Control까지 도달하므로 Bot Control 비용이 증가합니다.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Key Terms:&lt;/strong&gt; Anonymous IP List (HostingProviderIPList) = AWS WAF의 &lt;code&gt;AWSManagedRulesAnonymousIpList&lt;/code&gt; 규칙 중 하나. 호스팅 프로바이더(AWS, Azure, GCP 등) IP에서 오는 요청을 탐지 | Bot Control = AWS WAF의 &lt;code&gt;AWSManagedRulesBotControlRuleSet&lt;/code&gt;. 봇 트래픽을 식별·분류하는 관리형 규칙 | Verified Bot = Bot Control이 신원을 확인한 봇. 역방향 DNS, 공개 IP 목록 등으로 검증&lt;/p&gt;</description></item><item><title>고객에게 대용량 파일 공유할 때 — S3 + CloudFront Signed URL 자동화 스크립트</title><link>https://buildonaws.lakil.org/ko/posts/share-files-with-signed-url/</link><pubDate>Thu, 14 May 2026 00:00:00 +0000</pubDate><guid>https://buildonaws.lakil.org/ko/posts/share-files-with-signed-url/</guid><description>&lt;h1 id="고객에게-대용량-파일-공유할-때--s3--cloudfront-signed-url-자동화-스크립트"&gt;고객에게 대용량 파일 공유할 때 — S3 + CloudFront Signed URL 자동화 스크립트&lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; 고객에게 대용량 파일이나 다수의 파일을 공유해야 할 때, S3에 업로드하고 CloudFront Signed URL로 7일간 다운로드 가능한 링크를 만드는 과정을 &lt;code&gt;sharelink.py &amp;lt;경로&amp;gt;&lt;/code&gt; 한 줄로 자동화했습니다. 디렉토리를 지정하면 자동으로 zip 압축 후 업로드합니다.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Key Terms:&lt;/strong&gt; CloudFront Signed URL = CloudFront 배포에 대해 시간 제한이 있는 접근 권한을 부여하는 URL. RSA 키 페어로 서명 | S3 = Amazon Simple Storage Service. 객체 스토리지 | OAC = Origin Access Control. S3 버킷에 대한 직접 접근을 차단하고 CloudFront를 통해서만 접근을 허용하는 메커니즘&lt;/p&gt;</description></item><item><title>DDoS는 막았는데 CloudWatch 청구서가 날아왔다</title><link>https://buildonaws.lakil.org/ko/posts/ddos-log-auto-filter/</link><pubDate>Tue, 12 May 2026 00:00:00 +0000</pubDate><guid>https://buildonaws.lakil.org/ko/posts/ddos-log-auto-filter/</guid><description>&lt;h1 id="ddos는-막았는데-cloudwatch-청구서가-날아왔다"&gt;DDoS는 막았는데 CloudWatch 청구서가 날아왔다&lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; AWS Shield Advanced는 DDoS 공격 시 WAF, CloudFront, Route 53 등의 스케일링 비용을 보호하지만, WAF 로그 비용은 보호 대상이 아닙니다. 고객이 &amp;ldquo;로그는 유지하면서 비용을 줄이고 싶다&amp;quot;고 했을 때, 3단계로 접근했습니다: (1) 로그 목적지를 Data Firehose로 변경하여 비용 8.5배 절감, (2) DDoS 레이블 기준으로 Logging Filter 적용, (3) 평시 로그 유지가 필요하면 CloudWatch Alarm + Lambda로 DDoS 시에만 자동으로 필터를 켜고 끄기. 3단계는 베스트 프랙티스가 아닌 특수 상황용 임시 솔루션입니다.&lt;/p&gt;</description></item><item><title>왜 내 블로그는 봇한테 HTML을 안 주는가</title><link>https://buildonaws.lakil.org/ko/posts/serving-markdown-to-bots/</link><pubDate>Mon, 11 May 2026 00:00:00 +0000</pubDate><guid>https://buildonaws.lakil.org/ko/posts/serving-markdown-to-bots/</guid><description>&lt;h1 id="왜-내-블로그는-봇한테-html을-안-주는가"&gt;왜 내 블로그는 봇한테 HTML을 안 주는가&lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; 검증된 봇에게 HTML 대신 Markdown 원본을 제공하면 두 가지를 얻습니다. AI 답변에 내 콘텐츠가 왜곡 없이 인용되고, Data Transfer Out 비용이 94 % 줄어듭니다. AWS WAF Bot Control로 봇을 식별하고, CloudFront Functions로 URL을 재작성하는 구조입니다.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Key Terms:&lt;/strong&gt; Bot Control Targeted = AWS WAF의 봇 탐지 레벨. IP 평판·TLS 핑거프린팅·행동 분석을 조합해 봇을 분류 | CloudFront Functions = CloudFront 엣지에서 JavaScript를 실행하는 경량 컴퓨팅(viewer-request/viewer-response 단계) | Data Transfer Out = CloudFront에서 인터넷으로 나가는 트래픽에 부과되는 비용 | 검증된 봇(Verified Bot) = AWS WAF가 신원을 확인한 신뢰할 수 있는 크롤러(Googlebot, Bingbot, GPTBot 등)&lt;/p&gt;</description></item></channel></rss>