Skip to content

Commit c429e45

Browse files
committed
META Convert [caption]'d content
1 parent e66d629 commit c429e45

File tree

76 files changed

+810
-127
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

76 files changed

+810
-127
lines changed

README.md

Lines changed: 33 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,43 @@
1-
# DLTJ Blog with Jekyll on AWS CodeBuild/ECR/S2/CloudFront
1+
# DLTJ Blog with Pelican
22

3-
## Build the Docker image
3+
Using PDM as a Python manager. Use `pdm run zsh` to activate a shell.
44

5-
docker build -t dltj-jekyll-runner:latest .
5+
## Basic setup
66

7+
1. `pdm python install` — install Python venv
8+
1. `pdm install` — install prereq
79

8-
## Local blog generation
10+
## View site
911

10-
docker run --rm \
11-
-v ${PWD}:/srv/jekyll \
12-
-p 4000:4000 \
13-
{aws_acct_id}.dkr.ecr.us-east-1.amazonaws.com/codebuild/dltj-jekyll-runner:latest serve --host 0.0.0.0
12+
1. `invoke serve` or `invoke liveupdate`
1413

14+
## Historic Notes
1515

16-
## Upload the CodeBuild custom build environment image
16+
- Files with `.markdown` extensions were converted from the Wordpress site (and still may need some manual editing)
1717

18-
aws --profile dltj-admin ecr get-login-password --region us-east-1 | docker login --username AWS --password-stdin {aws_acct_id}.dkr.ecr.us-east-1.amazonaws.com
18+
## Macros
1919

20-
docker tag dltj-jekyll-runner:latest {aws_acct_id}.dkr.ecr.us-east-1.amazonaws.com/codebuild/dltj-jekyll-runner:latest
20+
### Image
2121

22-
docker push {aws_acct_id}.dkr.ecr.us-east-1.amazonaws.com/codebuild/dltj-jekyll-runner:latest
22+
```
23+
{{ image(
24+
div_float: str = None,
25+
width: str = None,
26+
localsrc: str = None,
27+
abssrc: str = None,
28+
caption: str = None,
29+
alt: str = None,
30+
ahref: str = None,
31+
localhref: str = None) }}
32+
```
33+
34+
### Captioned section
35+
Used for things other than an image to get the same rendered output
36+
37+
```
38+
{{ captioned(
39+
div_float: str = None,
40+
width: str = None,
41+
caption: str = None,
42+
contents: str = None) }}
43+
```

assets/images/index.html

Whitespace-only changes.

