<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.bwt.com.de/index.php?action=history&amp;feed=atom&amp;title=NginX</id>
	<title>NginX - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.bwt.com.de/index.php?action=history&amp;feed=atom&amp;title=NginX"/>
	<link rel="alternate" type="text/html" href="https://wiki.bwt.com.de/index.php?title=NginX&amp;action=history"/>
	<updated>2026-05-13T20:47:54Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://wiki.bwt.com.de/index.php?title=NginX&amp;diff=391&amp;oldid=prev</id>
		<title>BrainwreckedTech: /* Core Configuration */ Modified gulag settings</title>
		<link rel="alternate" type="text/html" href="https://wiki.bwt.com.de/index.php?title=NginX&amp;diff=391&amp;oldid=prev"/>
		<updated>2019-12-27T15:17:45Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Core Configuration: &lt;/span&gt; Modified gulag settings&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 11:17, 27 December 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l117&quot;&gt;Line 117:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 117:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	## Request limits&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	## Request limits&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	limit_req_zone	$binary_remote_addr	zone=gulag:&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;1m	&lt;/del&gt;rate=&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;60r&lt;/del&gt;/m;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	limit_req_zone	$binary_remote_addr	zone=gulag:&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;16m	&lt;/ins&gt;rate=&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;600r&lt;/ins&gt;/m;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	## Log Format&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	## Log Format&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key MW_BWT:diff:1.41:old-384:rev-391:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>BrainwreckedTech</name></author>
	</entry>
	<entry>
		<id>https://wiki.bwt.com.de/index.php?title=NginX&amp;diff=384&amp;oldid=prev</id>
		<title>BrainwreckedTech: /* Creating User Certificates */ Added USERNAME variable.</title>
		<link rel="alternate" type="text/html" href="https://wiki.bwt.com.de/index.php?title=NginX&amp;diff=384&amp;oldid=prev"/>
		<updated>2019-12-26T03:40:59Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Creating User Certificates: &lt;/span&gt; Added USERNAME variable.&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 23:40, 25 December 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l351&quot;&gt;Line 351:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 351:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{bc|1=&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{bc|1=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;sudo &lt;/del&gt;export USRCRTDR=&quot;/srv/ssl/certs/users&quot;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;export USRCRTDR=&quot;/srv/ssl/certs/users&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl genrsa -des3 -out ${USRCRTDR}/USERNAME.key 1024&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;export USERNAME=&quot;username&lt;/ins&gt;&quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl req -new -key ${USRCRTDR}/USERNAME.key -out ${USRCRTDR}/USERNAME.csr&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl genrsa -des3 -out ${USRCRTDR}/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;${&lt;/ins&gt;USERNAME&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;}&lt;/ins&gt;.key 1024&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl x509 -req -days 1095 -in ${USRCRTDR}/USERNAME.csr -CA /srv/ssl/certs/ca.crt -CAkey /srv/ssl/private/ca.key -CAserial /srv/ssl/serial -CAcreateserial -out ${USRCRTDR}/USERNAME.crt&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl req -new -key ${USRCRTDR}/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;${&lt;/ins&gt;USERNAME&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;}&lt;/ins&gt;.key -out ${USRCRTDR}/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;${&lt;/ins&gt;USERNAME&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;}&lt;/ins&gt;.csr&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl pkcs12 -export -clcerts -in ${USRCRTDR}/USERNAME.crt -inkey ${USRCRTDR}/USERNAME.key -out ${USRCRTDR}/USERNAME.p12&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl x509 -req -days 1095 -in ${USRCRTDR}/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;${&lt;/ins&gt;USERNAME&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;}&lt;/ins&gt;.csr -CA /srv/ssl/certs/ca.crt -CAkey /srv/ssl/private/ca.key -CAserial /srv/ssl/serial -CAcreateserial -out ${USRCRTDR}/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;${&lt;/ins&gt;USERNAME&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;}&lt;/ins&gt;.crt&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl pkcs12 -export -clcerts -in ${USRCRTDR}/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;${&lt;/ins&gt;USERNAME&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;}&lt;/ins&gt;.crt -inkey ${USRCRTDR}/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;${&lt;/ins&gt;USERNAME&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;}&lt;/ins&gt;.key -out ${USRCRTDR}/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;${&lt;/ins&gt;USERNAME&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;}&lt;/ins&gt;.p12&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key MW_BWT:diff:1.41:old-383:rev-384:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>BrainwreckedTech</name></author>
	</entry>
	<entry>
		<id>https://wiki.bwt.com.de/index.php?title=NginX&amp;diff=383&amp;oldid=prev</id>
		<title>BrainwreckedTech: /* Server Configuration */ Using single-quotes instead of double-quotes caused unexpected behavior.</title>
		<link rel="alternate" type="text/html" href="https://wiki.bwt.com.de/index.php?title=NginX&amp;diff=383&amp;oldid=prev"/>
		<updated>2019-12-26T01:28:15Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Server Configuration: &lt;/span&gt; Using single-quotes instead of double-quotes caused unexpected behavior.&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 21:28, 25 December 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l335&quot;&gt;Line 335:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 335:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo mkdir /srv/ssl/certs/users&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo mkdir /srv/ssl/certs/users&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo touch /srv/ssl/index.txt&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo touch /srv/ssl/index.txt&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;echo &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;’01’ &lt;/del&gt;| sudo tee /srv/ssl/crlnumber&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;echo &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot;01&quot; &lt;/ins&gt;| sudo tee /srv/ssl/crlnumber&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/nowiki&amp;gt;}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/nowiki&amp;gt;}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key MW_BWT:diff:1.41:old-382:rev-383:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>BrainwreckedTech</name></author>
	</entry>
	<entry>
		<id>https://wiki.bwt.com.de/index.php?title=NginX&amp;diff=382&amp;oldid=prev</id>
		<title>BrainwreckedTech: /* Server Configuration */ Fixed paths</title>
		<link rel="alternate" type="text/html" href="https://wiki.bwt.com.de/index.php?title=NginX&amp;diff=382&amp;oldid=prev"/>
		<updated>2019-12-26T01:24:22Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Server Configuration: &lt;/span&gt; Fixed paths&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 21:24, 25 December 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l335&quot;&gt;Line 335:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 335:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo mkdir /srv/ssl/certs/users&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo mkdir /srv/ssl/certs/users&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo touch /srv/ssl/index.txt&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo touch /srv/ssl/index.txt&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;echo ’01’ | sudo tee /&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;etc&lt;/del&gt;/ssl&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/ca&lt;/del&gt;/crlnumber&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;echo ’01’ | sudo tee /&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;srv&lt;/ins&gt;/ssl/crlnumber&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/nowiki&amp;gt;}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/nowiki&amp;gt;}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key MW_BWT:diff:1.41:old-381:rev-382:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>BrainwreckedTech</name></author>
	</entry>
	<entry>
		<id>https://wiki.bwt.com.de/index.php?title=NginX&amp;diff=381&amp;oldid=prev</id>
		<title>BrainwreckedTech: /* Server Configuration */ Fixed paths</title>
		<link rel="alternate" type="text/html" href="https://wiki.bwt.com.de/index.php?title=NginX&amp;diff=381&amp;oldid=prev"/>
		<updated>2019-12-26T01:23:13Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Server Configuration: &lt;/span&gt; Fixed paths&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 21:23, 25 December 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l332&quot;&gt;Line 332:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 332:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{bc|1=&amp;lt;nowiki&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{bc|1=&amp;lt;nowiki&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo mkdir -p /&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;etc&lt;/del&gt;/ssl&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/ca&lt;/del&gt;/{certs,crl,private}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo mkdir -p /&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;srv&lt;/ins&gt;/ssl/{certs,crl,private}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo mkdir /&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;etc&lt;/del&gt;/ssl&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/ca/ca&lt;/del&gt;/certs/users&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo mkdir /&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;srv&lt;/ins&gt;/ssl/certs/users&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo touch /&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;etc&lt;/del&gt;/ssl&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/ca&lt;/del&gt;/index.txt&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo touch /&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;srv&lt;/ins&gt;/ssl/index.txt&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;echo ’01’ | sudo tee /etc/ssl/ca/crlnumber&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;echo ’01’ | sudo tee /etc/ssl/ca/crlnumber&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/nowiki&amp;gt;}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/nowiki&amp;gt;}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key MW_BWT:diff:1.41:old-380:rev-381:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>BrainwreckedTech</name></author>
	</entry>
	<entry>
		<id>https://wiki.bwt.com.de/index.php?title=NginX&amp;diff=380&amp;oldid=prev</id>
		<title>BrainwreckedTech: /* Revoking User Certificates */ Fixed paths</title>
		<link rel="alternate" type="text/html" href="https://wiki.bwt.com.de/index.php?title=NginX&amp;diff=380&amp;oldid=prev"/>
		<updated>2019-12-26T01:09:10Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Revoking User Certificates: &lt;/span&gt; Fixed paths&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 21:09, 25 December 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l363&quot;&gt;Line 363:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 363:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{bc|1=&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{bc|1=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl ca -name CA_Default -revoke /&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;etc&lt;/del&gt;/ssl&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/ca&lt;/del&gt;/certs/users/USERNAME.crt -keyfile /&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;etc&lt;/del&gt;/ssl&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/ca&lt;/del&gt;/private/ca.key -cert /&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;etc&lt;/del&gt;/ssl&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/ca&lt;/del&gt;/certs/ca.crt    &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl ca -name CA_Default -revoke /&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;srv&lt;/ins&gt;/ssl/certs/users/USERNAME.crt -keyfile /&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;srv&lt;/ins&gt;/ssl/private/ca.key -cert /&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;srv&lt;/ins&gt;/ssl/certs/ca.crt    &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl ca -name CA_Default -gencrl -keyfile /&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;etc&lt;/del&gt;/ssl&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/ca&lt;/del&gt;/private/ca.key -cert /&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;etc&lt;/del&gt;/ssl&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/ca&lt;/del&gt;/certs/ca.crt -out /&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;etc&lt;/del&gt;/ssl&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/ca&lt;/del&gt;/private/ca.crl -crldays 1095&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl ca -name CA_Default -gencrl -keyfile /&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;srv&lt;/ins&gt;/ssl/private/ca.key -cert /&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;srv&lt;/ins&gt;/ssl/certs/ca.crt -out /&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;srv&lt;/ins&gt;/ssl/private/ca.crl -crldays 1095&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key MW_BWT:diff:1.41:old-379:rev-380:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>BrainwreckedTech</name></author>
	</entry>
	<entry>
		<id>https://wiki.bwt.com.de/index.php?title=NginX&amp;diff=379&amp;oldid=prev</id>
		<title>BrainwreckedTech: /* Creating User Certificates */ Fixed paths</title>
		<link rel="alternate" type="text/html" href="https://wiki.bwt.com.de/index.php?title=NginX&amp;diff=379&amp;oldid=prev"/>
		<updated>2019-12-26T00:55:04Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Creating User Certificates: &lt;/span&gt; Fixed paths&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 20:55, 25 December 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l351&quot;&gt;Line 351:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 351:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{bc|1=&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{bc|1=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo export USRCRTDR=&quot;/srv/ssl&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/ca&lt;/del&gt;/certs/users&quot;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo export USRCRTDR=&quot;/srv/ssl/certs/users&quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl genrsa -des3 -out ${USRCRTDR}/USERNAME.key 1024&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl genrsa -des3 -out ${USRCRTDR}/USERNAME.key 1024&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl req -new -key ${USRCRTDR}/USERNAME.key -out ${USRCRTDR}/USERNAME.csr&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl req -new -key ${USRCRTDR}/USERNAME.key -out ${USRCRTDR}/USERNAME.csr&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl x509 -req -days 1095 -in ${USRCRTDR}/USERNAME.csr -CA /&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;etc&lt;/del&gt;/ssl&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/ca&lt;/del&gt;/certs/ca.crt -CAkey /&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;etc&lt;/del&gt;/ssl&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/ca&lt;/del&gt;/private/ca.key -CAserial /&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;etc&lt;/del&gt;/ssl&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/ca&lt;/del&gt;/serial -CAcreateserial -out ${USRCRTDR}/USERNAME.crt&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl x509 -req -days 1095 -in ${USRCRTDR}/USERNAME.csr -CA /&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;srv&lt;/ins&gt;/ssl/certs/ca.crt -CAkey /&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;srv&lt;/ins&gt;/ssl/private/ca.key -CAserial /&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;srv&lt;/ins&gt;/ssl/serial -CAcreateserial -out ${USRCRTDR}/USERNAME.crt&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl pkcs12 -export -clcerts -in ${USRCRTDR}/USERNAME.crt -inkey ${USRCRTDR}/USERNAME.key -out ${USRCRTDR}/USERNAME.p12&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl pkcs12 -export -clcerts -in ${USRCRTDR}/USERNAME.crt -inkey ${USRCRTDR}/USERNAME.key -out ${USRCRTDR}/USERNAME.p12&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key MW_BWT:diff:1.41:old-378:rev-379:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>BrainwreckedTech</name></author>
	</entry>
	<entry>
		<id>https://wiki.bwt.com.de/index.php?title=NginX&amp;diff=378&amp;oldid=prev</id>
		<title>BrainwreckedTech: /* Creating the Server Certificate */ Fixed paths</title>
		<link rel="alternate" type="text/html" href="https://wiki.bwt.com.de/index.php?title=NginX&amp;diff=378&amp;oldid=prev"/>
		<updated>2019-12-26T00:38:13Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Creating the Server Certificate: &lt;/span&gt; Fixed paths&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 20:38, 25 December 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l341&quot;&gt;Line 341:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 341:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{bc|1=&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{bc|1=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl genrsa -des3 -out /srv/ssl&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/ca&lt;/del&gt;/private/ca.key 4096&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl genrsa -des3 -out /srv/ssl/private/ca.key 4096&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl req -new -x509 -days 1095 -key /srv/ssl&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/ca&lt;/del&gt;/private/ca.key -out /&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;etc&lt;/del&gt;/ssl&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/ca&lt;/del&gt;/certs/ca.crt&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl req -new -x509 -days 1095 -key /srv/ssl/private/ca.key -out /&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;srv&lt;/ins&gt;/ssl/certs/ca.crt&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl ca -name CA_default -gencrl -keyfile /srv/ssl&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/ca&lt;/del&gt;/private/ca.key -cert /srv/ssl&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/ca&lt;/del&gt;/certs/ca.crt -out /srv/ssl&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;/ca&lt;/del&gt;/private/ca.crl -crldays 1095&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;sudo openssl ca -name CA_default -gencrl -keyfile /srv/ssl/private/ca.key -cert /srv/ssl/certs/ca.crt -out /srv/ssl/private/ca.crl -crldays 1095&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key MW_BWT:diff:1.41:old-355:rev-378:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>BrainwreckedTech</name></author>
	</entry>
	<entry>
		<id>https://wiki.bwt.com.de/index.php?title=NginX&amp;diff=355&amp;oldid=prev</id>
		<title>BrainwreckedTech: Created page.</title>
		<link rel="alternate" type="text/html" href="https://wiki.bwt.com.de/index.php?title=NginX&amp;diff=355&amp;oldid=prev"/>
		<updated>2019-12-09T23:53:49Z</updated>

		<summary type="html">&lt;p&gt;Created page.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Category:Web Server]]&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:left; margin-right:0.5em; margin-bottom:0.5em;&amp;quot;&amp;gt;__TOC__&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pronounced &amp;quot;Engine X,&amp;quot; NginX is a web server which can also be used as a reverse proxy, load balancer, mail proxy, and HTTP cache.  It was created in 2005 by Igor Sysoev, and has been known for its stability, rich feature set, simple configuration, and low resource consumption. NginX and has become the most popular web server according to Netcraft -- edging out Apache by a slim margin.&lt;br /&gt;
&lt;br /&gt;
NginX was written with an explicit goal of outperforming the Apache web server. For serving static files, NginX uses much less memory than Apache, and can handle roughly four times as many requests per second.  However, this performance boost comes at a cost of decreased flexibility, such as the ability to override system-wide access settings on a per-file basis (Apache accomplishes this with an {{ic|.htaccess}} file, while Nginx has no such feature built in).&lt;br /&gt;
&lt;br /&gt;
= Prerequisites =&lt;br /&gt;
&lt;br /&gt;
None&lt;br /&gt;
&lt;br /&gt;
= Required Packages =&lt;br /&gt;
&lt;br /&gt;
{{bc|yay -Syu --needed apache-tools ca-certificates certbot-nginx nginx}}&lt;br /&gt;
&lt;br /&gt;
= Configuration =&lt;br /&gt;
&lt;br /&gt;
Configuration is done through the {{ic|/etc/nginx/ngninx.conf}} file.  By default, all configuration is done through this file.  It&amp;#039;s advisable to take advantage of the ability to include other files to make multi-site administration easier.&lt;br /&gt;
&lt;br /&gt;
== Core Configuration ==&lt;br /&gt;
&lt;br /&gt;
The following is a good general start for the main {{ic|nginx.conf}} file.&lt;br /&gt;
&lt;br /&gt;
First, edit {{ic|/etc/nginx/nginx.conf}}:&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/nginx/nginx.conf|2=&amp;lt;nowiki&amp;gt;&lt;br /&gt;
user					http;&lt;br /&gt;
worker_processes			1;	# one(1) worker or equal the number of _real_ cpu cores. 4=4 core cpu&lt;br /&gt;
worker_priority				15;	# renice workers to reduce priority compared to system processes for machine health.	Worst case nginx will get ~25% system resources at nice=15&lt;br /&gt;
worker_rlimit_nofile			1024;	# maximum number of open files&lt;br /&gt;
worker_cpu_affinity			auto;&lt;br /&gt;
&lt;br /&gt;
events {&lt;br /&gt;
	multi_accept			on;&lt;br /&gt;
	accept_mutex			on;	# serially accept() connections and pass to workers, efficient if workers gt 1&lt;br /&gt;
	accept_mutex_delay		500ms;	# worker process will accept mutex after this delay if not assigned. (default 500ms)&lt;br /&gt;
	worker_connections		1024;	# number of parallel or concurrent connections per worker_processes&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
http {&lt;br /&gt;
	charset				utf-8;&lt;br /&gt;
	aio				on;	# asynchronous file I/O, fast with ZFS, make sure sendfile=off&lt;br /&gt;
	sendfile			off;	# on for decent direct disk IO, off for VMs&lt;br /&gt;
	tcp_nopush			off;	# turning on requires sendfile=on&lt;br /&gt;
	tcp_nodelay			on;	# Nagle buffering algorithm, used for keepalive only&lt;br /&gt;
	server_tokens			off;	# version number in error pages&lt;br /&gt;
	log_not_found			off;&lt;br /&gt;
	types_hash_max_size		4096;&lt;br /&gt;
&lt;br /&gt;
	# MIME&lt;br /&gt;
	include				mime.types;&lt;br /&gt;
	default_type			application/octet-stream;&lt;br /&gt;
&lt;br /&gt;
	# logging&lt;br /&gt;
	access_log			/var/log/nginx/access.log;&lt;br /&gt;
	error_log			/var/log/nginx/error.log warn;&lt;br /&gt;
&lt;br /&gt;
	# SSL&lt;br /&gt;
	ssl_session_timeout             1440m;&lt;br /&gt;
	ssl_session_cache		shared:le_nginx_SSL:10m;&lt;br /&gt;
	ssl_session_tickets		off;&lt;br /&gt;
	ssl_prefer_server_ciphers	off;&lt;br /&gt;
&lt;br /&gt;
	# Diffie-Hellman parameter for DHE ciphersuites&lt;br /&gt;
	ssl_dhparam                     /etc/letsencrypt/ssl-dhparams.pem;&lt;br /&gt;
&lt;br /&gt;
	# Mozilla Intermediate configuration&lt;br /&gt;
	ssl_protocols			TLSv1.2 TLSv1.3;&lt;br /&gt;
	ssl_ciphers			ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;&lt;br /&gt;
&lt;br /&gt;
	# OCSP Stapling&lt;br /&gt;
	ssl_stapling			on;&lt;br /&gt;
	ssl_stapling_verify		on;&lt;br /&gt;
	resolver			1.1.1.1 1.0.0.1 8.8.8.8 8.8.4.4 208.67.222.222 208.67.220.220 valid=60s;&lt;br /&gt;
	resolver_timeout		2s;&lt;br /&gt;
&lt;br /&gt;
	# Size Limits&lt;br /&gt;
	#client_body_buffer_size	8k;&lt;br /&gt;
	#client_header_buffer_size	1k;&lt;br /&gt;
	client_max_body_size		16M;&lt;br /&gt;
	#large_client_header_buffers	4 4k/8k;&lt;br /&gt;
&lt;br /&gt;
	## From StackOverflow: for &amp;quot;upstream sent too big header while reading response header from upstream&amp;quot;&lt;br /&gt;
	fastcgi_buffers			8 16k;&lt;br /&gt;
	fastcgi_buffer_size		32k;&lt;br /&gt;
&lt;br /&gt;
	# Timeouts, do not keep connections open longer then necessary to reduce&lt;br /&gt;
	# resource usage and deny Slowloris type attacks.&lt;br /&gt;
	client_body_timeout		5s;	# maximum time between packets the client can pause when sending nginx any data&lt;br /&gt;
	client_header_timeout		5s;	# maximum time the client has to send the entire header to nginx&lt;br /&gt;
	keepalive_timeout		75s;	# timeout which a single keep-alive client connection will stay open&lt;br /&gt;
	send_timeout			15s;	# maximum time between packets nginx is allowed to pause when sending the client data&lt;br /&gt;
&lt;br /&gt;
	## General Options&lt;br /&gt;
&lt;br /&gt;
	gzip				off;	# disable on the fly gzip compression due to higher latency, only use gzip_static&lt;br /&gt;
	#gzip_http_version		1.0;	# serve gzipped content to all clients including HTTP/1.0&lt;br /&gt;
	gzip_static			on;	# precompress content (gzip -9) with an external script&lt;br /&gt;
	#gzip_vary			on;	# send response header &amp;quot;Vary: Accept-Encoding&amp;quot;&lt;br /&gt;
	gzip_proxied			any;	# allows compressed responses for any request even from proxies&lt;br /&gt;
	ignore_invalid_headers		on;&lt;br /&gt;
	keepalive_requests		50;	# number of requests per connection, does not affect SPDY&lt;br /&gt;
	keepalive_disable		none;	# allow all browsers to use keepalive connections&lt;br /&gt;
	max_ranges			1;	# allow a single range header for resumed downloads and to stop large range header DoS attacks&lt;br /&gt;
	msie_padding			off;&lt;br /&gt;
	open_file_cache			max=1000 inactive=2h;&lt;br /&gt;
	open_file_cache_errors		on;&lt;br /&gt;
	open_file_cache_min_uses	1;&lt;br /&gt;
	open_file_cache_valid		1h;&lt;br /&gt;
	output_buffers			1 512;&lt;br /&gt;
	postpone_output			1440;	# postpone sends to match our machine&amp;#039;s MSS&lt;br /&gt;
	read_ahead			512K;	# kernel read head set to the output_buffers&lt;br /&gt;
	recursive_error_pages		on;&lt;br /&gt;
	reset_timedout_connection	on;	# reset timed out connections freeing ram&lt;br /&gt;
	server_name_in_redirect		off;	# if off, nginx will use the requested Host header&lt;br /&gt;
	source_charset			utf-8;	# same value as &amp;quot;charset&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	## Request limits&lt;br /&gt;
	limit_req_zone	$binary_remote_addr	zone=gulag:1m	rate=60r/m;&lt;br /&gt;
&lt;br /&gt;
	## Log Format&lt;br /&gt;
	log_format	main	&amp;#039;$remote_addr $host $remote_user [$time_local] &amp;quot;$request&amp;quot; $status $body_bytes_sent &amp;quot;$http_referer&amp;quot; &amp;quot;$http_user_agent&amp;quot; $ssl_cipher $request_time&amp;#039;;&lt;br /&gt;
&lt;br /&gt;
	# load configs&lt;br /&gt;
	include	/etc/nginx/conf.d/*.conf;&lt;br /&gt;
	include	/etc/nginx/sites-enabled/*.conf;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
Make the {{ic|sites-available}} and {{ic|sites-enabled}} directories.&lt;br /&gt;
&lt;br /&gt;
{{bc|&amp;lt;nowiki&amp;gt;sudo mkdir /etc/nginx/sites-{available,enabled}&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
== Standard Web Site ==&lt;br /&gt;
&lt;br /&gt;
=== Create a Web Root ===&lt;br /&gt;
&lt;br /&gt;
{{bc|sudo mkdir /srv/http/&amp;lt;domain&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
If you don&amp;#039;t have anything to put into the directory for the site, create an {{ic|index.html}} file.&lt;br /&gt;
&lt;br /&gt;
{{hc|/srv/http/&amp;lt;domain&amp;gt;/index.php|2=&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;lt;!DOCTYPE html PUBLIC &amp;quot;-//W3C//DTD XHTML 1.1//EN&amp;quot; &amp;quot;http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;html xmlns=&amp;quot;http://www.w3.org/1999/xhtml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
  &amp;lt;title&amp;gt;Server Configuration Confirmation&amp;lt;/title&amp;gt;&lt;br /&gt;
  &amp;lt;meta http-equiv=&amp;quot;Content-Type&amp;quot; content=&amp;quot;text/html; charset=UTF-8&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;body style=&amp;quot;font-family:sans-serif;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h1&amp;gt;Web server is properly configured!&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Configuration ===&lt;br /&gt;
&lt;br /&gt;
Make a site available by creating {{ic|/etc/nginx/sites-available/&amp;lt;domain&amp;gt;.conf}}:&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{note|Remove the {{ic|#}}s after setting up Let&amp;#039;s Encrypt.}}&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/nginx/sites-available/&amp;lt;domain&amp;gt;.conf|2=&lt;br /&gt;
&amp;lt;nowiki&amp;gt;server {&lt;br /&gt;
	listen			80;&lt;br /&gt;
	listen			[::]:80;&lt;br /&gt;
	server_name		&amp;lt;domain&amp;gt;;&lt;br /&gt;
#	return 301		https://$host$request_uri;&lt;br /&gt;
#}&lt;br /&gt;
#&lt;br /&gt;
#server {&lt;br /&gt;
#&lt;br /&gt;
#	listen				443 ssl http2;&lt;br /&gt;
#	listen				[::]:443 ssl http2;&lt;br /&gt;
#	server_name			&amp;lt;domain&amp;gt;;&lt;br /&gt;
#&lt;br /&gt;
#	ssl_certificate			/etc/letsencrypt/live/&amp;lt;domain&amp;gt;/fullchain.pem;&lt;br /&gt;
#	ssl_certificate_key		/etc/letsencrypt/live/&amp;lt;domain&amp;gt;/privkey.pem;&lt;br /&gt;
#	ssl_trusted_certificate		/etc/letsencrypt/live/&amp;lt;domain&amp;gt;/chain.pem;&lt;br /&gt;
#&lt;br /&gt;
#	fastcgi_param			HTTPS on;&lt;br /&gt;
#&lt;br /&gt;
#	add_header			Strict-Transport-Security max-age=15768000;&lt;br /&gt;
&lt;br /&gt;
	root				/srv/http/$host;&lt;br /&gt;
	index				index.html index.php;&lt;br /&gt;
&lt;br /&gt;
	add_header			Cache-Control &amp;quot;public&amp;quot;;&lt;br /&gt;
	add_header			X-Frame-Options &amp;quot;DENY&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	access_log			/var/log/nginx/access.log main buffer=32k;&lt;br /&gt;
	error_log			/var/log/nginx/error.log error;&lt;br /&gt;
	limit_req			zone=gulag burst=200 nodelay;&lt;br /&gt;
&lt;br /&gt;
	# ACME challenge&lt;br /&gt;
	location ^~ /.well-known {&lt;br /&gt;
		allow			all;&lt;br /&gt;
		alias			/var/lib/letsencrypt/$host/.well-known;&lt;br /&gt;
		default_type		&amp;quot;text/plain&amp;quot;;&lt;br /&gt;
		try_files		$uri =404;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	location / {&lt;br /&gt;
		try_files		$uri $uri/ /index.php?$query_string;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	location ~ /(data|conf|bin|inc)/ {&lt;br /&gt;
		deny			all;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	location ~* \.(jpg|jpeg|gif|css|png|js|ico|html)$ {&lt;br /&gt;
		access_log		off;&lt;br /&gt;
		expires			max;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	location ~ \.php$ {&lt;br /&gt;
		try_files		$uri = 404;&lt;br /&gt;
		fastcgi_pass		unix:/run/php-fpm/php-fpm.sock;&lt;br /&gt;
		fastcgi_index		index.php;&lt;br /&gt;
		include			fastcgi.conf;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	location ~ /\.ht {&lt;br /&gt;
		deny			all;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Reverse Proxy ==&lt;br /&gt;
&lt;br /&gt;
A reverse proxy is primarily used when a stand-alone application provides its own web interface and you want to route access to it through standard HTTP(S).&lt;br /&gt;
&lt;br /&gt;
{{note|Remove the {{ic|#}}s after setting up Let&amp;#039;s Encrypt.}}&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/nginx/sites-available/&amp;lt;domain&amp;gt;.conf|2=&lt;br /&gt;
&amp;lt;nowiki&amp;gt;server {&lt;br /&gt;
	listen			80;&lt;br /&gt;
	listen			[::]:80;&lt;br /&gt;
	server_name		&amp;lt;domain&amp;gt;;&lt;br /&gt;
&lt;br /&gt;
#	return 301		https://$host$request_uri;&lt;br /&gt;
#&lt;br /&gt;
#}&lt;br /&gt;
#&lt;br /&gt;
#server {&lt;br /&gt;
#&lt;br /&gt;
#	listen				443 ssl http2;&lt;br /&gt;
#	listen				[::]:443 ssl http2;&lt;br /&gt;
#	server_name			&amp;lt;domain&amp;gt;;&lt;br /&gt;
#&lt;br /&gt;
#	ssl_certificate			/etc/letsencrypt/live/&amp;lt;domain&amp;gt;/fullchain.pem;&lt;br /&gt;
#	ssl_certificate_key		/etc/letsencrypt/live/&amp;lt;domain&amp;gt;/privkey.pem;&lt;br /&gt;
#	ssl_trusted_certificate		/etc/letsencrypt/live/&amp;lt;domain&amp;gt;/chain.pem;&lt;br /&gt;
#&lt;br /&gt;
#	add_header			Strict-Transport-Security max-age=15768000;&lt;br /&gt;
&lt;br /&gt;
	root				/srv/http/$host;&lt;br /&gt;
	index				index.html index.php;&lt;br /&gt;
&lt;br /&gt;
	add_header			Cache-Control &amp;quot;public&amp;quot;;&lt;br /&gt;
	add_header			X-Frame-Options &amp;quot;DENY&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	access_log			/var/log/nginx/access.log main buffer=32k;&lt;br /&gt;
	error_log			/var/log/nginx/error.log error;&lt;br /&gt;
	limit_req			zone=gulag burst=200 nodelay;&lt;br /&gt;
&lt;br /&gt;
	# ACME challenge&lt;br /&gt;
	location ^~ /.well-known {&lt;br /&gt;
		allow			all;&lt;br /&gt;
		alias			/var/lib/letsencrypt/$host/.well-known;&lt;br /&gt;
		default_type		&amp;quot;text/plain&amp;quot;;&lt;br /&gt;
		try_files		$uri =404;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	location / {&lt;br /&gt;
		proxy_pass		http://localhost:11334;&lt;br /&gt;
&lt;br /&gt;
		proxy_set_header	Upgrade $http_upgrade;&lt;br /&gt;
		proxy_set_header	Connection &amp;quot;upgrade&amp;quot;;&lt;br /&gt;
		proxy_set_header	X-Real-IP $remote_addr;&lt;br /&gt;
		proxy_set_header	X-Forwarded-For $proxy_add_x_forwarded_for;&lt;br /&gt;
		proxy_set_header	Host $http_host;&lt;br /&gt;
		proxy_set_header	X-NginX-Proxy true;&lt;br /&gt;
&lt;br /&gt;
		auth_basic		&amp;quot;Username and Password Required&amp;quot;;&lt;br /&gt;
		auth_basic_user_file	/etc/nginx/sites-enabled/htpasswd;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
= Basic Authorization =&lt;br /&gt;
&lt;br /&gt;
Some proxied sites have inadequate or no authentication method of their own.  Sometimes you may wish to provide an additional &amp;quot;bump in the road&amp;quot; for site access.  Nginx can use an {{ic|htpasswd}} file to control access.&lt;br /&gt;
&lt;br /&gt;
{{bc|sudo htpasswd -c /etc/nginx/sites-enabled/htpasswd &amp;lt;user&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
You will then be prompted for a password, and to confirm the password.  When finished, {{ic|htpasswd}} will create the file.&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/nginx/sites-enabled/htpasswd|2=&lt;br /&gt;
&amp;lt;username&amp;gt;:&amp;lt;password-hash&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{tip|To update the file with more users or new passwords, omit the {{ic|-c}} parameter.}}&lt;br /&gt;
&lt;br /&gt;
To use Basic Authentication with nginx, put these lines in the appropriate {{ic|server}} or {{ic|location}} stanzas:&lt;br /&gt;
&lt;br /&gt;
{{bc|&lt;br /&gt;
	auth_basic		&amp;quot;Restricted By Username and Password&amp;quot;;&lt;br /&gt;
	auth_basic_user_file	/etc/nginx/sites-enabled/htpasswd;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
= SSL Certificate Authorization =&lt;br /&gt;
&lt;br /&gt;
== Server Configuration ==&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/ssl/openssl.cnf|2=&lt;br /&gt;
[ CA_default ]&lt;br /&gt;
&lt;br /&gt;
dir		= /srv/ssl		# Where everything is kept&lt;br /&gt;
&lt;br /&gt;
certificate	= $dir/ca.cert		# The CA certificate&lt;br /&gt;
&lt;br /&gt;
private_key	= $dir/private/ca.key	# The private key&lt;br /&gt;
RNDFILE		= $dir/private/.rand	# The private random number file&lt;br /&gt;
&lt;br /&gt;
default_md	= sha1			# use public key default MD&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{bc|1=&amp;lt;nowiki&amp;gt;&lt;br /&gt;
sudo mkdir -p /etc/ssl/ca/{certs,crl,private}&lt;br /&gt;
sudo mkdir /etc/ssl/ca/ca/certs/users&lt;br /&gt;
sudo touch /etc/ssl/ca/index.txt&lt;br /&gt;
echo ’01’ | sudo tee /etc/ssl/ca/crlnumber&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
== Creating the Server Certificate ==&lt;br /&gt;
&lt;br /&gt;
{{bc|1=&lt;br /&gt;
sudo openssl genrsa -des3 -out /srv/ssl/ca/private/ca.key 4096&lt;br /&gt;
sudo openssl req -new -x509 -days 1095 -key /srv/ssl/ca/private/ca.key -out /etc/ssl/ca/certs/ca.crt&lt;br /&gt;
sudo openssl ca -name CA_default -gencrl -keyfile /srv/ssl/ca/private/ca.key -cert /srv/ssl/ca/certs/ca.crt -out /srv/ssl/ca/private/ca.crl -crldays 1095&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Creating User Certificates ==&lt;br /&gt;
&lt;br /&gt;
{{tip|The first two password prompts will be for the signing request.  The final one will be for the password for the certificate the user will import into their browser.}}&lt;br /&gt;
&lt;br /&gt;
{{bc|1=&lt;br /&gt;
sudo export USRCRTDR=&amp;quot;/srv/ssl/ca/certs/users&amp;quot;&lt;br /&gt;
sudo openssl genrsa -des3 -out ${USRCRTDR}/USERNAME.key 1024&lt;br /&gt;
sudo openssl req -new -key ${USRCRTDR}/USERNAME.key -out ${USRCRTDR}/USERNAME.csr&lt;br /&gt;
sudo openssl x509 -req -days 1095 -in ${USRCRTDR}/USERNAME.csr -CA /etc/ssl/ca/certs/ca.crt -CAkey /etc/ssl/ca/private/ca.key -CAserial /etc/ssl/ca/serial -CAcreateserial -out ${USRCRTDR}/USERNAME.crt&lt;br /&gt;
sudo openssl pkcs12 -export -clcerts -in ${USRCRTDR}/USERNAME.crt -inkey ${USRCRTDR}/USERNAME.key -out ${USRCRTDR}/USERNAME.p12&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{tip|You can put this into a script to make it easier to issue new certificates.}}&lt;br /&gt;
&lt;br /&gt;
== Revoking User Certificates ==&lt;br /&gt;
&lt;br /&gt;
{{bc|1=&lt;br /&gt;
sudo openssl ca -name CA_Default -revoke /etc/ssl/ca/certs/users/USERNAME.crt -keyfile /etc/ssl/ca/private/ca.key -cert /etc/ssl/ca/certs/ca.crt   &lt;br /&gt;
sudo openssl ca -name CA_Default -gencrl -keyfile /etc/ssl/ca/private/ca.key -cert /etc/ssl/ca/certs/ca.crt -out /etc/ssl/ca/private/ca.crl -crldays 1095&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Nginx Configuration ==&lt;br /&gt;
&lt;br /&gt;
If you want to use certificate authorization in nginx, add these lines to the appropriate {{ic|server}} stanzas:&lt;br /&gt;
&lt;br /&gt;
{{bc|&lt;br /&gt;
	ssl_client_certificate		/srv/ssl/certs/ca.crt;&lt;br /&gt;
	ssl_crl				/srv/ssl/private/ca.crl;&lt;br /&gt;
	ssl_verify_client		on;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
= Finalization =&lt;br /&gt;
&lt;br /&gt;
Enable your sites by using symlinks in {{ic|sites-enabled}} that point to the conf files in {{ic|sites-available}}&lt;br /&gt;
&lt;br /&gt;
{{bc|sudo ln -s ../sites-available/&amp;lt;domain&amp;gt;.conf /etc/nginx/sites-enabled/&amp;lt;domain&amp;gt;.conf}}&lt;br /&gt;
&lt;br /&gt;
Then make sure the {{ic|nginx}} service is enabled and running:&lt;br /&gt;
&lt;br /&gt;
{{bc|sudo systemctl enable --now nginx}}&lt;/div&gt;</summary>
		<author><name>BrainwreckedTech</name></author>
	</entry>
</feed>