content/2008-07-15-dns-vulnerabilities.markdown

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -77,13 +77,23 @@ comments:
7777
<h2>DNS: The Internet's Addressbook</h2>
7878
<p>Your computer (or, in some special cases such as a home network setup, "your entire network" ((This happens with a technique called "Network Address Translation" or NAT. NAT was created to conserve the internet address space (among other reasons) by putting multiple computers behind a device that makes all of the computers look like one machine to the outside world. If you connect to the rest of the world via a small hub, you're probably using NAT. If the IP address of your computer starts with "10" or "192.168" you are definitely using NAT.))) is uniquely defined on the internet by an "IP address". It is a series of four numbers separated by a period; something like "216.178.38.116". Every computer on the network has one. The issue is that these numbers are not as easy to remember as names like "myspace.com". Enter DNS...</p>
7979
<p>It is the Domain Name System, or DNS, that translates an easily recognizable name to an IP address. DNS is a distributed database of names-to-numbers (and numbers-to-names and all sorts of other mappings). A network machine -- say, your desktop computer -- is running a program (a web browser) that needs to connect to a server. It relies on a DNS client to perform the name-to-number mapping. This figure shows a simplified relationship between all of the parts.</p>
80-
<p>[caption id="attachment_390" align="alignnone" width="500" caption="Sequence Diagram Showing Normal DNS Operation"]<img src="/assets/images/2008/07/dns-normal.png" alt="Sequence Diagram Showing Normal DNS Operation" title="DNS-Normal" width="500" height="318" class="size-full wp-image-390" />[/caption]</p>
80+
{{ image(
81+
div_float="none",
82+
width="500",
83+
caption="Sequence Diagram Showing Normal DNS Operation",
84+
alt="Sequence Diagram Showing Normal DNS Operation",
85+
localsrc="2008/07/dns-normal.png") }}
8186
<p>On your computer, the web browser makes a request with the local DNS client to one of the DNS servers it knows. (You'll see this DNS service listed if you look at the network properties on your computer.) DNS servers can, and typically do, remember the answers to recently asked questions from other DNS clients (a feature called "caching"); if the DNS server can answer the question from its cache, it will. If not, one of two things can happen: 1) DNS Server 1 can send a message back saying it doesn't know but suggest where it might go to find an answer; or 2) attempt to find the answer itself and send it back to the DNS client. The latter is what is pictured above and is called "recursive name resolution". DNS Server 1 can also cache the information so as to answer a subsequent question for the same information without having to go out and ask another DNS server for it. ((The amount of time a caching DNS server can hold onto information on behalf of an "authoritative" DNS server is specified as part of the DNS protocol, but such consideration is outside the scope of what is being talked about here.))</p>
8287
<h2>When DNS Goes Bad</h2>
8388
<p>So what is the problem? The United States Computer Emergency Readiness Team (<a href="http://www.us-cert.gov/about-us" title="US-CERT: About Us">US-CERT</a>) <a href="http://www.us-cert.gov/cas/techalerts/TA08-190B.html" title="US-CERT Technical Cyber Security Alert TA08-190B -- Multiple DNS implementations vulnerable to cache poisoning">describes it this way</a>:</p>
8489
<blockquote><p>An attacker with the ability to conduct a successful cache poisoning attack can cause a nameserver's clients to contact the incorrect, and possibly malicious, hosts for particular services. Consequently, web traffic, email, and other important network data can be redirected to systems under the attacker's control.</p></blockquote>
8590
<p>In other words, some rogue agent out on the net tries to inject bad information into a DNS cache by sending specially constructed answers to questions that the caching DNS server never asked. That looks something like this.</p>
86-
<p>[caption id="attachment_391" align="alignnone" width="500" caption="Sequence Diagram Showing the Effect of DNS Cache Poisoning"]<img src="/assets/images/2008/07/dns-poison.png" alt="Sequence Diagram Showing the Effect of DNS Cache Poisoning" title="DNS-Poison" width="500" height="318" class="size-full wp-image-391" />[/caption]</p>
91+
{{ image(
92+
div_float="none",
93+
width="500",
94+
caption="Sequence Diagram Showing the Effect of DNS Cache Poisoning",
95+
alt="Sequence Diagram Showing the Effect of DNS Cache Poisoning",
96+
localsrc="2008/07/dns-poison.png") }}
8797
<p>As the US-CERT advisory points out, this is a bad thing. Many internet services rely on the fact that when they ask to connect to a host with a specified name that they will in fact be talking to a host with that name. You want to know that you are sending and receiving e-mail from the servers you expect and that the websites you get information from are the true, correct servers. DNS cache poisoning effectively hides this because the address bar in the browser <em>looks</em> correct.</p>
8898
<h2>Beyond Phishing</h2>
8999
<p>Note that this scheme is different from the "phishing" technique. In that technique, you might be ask to go to a URL like <code>http://badguys.crimesyndication.org/banking.yourbank.com/</code>, which would look and behave like the "banking.yourbank.com" site that you know, but it is really a website on "badguys.crimesyndication.org" that is simply made to look like your online banking site. Careful inspection of the URL and the hints supplied by the browser about the security certificate would show that you are connecting to the wrong place. The "DNS Poisoning" vulnerability is much worse because <em>your computer</em> was fooled into connecting to the wrong site and is passing that tomfoolery back to you.</p>
@@ -93,7 +103,12 @@ comments:
93103
<blockquote><p>About a year ago Google and Dell announced a partnership to include the Google Toolbar on new Dell computers. At the same time, Google was trying to convince the Department of Justice that changing the default search engine in the (then) new IE7 was too difficult (when in reality it&rsquo;s really simple). Installing the toolbar meant that users would have Google as their default search engine in IE7. It also meant that Dell and Google would share some of the revenue from the advertising clicks that resulted from these installations, much like The Mozilla Foundation does with its Firefox browser. ...</p>
94104
<p>The solution to this problem was to route Google requests through a machine we run to check if the request is a typo or one of your shortcuts. If it is a typo or shortcut then we do what we always do, just fix the typo or launch your shortcut and send you off on your way. If it&rsquo;s not one of those two things, we pass it on to Google for them to give you search results. This solution provides the best of both worlds: OpenDNS users get back the features that they love and Google continues to operate without problems.</p></blockquote>
95105
<p>This is what it looks like in a picture:</p>
96-
<p>[caption id="attachment_392" align="alignnone" width="500" caption="Sequence Diagram Showing the OpenDNS Response to Dell/Google"]<img src="/assets/images/2008/07/dns-opendns-google.png" alt="Sequence Diagram Showing the OpenDNS Response to Dell/Google" title="DNS OpenDNS Google" width="500" height="318" class="size-full wp-image-392" />[/caption]</p>
106+
{{ image(
107+
div_float="none",
108+
width="500",
109+
caption="Sequence Diagram Showing the OpenDNS Response to Dell/Google",
110+
alt="Sequence Diagram Showing the OpenDNS Response to Dell/Google",
111+
localsrc="2008/07/dns-opendns-google.png") }}
97112
<p>Danny Sullivan of Search Engine Land has a more <a href="http://searchengineland.com/070523-083042.php" title="Google &amp; Dell&#039;s Revenue-Generating URL Error Pages Drawing Fire">in-depth analysis of Google's and Dell's actions</a>. David offers a defense of OpenDNS's response in a comments on <a href="http://yro.slashdot.org/article.pl?sid=07/05/24/0342246" title="OpenDNS Says Google-Dell Browser Tool is Spyware | Slashdot">a post to Slashdot</a> (<a href="http://slashdot.org/comments.pl?sid=235955&amp;cid=19251937" title="Comments on OpenDNS Says Google-Dell Browser Tool is Spyware">this is the sharpest and most poignant</a>). If offering OpenDNS as a fix for DNS cache poisoning is two steps forward, then OpenDNS's response to the Dell/Google action is, at best, one step back. I would prefer that Dell not automatically install functionality like this on my PC. I would also strongly prefer that DNS resolvers not try to be too cute. Fortunately, it is <a href="http://blowery.org/2008/04/08/opendns-is-proxying-google/" title="OpenDNS is proxying Google?">possible to turn off this behavior in OpenDNS</a>, which I prefer to do. But, all told, this is just one more lesson about how important the Domain Name Services is to the fundamental operation of the internet, and how easy it is to take for granted.</p>
98113
<h2>Updates</h2>
99114
<p><b>18-Jul-2008</b>: I exchanged e-mail with David Ulevitch, Founder and CEO of OpenDNS, that focused on the latter part this posting. He noted that "everything in our service, including the Google proxy, is an option that can be enabled or disabled in a (free, of course) user account." I implied that by linking to <a href="http://blowery.org/2008/04/08/opendns-is-proxying-google/" title="OpenDNS is proxying Google?">Ben Lowery's posting</a> with instructions on "flipping the 'Enable OpenDNS proxy' toggle". So I wanted to explicitly call that out. David also pointed out OpenDNS is working with Google to create favorable peering arrangements at <a href="http://system.opendns.com/" title="OpenDNS &amp;gt; System (also available at http://208.67.219.60/)">their distributed sites</a>; doing so is decreasing the latency introduced by the proxy.</p>

content/2008-07-16-mailman-spam-howto.markdown

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,13 @@ comments:
3232
<p>Dealing with SPAM e-mail is a real hassle. Dealing with SPAM e-mail as a mailing list owner is an even bigger hassle. Here are some tips for dealing with SPAM e-mail on mailing lists using the <a href="http://www.list.org/" title="Mailman, the GNU Mailing List Manager">Mailman</a> software package.</p>
3333
<h2>The Symptoms</h2>
3434
<p>Unless you are making your users as well as yourself miserable, you've probably set the "Action to take for postings from non-members for which no explicit action is defined" to "Hold". I believe this is the default setting for new lists.</p>
35-
<p>[caption id="attachment_399" align="alignnone" width="500" caption="Hold Nonmember setting in Mailing list administration, Privacy Options, Sender filters"]<img src="/assets/images/2008/07/hold-nonmember.png" alt="\"Hold Nonmember\" Setting in Mailing list administration -> Privacy Options -> Sender filters" title="hold-nonmember" width="500" height="28" class="size-full wp-image-399" />[/caption]<span id="genericNonmemberActionLink">&nbsp;</span></p>
35+
{{ image(
36+
div_float="none",
37+
width="500",
38+
caption="Hold Nonmember setting in Mailing list administration, Privacy Options, Sender filters",
39+
alt="\"Hold Nonmember\" Setting in Mailing list administration -> Privacy Options -> Sender filters",
40+
localsrc="2008/07/hold-nonmember.png") }}
41+
{: #genericNonmemberActionLink}
3642
<p>This will hold all of the messages sent by non-members -- all of those spamy e-mail addresses -- to a queue on the Mailman server. You'll receive a notification that a message is being held for you:<br />
3743
<blockquote><code>As list administrator, your authorization is requested for the following mailing list posting:<br />
3844
&nbsp;<br />
@@ -54,7 +60,13 @@ to approve or deny the request.<br /></code></p></blockquote>
5460
Please attend to this at your earliest convenience. &nbsp;This notice of pending requests, if any, will be sent out daily.<br /></code></p></blockquote>
5561
<h2>A Solution</h2>
5662
<p>This isn't an ideal solution, but it at least lets you ignore the vast majority of these messages confidently knowing that -- unless your mailing list is unlucky enough to be hit daily by spam -- eventually the daily prodding messages will go away. The key is to set the "Discard held messages older than this number of days" to some reasonable number:</p>
57-
<p>[caption id="attachment_400" align="alignnone" width="500" caption="Discard Messages setting in Mailing list options, General options"]<img src="/assets/images/2008/07/discard-messages.png" alt="\"Discard Messages\" setting in Mailing list options -> General options" title="discard-messages" width="500" height="60" class="size-full wp-image-400" />[/caption]<span id="maxDaysOnHoldLink">&nbsp;</span></p>
63+
{{ image(
64+
div_float="none",
65+
width="500",
66+
caption="Discard Messages setting in Mailing list options, General options",
67+
alt="\"Discard Messages\" setting in Mailing list options -> General options",
68+
localsrc="2008/07/discard-messages.png") }}
69+
{: #maxDaysOnHoldLink}
5870
<p>I use "4" in that field: two days to cover weekends plus a two day grace period. For a message that is errantly caught in the queue (because it was too large, was sent by a subscriber who's email address changed, or other reason), I now have four days to release it. If I do nothing, the message disappears from the hold queue after that time, and I get this final e-mail message:</p>
5971
<blockquote><p><code>From:&nbsp;&nbsp;&nbsp;&nbsp;<i>mailingListName</i>-bounces@<i>mailingListHost</i><br />
6072
Subject:&nbsp;<i>mailingListName</i> moderator request check result<br />

0 commit comments

Comments
 (0)