<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://wiki.nerdmage.ca/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Bart</id>
	<title>Da Nerd Mage Wiki - User contributions [en-gb]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.nerdmage.ca/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Bart"/>
	<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php/Special:Contributions/Bart"/>
	<updated>2026-04-08T01:05:11Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.37.1</generator>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=A_Tarduino_example_done_properly&amp;diff=244</id>
		<title>A Tarduino example done properly</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=A_Tarduino_example_done_properly&amp;diff=244"/>
		<updated>2022-01-03T21:49:34Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Arduino programming language is a superset of C++.&lt;br /&gt;
&lt;br /&gt;
C++ is a superset of C.&lt;br /&gt;
&lt;br /&gt;
For some strange reason, the people who developed Arduino decided to eliminate a lot of the constraints of C &amp;amp; C++ that make the code maintainable.&lt;br /&gt;
&lt;br /&gt;
Luckily, you can program in C or C++ using proper techniques &amp;amp; compilers for Arduino will not choke on your code.&lt;br /&gt;
&lt;br /&gt;
= main.cpp =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;Arduino.h&amp;gt;  // Pretty much only here to giv us Serial Communications &amp;amp; delay()&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;FooBar.h&amp;quot;   // This header file lives in the src directory&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  // put your setup code here, to run once:&lt;br /&gt;
  Serial.begin(115200);&lt;br /&gt;
  Serial.println(&amp;quot;Howdee!&amp;quot;);&lt;br /&gt;
  Serial.println();&lt;br /&gt;
  delay(5000);   // What a silly way to rape a microcontroller...&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
  // put your main code here, to run repeatedly:&lt;br /&gt;
  Function1();&lt;br /&gt;
  delay(1000);   // UGH...&lt;br /&gt;
  Function2();&lt;br /&gt;
  delay(1000);   // UGH...&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Let&amp;#039;s not discuss the horror that is &amp;lt;code class=&amp;quot;mwt-code&amp;quot; &amp;gt;delay()&amp;lt;/code&amp;gt; for now. Maybe in another article...)&lt;br /&gt;
&lt;br /&gt;
= FooBar.h =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
void Function1();&lt;br /&gt;
&lt;br /&gt;
void Function2();&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Function1.cpp =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;Arduino.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
void Function1()&lt;br /&gt;
{&lt;br /&gt;
    Serial.println(&amp;quot;Hi Grant!&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Function2.cpp =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;Arduino.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
void Function2()&lt;br /&gt;
{&lt;br /&gt;
    Serial.println(&amp;quot;I&amp;#039;m a microcontroller...&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=platformio.ini=&lt;br /&gt;
&lt;br /&gt;
(Coz I have this preference in IDEs...)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;ini&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
[env:uno]&lt;br /&gt;
platform = atmelavr&lt;br /&gt;
board = uno&lt;br /&gt;
framework = arduino&lt;br /&gt;
monitor_speed = 115200&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Coding]]&lt;br /&gt;
[[Category:Arduino]]&lt;br /&gt;
[[Category:C Cpp]]&lt;br /&gt;
[[Category:PlatformIO]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=A_Tarduino_example_done_properly&amp;diff=242</id>
		<title>A Tarduino example done properly</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=A_Tarduino_example_done_properly&amp;diff=242"/>
		<updated>2022-01-03T21:42:52Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Arduino programming language is a superset of C++.&lt;br /&gt;
&lt;br /&gt;
C++ is a superset of C.&lt;br /&gt;
&lt;br /&gt;
For some strange reason, the people who developed Arduino decided to eliminate a lot of the constraints of C &amp;amp; C++ that make the code maintainable.&lt;br /&gt;
&lt;br /&gt;
Luckily, you can program in C or C++ using proper techniques &amp;amp; compilers for Arduino will not choke on your code.&lt;br /&gt;
&lt;br /&gt;
= main.cpp =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;Arduino.h&amp;gt;  // Pretty much only here to giv us Serial Communications &amp;amp; delay()&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;FooBar.h&amp;quot;   // This header file lives in the src directory&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  // put your setup code here, to run once:&lt;br /&gt;
  Serial.begin(115200);&lt;br /&gt;
  Serial.println(&amp;quot;Howdee!&amp;quot;);&lt;br /&gt;
  Serial.println();&lt;br /&gt;
  delay(5000);   // What a silly way to rape a microcontroller...&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
  // put your main code here, to run repeatedly:&lt;br /&gt;
  Function1();&lt;br /&gt;
  delay(1000);   // UGH...&lt;br /&gt;
  Function2();&lt;br /&gt;
  delay(1000);   // UGH...&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Let&amp;#039;s not discuss the horror that is &amp;lt;code class=&amp;quot;mwt-code&amp;quot; &amp;gt;delay()&amp;lt;/code&amp;gt; for now. Maybe in another article...)&lt;br /&gt;
&lt;br /&gt;
= FooBar.h =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
void Function1();&lt;br /&gt;
&lt;br /&gt;
void Function2();&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Function1.cpp =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;Arduino.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
void Function1()&lt;br /&gt;
{&lt;br /&gt;
    Serial.println(&amp;quot;Hi Grant!&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Function2.cpp =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;Arduino.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
void Function2()&lt;br /&gt;
{&lt;br /&gt;
    Serial.println(&amp;quot;I&amp;#039;m a microcontroller...&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=platformio.ini=&lt;br /&gt;
&lt;br /&gt;
(Coz I have this preference in IDEs...)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;ini&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
[env:uno]&lt;br /&gt;
platform = atmelavr&lt;br /&gt;
board = uno&lt;br /&gt;
framework = arduino&lt;br /&gt;
monitor_speed = 115200&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Arduino]]&lt;br /&gt;
[[Category:C Cpp]]&lt;br /&gt;
[[Category:PlatformIO]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=A_Tarduino_example_done_properly&amp;diff=240</id>
		<title>A Tarduino example done properly</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=A_Tarduino_example_done_properly&amp;diff=240"/>
		<updated>2022-01-03T21:17:46Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Arduino programming language is a superset of C++.&lt;br /&gt;
&lt;br /&gt;
C++ is a superset of C.&lt;br /&gt;
&lt;br /&gt;
For some strange reason, the people who developed Arduino decided to eliminate a lot of the constraints of C &amp;amp; C++ that make the code maintainable.&lt;br /&gt;
&lt;br /&gt;
Luckily, you can program in C or C++ using proper techniques &amp;amp; compilers for Arduino will not choke on your code.&lt;br /&gt;
&lt;br /&gt;
= main.cpp =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;Arduino.h&amp;gt;  // Pretty much only here to giv us Serial Communications &amp;amp; delay()&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;FooBar.h&amp;quot;   // This header file lives in the src directory&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  // put your setup code here, to run once:&lt;br /&gt;
  Serial.begin(115200);&lt;br /&gt;
  Serial.println(&amp;quot;Howdee!&amp;quot;);&lt;br /&gt;
  Serial.println();&lt;br /&gt;
  delay(5000);   // What a silly way to rape a microcontroller...&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
  // put your main code here, to run repeatedly:&lt;br /&gt;
  Function1();&lt;br /&gt;
  delay(1000);   // UGH...&lt;br /&gt;
  Function2();&lt;br /&gt;
  delay(1000);   // UGH...&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Let&amp;#039;s not discuss the horror that is &amp;lt;code class=&amp;quot;mwt-code&amp;quot; &amp;gt;delay()&amp;lt;/code&amp;gt; for now. Maybe in another article...)&lt;br /&gt;
&lt;br /&gt;
= FooBar.h =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
void Function1();&lt;br /&gt;
&lt;br /&gt;
void Function2();&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Function1.cpp =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;Arduino.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
void Function1()&lt;br /&gt;
{&lt;br /&gt;
    Serial.println(&amp;quot;Hi Grant!&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Function2.cpp =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;Arduino.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
void Function2()&lt;br /&gt;
{&lt;br /&gt;
    Serial.println(&amp;quot;I&amp;#039;m a microcontroller...&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=platformio.ini=&lt;br /&gt;
&lt;br /&gt;
(Coz I have this preference in IDEs...)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;ini&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
[env:uno]&lt;br /&gt;
platform = atmelavr&lt;br /&gt;
board = uno&lt;br /&gt;
framework = arduino&lt;br /&gt;
monitor_speed = 115200&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Coding]]&lt;br /&gt;
[[Category:Arduino]]&lt;br /&gt;
[[Category:C Cpp]]&lt;br /&gt;
[[Category:PlatformIO]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=How_internet_addressing_really_works&amp;diff=238</id>
		<title>How internet addressing really works</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=How_internet_addressing_really_works&amp;diff=238"/>
		<updated>2022-01-03T21:14:31Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;(This is a very rough draft...)&lt;br /&gt;
&lt;br /&gt;
There&amp;#039;re 2 ways to get to a machine.&lt;br /&gt;
&lt;br /&gt;
IP address &amp;amp; name.&lt;br /&gt;
&lt;br /&gt;
But to use name, you need to have DNS set up.&lt;br /&gt;
&lt;br /&gt;
Either way, there&amp;#039;s also the port.&lt;br /&gt;
&lt;br /&gt;
The port is specific to the actual service on the machine.&lt;br /&gt;
&lt;br /&gt;
i.e.: port 80 is HTTP, port 443 is HTTPS, port 22 is SSH...&lt;br /&gt;
&lt;br /&gt;
When your entire network is on a single address as far as the outside world is concerned, you have a couple options to access individual machines.&lt;br /&gt;
&lt;br /&gt;
== Port Forwarding ==&lt;br /&gt;
&lt;br /&gt;
You can forward specific ports to specific machines (probably with a bit of fiddling in Firewall/NAT on your pfSense box...) or you can set up proxies.&lt;br /&gt;
&lt;br /&gt;
Port forwarding is pretty straightforward, but you need to remember how you&amp;#039;ve set up the ports.&lt;br /&gt;
&lt;br /&gt;
A good example of how this can work is my general habit of forwarding a port outside the range of [https://www.webopedia.com/quick_ref/portnumbers.asp Well-Known TCP Ports] to SSH on any of my internal machines that I may want to access while away from my own network.&lt;br /&gt;
&lt;br /&gt;
As an example, I have a machine on my network at 192.168.0.99 (Not an address accessible to the outside world) &amp;amp; I&amp;#039;d like access to it while away.  I go into Firewall/NAT on my pfSense box &amp;amp; forward port 52099 to this address &amp;amp; translate the port number to 22 (SSH).  This gives me the ability to SSH into the machine pretty much anywhere I may be as long as I have internet access.&lt;br /&gt;
&lt;br /&gt;
You can do the same for any service.  You could port 52080 to an internal machine at port 80 (http), but you&amp;#039;ll have to remember to add &amp;lt;code&amp;gt;:52080&amp;lt;/code&amp;gt; to the machine name or IP address when accessing it from outside. (i.e.: &amp;lt;code&amp;gt;http://my.domain.net:52080/&amp;lt;/code&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
== Proxies ==&lt;br /&gt;
&lt;br /&gt;
Generally, when speaking of proxies, we&amp;#039;re talking about web browser access.&lt;br /&gt;
&lt;br /&gt;
(Not always tho...  But that&amp;#039;s a deeper discussion.)&lt;br /&gt;
&lt;br /&gt;
Web proxies are handled by your main web server.  Take a look at [[SBN - Proxy Server Notes|Proxy Server Notes]] for some useful details on how this works.&lt;br /&gt;
&lt;br /&gt;
[[Category:Network Management]]&lt;br /&gt;
[[Category:Knowledge]]&lt;br /&gt;
[[Category:WIP]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=SSL_Certs&amp;diff=237</id>
		<title>SSL Certs</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=SSL_Certs&amp;diff=237"/>
		<updated>2022-01-03T20:59:22Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== On an Apache based server ==&lt;br /&gt;
From /usr/share/doc/apache2/README.Debian.gz&lt;br /&gt;
&lt;br /&gt;
=== Enabling SSL ===&lt;br /&gt;
To enable SSL, type:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo a2ensite default-ssl&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo a2enmod ssl&amp;lt;/code&amp;gt;&lt;br /&gt;
If you want to use self-signed certificates, you should install the ssl-cert&amp;lt;br&amp;gt;package (see below). Otherwise, just adjust the SSLCertificateKeyFile and SSLCertificateFile directives in &amp;#039;/etc/apache2/sites-available/default-ssl.conf&amp;#039; to point to your SSL certificate. Then restart apache:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo systemctl restart apache2&amp;lt;/code&amp;gt;&lt;br /&gt;
The SSL key file should only be readable by root; the certificate file may be globally readable. These files are read by the Apache parent process which runs as root, and it is therefore not necessary to make the files readable by the www-data user.&lt;br /&gt;
&lt;br /&gt;
==== Getting proper certificates onto the machine ====&lt;br /&gt;
Sadly...&lt;br /&gt;
&lt;br /&gt;
Between the time I wrote this up on the [https://wiki.tinkernet.ca/ TinkerNet Wiki] and now, [https://letsencrypt.org/ Let&amp;#039;s Encrypt] has drastically changed things and [https://certbot.eff.org/ certbot] is now only supported if you want to deal with snapd...&lt;br /&gt;
&lt;br /&gt;
Give me time &amp;amp; I&amp;#039;ll work out new instructions.&lt;br /&gt;
&lt;br /&gt;
For now...&amp;amp;nbsp; The old version is still on [[TinkerWiki:NetMan - SSL Certs#Getting proper certificates onto the machine{{!}}the TinkerNet Wiki]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Network Management]]&lt;br /&gt;
[[Category:WebServers]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=IT_Stuff&amp;diff=236</id>
		<title>IT Stuff</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=IT_Stuff&amp;diff=236"/>
		<updated>2022-01-03T20:58:44Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Network Management =&lt;br /&gt;
&lt;br /&gt;
*[[pfSense{{!}}pfSense]]&lt;br /&gt;
*[[Dynamic DNS{{!}}Dynamic DNS]]&lt;br /&gt;
*[[SSL Certs{{!}}SSL Certs]]&lt;br /&gt;
*[[NetMan - VPN{{!}}VPN]]&lt;br /&gt;
*[[nmap{{!}}nmap]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=NetMan_-_SSL_Certs&amp;diff=235</id>
		<title>NetMan - SSL Certs</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=NetMan_-_SSL_Certs&amp;diff=235"/>
		<updated>2022-01-03T20:58:14Z</updated>

		<summary type="html">&lt;p&gt;Bart: Bart moved page NetMan - SSL Certs to SSL Certs: Cleanup&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[SSL Certs]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=SSL_Certs&amp;diff=234</id>
		<title>SSL Certs</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=SSL_Certs&amp;diff=234"/>
		<updated>2022-01-03T20:58:14Z</updated>

		<summary type="html">&lt;p&gt;Bart: Bart moved page NetMan - SSL Certs to SSL Certs: Cleanup&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== On an Apache based server ==&lt;br /&gt;
From /usr/share/doc/apache2/README.Debian.gz&lt;br /&gt;
&lt;br /&gt;
=== Enabling SSL ===&lt;br /&gt;
To enable SSL, type:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo a2ensite default-ssl&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo a2enmod ssl&amp;lt;/code&amp;gt;&lt;br /&gt;
If you want to use self-signed certificates, you should install the ssl-cert&amp;lt;br&amp;gt;package (see below). Otherwise, just adjust the SSLCertificateKeyFile and SSLCertificateFile directives in &amp;#039;/etc/apache2/sites-available/default-ssl.conf&amp;#039; to point to your SSL certificate. Then restart apache:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo systemctl restart apache2&amp;lt;/code&amp;gt;&lt;br /&gt;
The SSL key file should only be readable by root; the certificate file may be globally readable. These files are read by the Apache parent process which runs as root, and it is therefore not necessary to make the files readable by the www-data user.&lt;br /&gt;
&lt;br /&gt;
==== Getting proper certificates onto the machine ====&lt;br /&gt;
Sadly...&lt;br /&gt;
&lt;br /&gt;
Between the time I wrote this up on the [https://wiki.tinkernet.ca/ TinkerNet Wiki] and now, [https://letsencrypt.org/ Let&amp;#039;s Encrypt] has drastically changed things and [https://certbot.eff.org/ certbot] is now only supported if you want to deal with snapd...&lt;br /&gt;
&lt;br /&gt;
Give me time &amp;amp; I&amp;#039;ll work out new instructions.&lt;br /&gt;
&lt;br /&gt;
For now...&amp;amp;nbsp; The old version is still on [[TinkerWiki:NetMan - SSL Certs#Getting proper certificates onto the machine{{!}}the TinkerNet Wiki]].&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=Nmap&amp;diff=233</id>
		<title>Nmap</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=Nmap&amp;diff=233"/>
		<updated>2022-01-03T20:57:00Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;*[https://nmap.org/book/man.html Nmap Reference Guide]&lt;br /&gt;
&lt;br /&gt;
== Some useful nmap scans ==&lt;br /&gt;
&lt;br /&gt;
=== Using nmap to inventory a network ===&lt;br /&gt;
The following command with &amp;#039;&amp;#039;nmap&amp;#039;&amp;#039; with &amp;#039;&amp;#039;root&amp;#039;&amp;#039; privilegies (or using &amp;#039;&amp;#039;sudo&amp;#039;&amp;#039;):&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo nmap -n -sP 192.168.0.0/24 {{!}} awk &amp;#039;/Nmap scan report/{printf $5;printf &amp;quot;\t&amp;quot;;printf $6;printf &amp;quot;\t&amp;quot;;getline;getline;print $3;}&amp;#039; {{!}} awk &amp;#039;{printf $2;printf &amp;quot; ---&amp;amp;gt; &amp;quot;;printf $1;printf &amp;quot;\n&amp;quot;;}&amp;#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
results in:&lt;br /&gt;
&lt;br /&gt;
 00:10:18:5D:B0:10 ---&amp;amp;gt; 192.168.0.1&lt;br /&gt;
 28:C6:8E:F9:B8:BF ---&amp;amp;gt; 192.168.0.2&lt;br /&gt;
 28:C6:8E:29:9D:30 ---&amp;amp;gt; 192.168.0.3&lt;br /&gt;
 ...&lt;br /&gt;
(Good luck typing that in by hand...)&lt;br /&gt;
&lt;br /&gt;
Want DNS?:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo nmap -sP 192.168.0.0/24 {{!}} awk &amp;#039;/Nmap scan report/{printf $5;printf &amp;quot;\t&amp;quot;;printf $6;printf &amp;quot;\t&amp;quot;;getline;getline;print $3;}&amp;#039; {{!}} awk &amp;#039;{printf $3;printf &amp;quot; ---&amp;amp;gt; &amp;quot;;printf $1;printf &amp;quot;\n&amp;quot;;}&amp;#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
results in:&lt;br /&gt;
&lt;br /&gt;
 00:10:18:5D:B0:10 ---&amp;amp;gt; zathras.tinkernow.net&lt;br /&gt;
 28:C6:8E:F9:B8:BF ---&amp;amp;gt; switcha.tinkernow.net&lt;br /&gt;
 28:C6:8E:29:9D:30 ---&amp;amp;gt; wap1.tinkernow.net&lt;br /&gt;
 ...&lt;br /&gt;
or both name &amp;amp; address?:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo nmap -sP 192.168.0.0/24 {{!}} awk &amp;#039;/Nmap scan report/{printf $5;printf &amp;quot;\t&amp;quot;;printf $6;printf &amp;quot;\t&amp;quot;;getline;getline;print $3;}&amp;#039; {{!}} awk &amp;#039;{printf $3;printf &amp;quot; ---&amp;amp;gt; &amp;quot;;printf $2;printf &amp;quot;\t&amp;quot;;printf $1;printf &amp;quot;\n&amp;quot;;}&amp;#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
results in:&lt;br /&gt;
&lt;br /&gt;
 00:10:18:5D:B0:10 ---&amp;amp;gt; (192.168.0.1)	zathras.tinkernow.net&lt;br /&gt;
 28:C6:8E:F9:B8:BF ---&amp;amp;gt; (192.168.0.2)	switcha.tinkernow.net&lt;br /&gt;
 28:C6:8E:29:9D:30 ---&amp;amp;gt; (192.168.0.3)	wap1.tinkernow.net&lt;br /&gt;
 ...&lt;br /&gt;
But, for some reason, lack of a name causes odd formatting. And, nmap seems to fail to give the mac address of the machine doing the scan.&lt;br /&gt;
&lt;br /&gt;
[[Category:Network Management]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=NetMan_-_nmap&amp;diff=232</id>
		<title>NetMan - nmap</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=NetMan_-_nmap&amp;diff=232"/>
		<updated>2022-01-03T20:56:32Z</updated>

		<summary type="html">&lt;p&gt;Bart: Bart moved page NetMan - nmap to Nmap&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Nmap]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=Nmap&amp;diff=231</id>
		<title>Nmap</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=Nmap&amp;diff=231"/>
		<updated>2022-01-03T20:56:32Z</updated>

		<summary type="html">&lt;p&gt;Bart: Bart moved page NetMan - nmap to Nmap&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;*[https://nmap.org/book/man.html Nmap Reference Guide]&lt;br /&gt;
&lt;br /&gt;
== Some useful nmap scans ==&lt;br /&gt;
&lt;br /&gt;
=== Using nmap to inventory a network ===&lt;br /&gt;
The following command with &amp;#039;&amp;#039;nmap&amp;#039;&amp;#039; with &amp;#039;&amp;#039;root&amp;#039;&amp;#039; privilegies (or using &amp;#039;&amp;#039;sudo&amp;#039;&amp;#039;):&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo nmap -n -sP 192.168.0.0/24 {{!}} awk &amp;#039;/Nmap scan report/{printf $5;printf &amp;quot;\t&amp;quot;;printf $6;printf &amp;quot;\t&amp;quot;;getline;getline;print $3;}&amp;#039; {{!}} awk &amp;#039;{printf $2;printf &amp;quot; ---&amp;amp;gt; &amp;quot;;printf $1;printf &amp;quot;\n&amp;quot;;}&amp;#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
results in:&lt;br /&gt;
&lt;br /&gt;
 00:10:18:5D:B0:10 ---&amp;amp;gt; 192.168.0.1&lt;br /&gt;
 28:C6:8E:F9:B8:BF ---&amp;amp;gt; 192.168.0.2&lt;br /&gt;
 28:C6:8E:29:9D:30 ---&amp;amp;gt; 192.168.0.3&lt;br /&gt;
 ...&lt;br /&gt;
(Good luck typing that in by hand...)&lt;br /&gt;
&lt;br /&gt;
Want DNS?:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo nmap -sP 192.168.0.0/24 {{!}} awk &amp;#039;/Nmap scan report/{printf $5;printf &amp;quot;\t&amp;quot;;printf $6;printf &amp;quot;\t&amp;quot;;getline;getline;print $3;}&amp;#039; {{!}} awk &amp;#039;{printf $3;printf &amp;quot; ---&amp;amp;gt; &amp;quot;;printf $1;printf &amp;quot;\n&amp;quot;;}&amp;#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
results in:&lt;br /&gt;
&lt;br /&gt;
 00:10:18:5D:B0:10 ---&amp;amp;gt; zathras.tinkernow.net&lt;br /&gt;
 28:C6:8E:F9:B8:BF ---&amp;amp;gt; switcha.tinkernow.net&lt;br /&gt;
 28:C6:8E:29:9D:30 ---&amp;amp;gt; wap1.tinkernow.net&lt;br /&gt;
 ...&lt;br /&gt;
or both name &amp;amp; address?:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo nmap -sP 192.168.0.0/24 {{!}} awk &amp;#039;/Nmap scan report/{printf $5;printf &amp;quot;\t&amp;quot;;printf $6;printf &amp;quot;\t&amp;quot;;getline;getline;print $3;}&amp;#039; {{!}} awk &amp;#039;{printf $3;printf &amp;quot; ---&amp;amp;gt; &amp;quot;;printf $2;printf &amp;quot;\t&amp;quot;;printf $1;printf &amp;quot;\n&amp;quot;;}&amp;#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
results in:&lt;br /&gt;
&lt;br /&gt;
 00:10:18:5D:B0:10 ---&amp;amp;gt; (192.168.0.1)	zathras.tinkernow.net&lt;br /&gt;
 28:C6:8E:F9:B8:BF ---&amp;amp;gt; (192.168.0.2)	switcha.tinkernow.net&lt;br /&gt;
 28:C6:8E:29:9D:30 ---&amp;amp;gt; (192.168.0.3)	wap1.tinkernow.net&lt;br /&gt;
 ...&lt;br /&gt;
But, for some reason, lack of a name causes odd formatting. And, nmap seems to fail to give the mac address of the machine doing the scan.&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=IT_Stuff&amp;diff=230</id>
		<title>IT Stuff</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=IT_Stuff&amp;diff=230"/>
		<updated>2022-01-03T20:56:20Z</updated>

		<summary type="html">&lt;p&gt;Bart: /* Network Management */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Network Management =&lt;br /&gt;
&lt;br /&gt;
*[[pfSense{{!}}pfSense]]&lt;br /&gt;
*[[Dynamic DNS{{!}}Dynamic DNS]]&lt;br /&gt;
*[[NetMan - SSL Certs{{!}}SSL Certs]]&lt;br /&gt;
*[[NetMan - VPN{{!}}VPN]]&lt;br /&gt;
*[[nmap{{!}}nmap]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=Dynamic_DNS&amp;diff=229</id>
		<title>Dynamic DNS</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=Dynamic_DNS&amp;diff=229"/>
		<updated>2022-01-03T20:54:45Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Using [http://afraid.org afraid.org] for dynamic DNS. =&lt;br /&gt;
== Dynamic DNS &amp;amp; pfSense ==&lt;br /&gt;
&lt;br /&gt;
Configuring pfSense to use it properly seems to be a mystery to the internet at large as the findable instructions are always wrong.&lt;br /&gt;
&lt;br /&gt;
Here goes a (hopefully) clear attempt:&lt;br /&gt;
&lt;br /&gt;
#Go to afraid.org &amp;amp; register&lt;br /&gt;
#Pick &amp;amp; register a subdomain&lt;br /&gt;
#go here: http://freedns.afraid.org/dynamic/&lt;br /&gt;
#right-click the &amp;quot;Direct URL&amp;quot; button next to the subdomain you&amp;#039;re going to use &amp;amp; &amp;#039;&amp;#039;&amp;#039;Copy link address&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
#Paste the URL into a text editor &amp;amp; remove everything up and including &amp;#039;&amp;#039;&amp;#039;&amp;quot;/update.php?&amp;quot;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
#*What&amp;#039;s left will be your &amp;quot;password&amp;quot; to be entered into pfSense&lt;br /&gt;
#Log into your pfSense server &amp;amp; select Services / Dynamic DNS&lt;br /&gt;
#click the ADD button&lt;br /&gt;
#In the &amp;quot;Service Type&amp;quot; box, select &amp;quot;freeDNS&amp;quot;&lt;br /&gt;
#check that &amp;quot;Interface to monitor&amp;quot; is &amp;quot;WAN&amp;quot;&lt;br /&gt;
#enter the subdomain you chose at afraid.org in the &amp;quot;Hostname&amp;quot; box&lt;br /&gt;
#*i.e.:&amp;amp;nbsp; &amp;quot;tinker.farted.net&amp;quot;&lt;br /&gt;
#Empty the &amp;quot;Username&amp;quot; box&lt;br /&gt;
#Paste the &amp;quot;password&amp;quot; created in step 5 above in the &amp;quot;Password&amp;quot; box&lt;br /&gt;
#Paste the &amp;quot;password&amp;quot; created in step 5 above in the &amp;quot;Confirm&amp;quot; box&lt;br /&gt;
#Type in a description if you like&lt;br /&gt;
#Click &amp;quot;Save&amp;quot;&lt;br /&gt;
#Enjoy&lt;br /&gt;
&lt;br /&gt;
[[Category:Network Management]]&lt;br /&gt;
[[Category:pfSense]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=IT_Stuff&amp;diff=228</id>
		<title>IT Stuff</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=IT_Stuff&amp;diff=228"/>
		<updated>2022-01-03T20:53:39Z</updated>

		<summary type="html">&lt;p&gt;Bart: /* Network Management */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Network Management =&lt;br /&gt;
&lt;br /&gt;
*[[pfSense{{!}}pfSense]]&lt;br /&gt;
*[[Dynamic DNS{{!}}Dynamic DNS]]&lt;br /&gt;
*[[NetMan - SSL Certs{{!}}SSL Certs]]&lt;br /&gt;
*[[NetMan - VPN{{!}}VPN]]&lt;br /&gt;
*[[NetMan - nmap{{!}}nmap]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=NetMan_-_Dynamic_DNS&amp;diff=227</id>
		<title>NetMan - Dynamic DNS</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=NetMan_-_Dynamic_DNS&amp;diff=227"/>
		<updated>2022-01-03T20:53:10Z</updated>

		<summary type="html">&lt;p&gt;Bart: Bart moved page NetMan - Dynamic DNS to Dynamic DNS: Cleanup&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Dynamic DNS]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=Dynamic_DNS&amp;diff=226</id>
		<title>Dynamic DNS</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=Dynamic_DNS&amp;diff=226"/>
		<updated>2022-01-03T20:53:10Z</updated>

		<summary type="html">&lt;p&gt;Bart: Bart moved page NetMan - Dynamic DNS to Dynamic DNS: Cleanup&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Using [http://afraid.org afraid.org] for dynamic DNS. =&lt;br /&gt;
== Dynamic DNS &amp;amp; pfSense ==&lt;br /&gt;
&lt;br /&gt;
Configuring pfSense to use it properly seems to be a mystery to the internet at large as the findable instructions are always wrong.&lt;br /&gt;
&lt;br /&gt;
Here goes a (hopefully) clear attempt:&lt;br /&gt;
&lt;br /&gt;
#Go to afraid.org &amp;amp; register&lt;br /&gt;
#Pick &amp;amp; register a subdomain&lt;br /&gt;
#go here: http://freedns.afraid.org/dynamic/&lt;br /&gt;
#right-click the &amp;quot;Direct URL&amp;quot; button next to the subdomain you&amp;#039;re going to use &amp;amp; &amp;#039;&amp;#039;&amp;#039;Copy link address&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
#Paste the URL into a text editor &amp;amp; remove everything up and including &amp;#039;&amp;#039;&amp;#039;&amp;quot;/update.php?&amp;quot;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
#*What&amp;#039;s left will be your &amp;quot;password&amp;quot; to be entered into pfSense&lt;br /&gt;
#Log into your pfSense server &amp;amp; select Services / Dynamic DNS&lt;br /&gt;
#click the ADD button&lt;br /&gt;
#In the &amp;quot;Service Type&amp;quot; box, select &amp;quot;freeDNS&amp;quot;&lt;br /&gt;
#check that &amp;quot;Interface to monitor&amp;quot; is &amp;quot;WAN&amp;quot;&lt;br /&gt;
#enter the subdomain you chose at afraid.org in the &amp;quot;Hostname&amp;quot; box&lt;br /&gt;
#*i.e.:&amp;amp;nbsp; &amp;quot;tinker.farted.net&amp;quot;&lt;br /&gt;
#Empty the &amp;quot;Username&amp;quot; box&lt;br /&gt;
#Paste the &amp;quot;password&amp;quot; created in step 5 above in the &amp;quot;Password&amp;quot; box&lt;br /&gt;
#Paste the &amp;quot;password&amp;quot; created in step 5 above in the &amp;quot;Confirm&amp;quot; box&lt;br /&gt;
#Type in a description if you like&lt;br /&gt;
#Click &amp;quot;Save&amp;quot;&lt;br /&gt;
#Enjoy&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=PfSense&amp;diff=225</id>
		<title>PfSense</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=PfSense&amp;diff=225"/>
		<updated>2022-01-03T20:52:22Z</updated>

		<summary type="html">&lt;p&gt;Bart: /* All the fancy stuff */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Download pfSense =&lt;br /&gt;
[https://www.pfsense.org/ Where to get it]&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot from 2020-06-08 14-31-42.png{{!}}256px{{!}}Screenshot from 2020-06-08 14-31-42.png{{!}}alt=&amp;quot;Aaarrrggg!&amp;quot;{{!}}right]]&lt;br /&gt;
&lt;br /&gt;
See that nifty screencap over there on the right?&lt;br /&gt;
&lt;br /&gt;
Look at it again.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;&amp;lt;big&amp;gt;It&amp;#039;s important...&amp;lt;br&amp;gt;&amp;lt;/big&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
== Stuff it onto a thumbdrive ==&lt;br /&gt;
&lt;br /&gt;
(really should create command-line instructions for this part)&lt;br /&gt;
&lt;br /&gt;
If working from a Linux Mint machine GUI, right-click &amp;amp; extract the .gz file. Then right-click the resulting .img file &amp;amp; select &amp;quot;Make bootable USB stick&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
If working from one of those crappy Windows machines, use Rufus...&lt;br /&gt;
&lt;br /&gt;
If you&amp;#039;re playing with a Mac... Yer on yer own for now.&lt;br /&gt;
&lt;br /&gt;
= Configure the Hardware =&lt;br /&gt;
&lt;br /&gt;
You&amp;#039;ll want either a dual NIC or 2 (or more...) NICs.&lt;br /&gt;
&lt;br /&gt;
A hard drive (or SSD) could come in rather handy...&lt;br /&gt;
&lt;br /&gt;
= Install pfSense =&lt;br /&gt;
&lt;br /&gt;
*Boot your machine from the thumbdrive. (UEFI is just fine...)&lt;br /&gt;
*Accept the copyright.&lt;br /&gt;
*Select &amp;quot;Install&amp;quot;&lt;br /&gt;
*Select &amp;quot;Continue with default keymap&amp;quot; (or, really, any keymap you like...)&lt;br /&gt;
*Select &amp;quot;Auto (UFS)&lt;br /&gt;
*Choose your disk for the install&lt;br /&gt;
**I&amp;#039;d suggest only having one disk in the machine...&lt;br /&gt;
*Select &amp;quot;Entire Disk&lt;br /&gt;
**Yes... Proceed.&lt;br /&gt;
*Select GPT (GUID Partition Table)&lt;br /&gt;
*Hit &amp;quot;Finish&amp;quot;&lt;br /&gt;
*Hit &amp;quot;Commit&amp;quot;&lt;br /&gt;
*Watch the pretty progress screens... (Or ignore it until it&amp;#039;s done... Your choice...)&lt;br /&gt;
*When you see the &amp;quot;Manual Configuration&amp;quot; screen, Hit &amp;quot;No&amp;quot;&lt;br /&gt;
*Hit &amp;quot;Reboot&amp;quot;&lt;br /&gt;
*Go back &amp;amp; configure the machine to actually boot from the drive you installed pfSense onto...&lt;br /&gt;
&lt;br /&gt;
= Initial Configuration of pfSense =&lt;br /&gt;
&lt;br /&gt;
On first boot, pfSense will ask &amp;quot;Should VLANs be set up now [y{{!}}n]?&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Don&amp;#039;t bother...&lt;br /&gt;
&lt;br /&gt;
*Select your WAN interface&lt;br /&gt;
**bce0 on this test machine (T310)&lt;br /&gt;
*Select your LAN interface&lt;br /&gt;
**bce1 on this test machine (T310)&lt;br /&gt;
*Verify they&amp;#039;re selected properly &amp;amp; say yes.&lt;br /&gt;
*Watch all the &amp;quot;done&amp;quot; messages scroll by (or not... again, your choice...)&lt;br /&gt;
After a moment or 3, you&amp;#039;ll see the console menu.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
*** Welcome to pfSense 2.4.5-RELEASE (amd64) on pfSense ***&lt;br /&gt;
  WAN (wan)       -&amp;amp;gt; bce0       -&amp;amp;gt; v4/DHCP4: 192.168.0.26/24&lt;br /&gt;
  LAN (lan)       -&amp;amp;gt; bce1       -&amp;amp;gt; v4: 192.168.1.1/24&lt;br /&gt;
 &lt;br /&gt;
  0) Logout (SSH only)                  9) pfTop&lt;br /&gt;
  1) Assign Interfaces                 10) Filter Logs&lt;br /&gt;
  2) Set interface(s) IP address       11) Restart webConfigurator&lt;br /&gt;
  3) Reset webConfigurator password    12) PHP shell + pfSense tools&lt;br /&gt;
  4) Reset to factory defaults         13) Update from console&lt;br /&gt;
  5) Reboot system                     14) Enable Secure Shell (sshd)&lt;br /&gt;
  6) Halt system                       15) Restore recent configuration&lt;br /&gt;
  7) Ping Host                         16) Restart PHP-FPM&lt;br /&gt;
  8) Shell&lt;br /&gt;
 &lt;br /&gt;
 Enter an option:&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;It&amp;#039;s ALIVE!!!&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
= Configuring pfSense from here... =&lt;br /&gt;
At this point, you should be able to connect to the LAN port &amp;amp; point a web browser at 192.168.1.1&lt;br /&gt;
&lt;br /&gt;
This is the Web-UI...&lt;br /&gt;
&lt;br /&gt;
Default login is:&lt;br /&gt;
&lt;br /&gt;
*Username: admin&lt;br /&gt;
*Password: pfsense&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;&amp;lt;span style=&amp;quot;font-size: 18pt;&amp;quot; &amp;gt;Change this. Do it NOW!&amp;lt;/span&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
If you have the WAN port connected to the Internet, you should actually be capable of accessing the outside world right now.&lt;br /&gt;
&lt;br /&gt;
[[pfSense - Menu Structure{{!}}Menu Structure]]&lt;br /&gt;
&lt;br /&gt;
=== All the fancy stuff ===&lt;br /&gt;
(Coming soon&amp;lt;sup&amp;gt;TM&amp;lt;/sup&amp;gt;... Promise&amp;lt;sup&amp;gt;TM&amp;lt;/sup&amp;gt;...)&lt;br /&gt;
&lt;br /&gt;
*[[Dynamic DNS{{!}}Configuring Dynamic DNS]]&lt;br /&gt;
*[[PfSense - Managing DHCP{{!}}Managing DHCP]]&lt;br /&gt;
*[[PfSense - Managing NAT on the firewall{{!}}Managing NAT on the firewall]]&lt;br /&gt;
*[[PfSense - Multi-Wan Configuration{{!}}Multi-Wan Configuration]]&lt;br /&gt;
*[[PfSense - Private VPN{{!}}Private VPN]]&lt;br /&gt;
*[[PfSense - Crap-Stopping with pfBlockerNG{{!}}Crap-Stopping with pfBlockerNG]]&lt;br /&gt;
*[[PfSense - Etc...{{!}}etc...]]&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting &amp;amp; Repair =&lt;br /&gt;
&lt;br /&gt;
== Clearing the DNS Forwarder Cache ==&lt;br /&gt;
[https://docs.netgate.com/pfsense/en/latest/dns/clearing-the-dns-forwarder-cache.html Source]&lt;br /&gt;
&lt;br /&gt;
To clear the DNS Forwarder cache, restart the dnsmasq daemon as follows:&lt;br /&gt;
&lt;br /&gt;
Click &amp;#039;&amp;#039;&amp;#039;Status / Services&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Find &amp;#039;&amp;#039;&amp;#039;dnsmasq&amp;#039;&amp;#039;&amp;#039; in the list&lt;br /&gt;
&lt;br /&gt;
Click [[File:Fa-repeat.png]], or stop the service using [[File:Fa-stop-circle.png]] then start again with [[File:Fa-play-circle.png]].&lt;br /&gt;
&lt;br /&gt;
Restarting the daemon will clear the internal cache, but the client PCs may still have cached entries.&lt;br /&gt;
&lt;br /&gt;
== Flushing the ARP Cache ==&lt;br /&gt;
Click &amp;#039;&amp;#039;&amp;#039;Diagnostics / Command Prompt&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;arp -d -a&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Port Forwarding =&lt;br /&gt;
&lt;br /&gt;
*[https://www.netgate.com/docs/pfsense/nat/forwarding-ports-with-pfsense.html Forwarding Ports with pfSense]&lt;br /&gt;
*[https://forum.netgate.com/topic/50236/port-forwarding-step-by-step-demystified-pfsense-2-solved Port Forwarding - Step-by-Step - Demystified - pfSense 2 [SOLVED]]&lt;br /&gt;
*[https://www.yougetsignal.com/tools/open-ports/ Open Port Check Tool]&lt;br /&gt;
*[https://community.spiceworks.com/topic/1978690-what-am-i-missing-on-setting-this-port-forward-for-rdp-on-pfsense What am I missing on setting this port forward for RDP on pfSense?]&lt;br /&gt;
&lt;br /&gt;
== Connecting to the VPN machine through the firewall ==&lt;br /&gt;
&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;SEARCH:&amp;#039;&amp;#039;&amp;#039; [https://www.google.com/search?q=bind+vnc+to+network+interface bind vnc to network interface]&lt;br /&gt;
&lt;br /&gt;
= Notes &amp;amp; Tips =&lt;br /&gt;
&lt;br /&gt;
== If you want to be able to ping your network from the outside, Go into Firewall / Rules / WAN &amp;amp; create a rule to allow ICMP. ==&lt;br /&gt;
[[File:PfSense-ICMP-rule.png{{!}}left{{!}}thumb]]&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== To adjust the size of your subnet on the internal LAN connections: ==&lt;br /&gt;
&lt;br /&gt;
*Select &amp;#039;&amp;#039;&amp;#039;Interfaces / LANx&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
*Under &amp;#039;&amp;#039;&amp;#039;Static IPv4 Configuration&amp;#039;&amp;#039;&amp;#039;, change the [https://techterms.com/definition/subnet_mask subnet mask][[File:PfSense - Subnet Mask.png{{!}}frameless]] (probably from the default &amp;#039;&amp;#039;&amp;#039;/24&amp;#039;&amp;#039;&amp;#039;)&lt;br /&gt;
**Just a note, pfSense uses [https://docs.netgate.com/pfsense/en/latest/book/network/understanding-cidr-subnet-mask-notation.html CIDR Subnet Mask Notation]&lt;br /&gt;
Here&amp;#039;s a handy [https://www.freecodecamp.org/news/subnet-cheat-sheet-24-subnet-mask-30-26-27-29-and-other-ip-address-cidr-network-references/ Subnet Cheat Sheet]&lt;br /&gt;
&lt;br /&gt;
= Some Links =&lt;br /&gt;
&lt;br /&gt;
*Some rather good tutorials at [https://blog.monstermuffin.org/ Muffin&amp;#039;s Lab]:&lt;br /&gt;
**[https://blog.monstermuffin.org/pfsense-guide-nat-firewall-rules-networking-101/ pfSense: A Guide to NAT, Firewall Rules and some Networking 101]&lt;br /&gt;
**[https://blog.monstermuffin.org/tunneling-specific-traffic-over-a-vpn-with-pfsense/ Tunneling Specific Traffic over a VPN with pfSense]&lt;br /&gt;
**[https://blog.monstermuffin.org/create-an-ipsec-site-to-site-tunnel-between-two-pfsense-firewalls/ Create an IPSEC Site to Site tunnel between two PfSense firewalls]&lt;br /&gt;
*[https://doc.pfsense.org/index.php/Installing_pfSense Installing pfSense]&lt;br /&gt;
*[https://www.youtube.com/watch?v=ledv33t6SNE Build a Router 2016 Q4 - pfSense Build]&lt;br /&gt;
*[https://www.youtube.com/watch?v=8jYibgeAV0Y Whole-network VPN with pfSense Router]&lt;br /&gt;
*[https://www.youtube.com/watch?v=bkWJ8Cmn03I pfSense: How to Setup in DataCenter on VM-ware ESXi (Morton Hjorth)]&lt;br /&gt;
&lt;br /&gt;
[[Category:Network Management]]&lt;br /&gt;
[[Category:pfSense]]&lt;br /&gt;
[[Category:ServerBuilding]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=PfSense_-_Menu_Structure&amp;diff=221</id>
		<title>PfSense - Menu Structure</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=PfSense_-_Menu_Structure&amp;diff=221"/>
		<updated>2022-01-03T20:44:42Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a WIP...&lt;br /&gt;
=== System ===&lt;br /&gt;
&lt;br /&gt;
==== Advanced ====&lt;br /&gt;
===== Admin Access =====&lt;br /&gt;
===== Firewall &amp;amp; NAT =====&lt;br /&gt;
===== Networking =====&lt;br /&gt;
===== Miscellaneous =====&lt;br /&gt;
===== System Tunables =====&lt;br /&gt;
===== Notifications =====&lt;br /&gt;
&lt;br /&gt;
==== Cert. Manager ====&lt;br /&gt;
===== CAs =====&lt;br /&gt;
===== Certificates =====&lt;br /&gt;
===== Certificate Revocation =====&lt;br /&gt;
&lt;br /&gt;
==== General Setup ====&lt;br /&gt;
==== High Avail. Sync ====&lt;br /&gt;
==== Logout (admin) ====&lt;br /&gt;
==== Package Manager ====&lt;br /&gt;
===== Installed Packages =====&lt;br /&gt;
===== Available Packages =====&lt;br /&gt;
&lt;br /&gt;
==== Routing ====&lt;br /&gt;
===== Gateways =====&lt;br /&gt;
===== Static Routes =====&lt;br /&gt;
===== Gateway Groups =====&lt;br /&gt;
&lt;br /&gt;
==== Setup Wizard ====&lt;br /&gt;
==== Update ====&lt;br /&gt;
===== System Update =====&lt;br /&gt;
===== Update Settings =====&lt;br /&gt;
&lt;br /&gt;
==== User Manager ====&lt;br /&gt;
===== Users =====&lt;br /&gt;
===== Groups =====&lt;br /&gt;
===== Settings =====&lt;br /&gt;
===== Authentication Servers =====&lt;br /&gt;
&lt;br /&gt;
=== Interfaces ===&lt;br /&gt;
==== Assignments ====&lt;br /&gt;
===== Interface Assignments =====&lt;br /&gt;
===== Interface Groups =====&lt;br /&gt;
===== Wireless =====&lt;br /&gt;
===== VLANs =====&lt;br /&gt;
===== QinQs =====&lt;br /&gt;
===== PPPs =====&lt;br /&gt;
===== GREs =====&lt;br /&gt;
===== GIFs =====&lt;br /&gt;
===== Bridges =====&lt;br /&gt;
===== LAGGs =====&lt;br /&gt;
&lt;br /&gt;
==== WAN ====&lt;br /&gt;
==== LAN ====&lt;br /&gt;
&lt;br /&gt;
=== Firewall ===&lt;br /&gt;
==== Aliases ====&lt;br /&gt;
===== IP =====&lt;br /&gt;
===== Ports =====&lt;br /&gt;
===== URLs =====&lt;br /&gt;
===== All =====&lt;br /&gt;
&lt;br /&gt;
==== NAT ====&lt;br /&gt;
===== Port Forward =====&lt;br /&gt;
===== 1:1 =====&lt;br /&gt;
===== Outbound =====&lt;br /&gt;
===== NPt =====&lt;br /&gt;
&lt;br /&gt;
==== Rules ====&lt;br /&gt;
===== Floating =====&lt;br /&gt;
===== WAN =====&lt;br /&gt;
===== LAN =====&lt;br /&gt;
&lt;br /&gt;
==== Schedules ====&lt;br /&gt;
==== Traffic Shaper ====&lt;br /&gt;
===== By Interface =====&lt;br /&gt;
===== By Queue =====&lt;br /&gt;
===== Limiters =====&lt;br /&gt;
===== Wizards =====&lt;br /&gt;
&lt;br /&gt;
==== Virtual IPs ====&lt;br /&gt;
&lt;br /&gt;
=== Services ===&lt;br /&gt;
==== Auto Config Backup ====&lt;br /&gt;
===== Settings =====&lt;br /&gt;
===== Restore =====&lt;br /&gt;
===== Backup now =====&lt;br /&gt;
&lt;br /&gt;
==== Captive Portal ====&lt;br /&gt;
==== DHCP Relay ====&lt;br /&gt;
==== DHCP Server ====&lt;br /&gt;
===== LAN =====&lt;br /&gt;
====== DHCP Static Mappings for this Interface ======&lt;br /&gt;
&lt;br /&gt;
==== DHCPv6 Relay ====&lt;br /&gt;
==== DHCPv6 Server &amp;amp; RA ====&lt;br /&gt;
==== DNS Forwarder ====&lt;br /&gt;
===== Host Overrides =====&lt;br /&gt;
&lt;br /&gt;
==== DNS Resolver ====&lt;br /&gt;
===== General Settings =====&lt;br /&gt;
===== Advanced Settings =====&lt;br /&gt;
===== Access Lists =====&lt;br /&gt;
&lt;br /&gt;
==== Dynamic DNS ====&lt;br /&gt;
===== Dynamic DNS Clients =====&lt;br /&gt;
===== RFC 2136 Clients =====&lt;br /&gt;
===== Check IP Services =====&lt;br /&gt;
&lt;br /&gt;
==== IGMP Proxy ====&lt;br /&gt;
==== Load Balancer ====&lt;br /&gt;
===== Pools =====&lt;br /&gt;
===== Virtual Servers =====&lt;br /&gt;
===== Monitors =====&lt;br /&gt;
===== Settings =====&lt;br /&gt;
&lt;br /&gt;
==== NTP ====&lt;br /&gt;
==== PPPoE Server ====&lt;br /&gt;
==== SNMP ====&lt;br /&gt;
==== UPnP &amp;amp; NAT-PMP ====&lt;br /&gt;
==== UPS ====&lt;br /&gt;
==== Wake-on-LAN ====&lt;br /&gt;
&lt;br /&gt;
=== VPN ===&lt;br /&gt;
==== IPsec ====&lt;br /&gt;
==== L2TP ====&lt;br /&gt;
==== OpenVPN ====&lt;br /&gt;
&lt;br /&gt;
=== Status ===&lt;br /&gt;
==== Captive Portal ====&lt;br /&gt;
==== CARP (failover) ====&lt;br /&gt;
==== Dashboard ====&lt;br /&gt;
==== DHCP Leases ====&lt;br /&gt;
==== DHCPv6 Leases ====&lt;br /&gt;
==== DNS Resolver ====&lt;br /&gt;
==== Filter Reload ====&lt;br /&gt;
==== Gateways ====&lt;br /&gt;
==== Interfaces ====&lt;br /&gt;
==== IPsec ====&lt;br /&gt;
==== Load Balancer ====&lt;br /&gt;
==== Monitoring ====&lt;br /&gt;
==== NTP ====&lt;br /&gt;
==== OpenVPN ====&lt;br /&gt;
==== Package Logs ====&lt;br /&gt;
==== Queues ====&lt;br /&gt;
==== Services ====&lt;br /&gt;
==== System Logs ====&lt;br /&gt;
==== Traffic Graph ====&lt;br /&gt;
==== PUnP &amp;amp; NAT-PMP ====&lt;br /&gt;
&lt;br /&gt;
=== Diagnostics ===&lt;br /&gt;
==== ARP Table ====&lt;br /&gt;
==== Authentication ====&lt;br /&gt;
==== Backup &amp;amp; Restore ====&lt;br /&gt;
==== Command Prompt ====&lt;br /&gt;
==== DNS Lookup ====&lt;br /&gt;
==== Edit File ====&lt;br /&gt;
==== Factory Defaults ====&lt;br /&gt;
==== Halt System ====&lt;br /&gt;
==== Limiter Info ====&lt;br /&gt;
==== NDP Table ====&lt;br /&gt;
==== Packet Capture ====&lt;br /&gt;
==== pfInfo ====&lt;br /&gt;
==== pfTop ====&lt;br /&gt;
==== Ping ====&lt;br /&gt;
==== Reboot ====&lt;br /&gt;
==== Routes ====&lt;br /&gt;
==== S.M.A.R.T. Status ====&lt;br /&gt;
==== Sockets ====&lt;br /&gt;
==== States ====&lt;br /&gt;
==== States Summary ====&lt;br /&gt;
==== Tables ====&lt;br /&gt;
==== Test Port ====&lt;br /&gt;
==== Traceroute ====&lt;br /&gt;
&lt;br /&gt;
=== Help ===&lt;br /&gt;
==== About this Page ====&lt;br /&gt;
==== Bug Database ====&lt;br /&gt;
==== Documentation ====&lt;br /&gt;
==== FreeBSD Handbook ====&lt;br /&gt;
==== Paid Support ====&lt;br /&gt;
==== pfSense Book ====&lt;br /&gt;
==== User Forum ====&lt;br /&gt;
==== User survey ====&lt;br /&gt;
&lt;br /&gt;
[[Category:pfSense]]&lt;br /&gt;
[[Category:WIP]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=PfSense&amp;diff=220</id>
		<title>PfSense</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=PfSense&amp;diff=220"/>
		<updated>2022-01-03T20:43:32Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Download pfSense =&lt;br /&gt;
[https://www.pfsense.org/ Where to get it]&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot from 2020-06-08 14-31-42.png{{!}}256px{{!}}Screenshot from 2020-06-08 14-31-42.png{{!}}alt=&amp;quot;Aaarrrggg!&amp;quot;{{!}}right]]&lt;br /&gt;
&lt;br /&gt;
See that nifty screencap over there on the right?&lt;br /&gt;
&lt;br /&gt;
Look at it again.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;&amp;lt;big&amp;gt;It&amp;#039;s important...&amp;lt;br&amp;gt;&amp;lt;/big&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
== Stuff it onto a thumbdrive ==&lt;br /&gt;
&lt;br /&gt;
(really should create command-line instructions for this part)&lt;br /&gt;
&lt;br /&gt;
If working from a Linux Mint machine GUI, right-click &amp;amp; extract the .gz file. Then right-click the resulting .img file &amp;amp; select &amp;quot;Make bootable USB stick&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
If working from one of those crappy Windows machines, use Rufus...&lt;br /&gt;
&lt;br /&gt;
If you&amp;#039;re playing with a Mac... Yer on yer own for now.&lt;br /&gt;
&lt;br /&gt;
= Configure the Hardware =&lt;br /&gt;
&lt;br /&gt;
You&amp;#039;ll want either a dual NIC or 2 (or more...) NICs.&lt;br /&gt;
&lt;br /&gt;
A hard drive (or SSD) could come in rather handy...&lt;br /&gt;
&lt;br /&gt;
= Install pfSense =&lt;br /&gt;
&lt;br /&gt;
*Boot your machine from the thumbdrive. (UEFI is just fine...)&lt;br /&gt;
*Accept the copyright.&lt;br /&gt;
*Select &amp;quot;Install&amp;quot;&lt;br /&gt;
*Select &amp;quot;Continue with default keymap&amp;quot; (or, really, any keymap you like...)&lt;br /&gt;
*Select &amp;quot;Auto (UFS)&lt;br /&gt;
*Choose your disk for the install&lt;br /&gt;
**I&amp;#039;d suggest only having one disk in the machine...&lt;br /&gt;
*Select &amp;quot;Entire Disk&lt;br /&gt;
**Yes... Proceed.&lt;br /&gt;
*Select GPT (GUID Partition Table)&lt;br /&gt;
*Hit &amp;quot;Finish&amp;quot;&lt;br /&gt;
*Hit &amp;quot;Commit&amp;quot;&lt;br /&gt;
*Watch the pretty progress screens... (Or ignore it until it&amp;#039;s done... Your choice...)&lt;br /&gt;
*When you see the &amp;quot;Manual Configuration&amp;quot; screen, Hit &amp;quot;No&amp;quot;&lt;br /&gt;
*Hit &amp;quot;Reboot&amp;quot;&lt;br /&gt;
*Go back &amp;amp; configure the machine to actually boot from the drive you installed pfSense onto...&lt;br /&gt;
&lt;br /&gt;
= Initial Configuration of pfSense =&lt;br /&gt;
&lt;br /&gt;
On first boot, pfSense will ask &amp;quot;Should VLANs be set up now [y{{!}}n]?&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Don&amp;#039;t bother...&lt;br /&gt;
&lt;br /&gt;
*Select your WAN interface&lt;br /&gt;
**bce0 on this test machine (T310)&lt;br /&gt;
*Select your LAN interface&lt;br /&gt;
**bce1 on this test machine (T310)&lt;br /&gt;
*Verify they&amp;#039;re selected properly &amp;amp; say yes.&lt;br /&gt;
*Watch all the &amp;quot;done&amp;quot; messages scroll by (or not... again, your choice...)&lt;br /&gt;
After a moment or 3, you&amp;#039;ll see the console menu.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
*** Welcome to pfSense 2.4.5-RELEASE (amd64) on pfSense ***&lt;br /&gt;
  WAN (wan)       -&amp;amp;gt; bce0       -&amp;amp;gt; v4/DHCP4: 192.168.0.26/24&lt;br /&gt;
  LAN (lan)       -&amp;amp;gt; bce1       -&amp;amp;gt; v4: 192.168.1.1/24&lt;br /&gt;
 &lt;br /&gt;
  0) Logout (SSH only)                  9) pfTop&lt;br /&gt;
  1) Assign Interfaces                 10) Filter Logs&lt;br /&gt;
  2) Set interface(s) IP address       11) Restart webConfigurator&lt;br /&gt;
  3) Reset webConfigurator password    12) PHP shell + pfSense tools&lt;br /&gt;
  4) Reset to factory defaults         13) Update from console&lt;br /&gt;
  5) Reboot system                     14) Enable Secure Shell (sshd)&lt;br /&gt;
  6) Halt system                       15) Restore recent configuration&lt;br /&gt;
  7) Ping Host                         16) Restart PHP-FPM&lt;br /&gt;
  8) Shell&lt;br /&gt;
 &lt;br /&gt;
 Enter an option:&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;It&amp;#039;s ALIVE!!!&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
= Configuring pfSense from here... =&lt;br /&gt;
At this point, you should be able to connect to the LAN port &amp;amp; point a web browser at 192.168.1.1&lt;br /&gt;
&lt;br /&gt;
This is the Web-UI...&lt;br /&gt;
&lt;br /&gt;
Default login is:&lt;br /&gt;
&lt;br /&gt;
*Username: admin&lt;br /&gt;
*Password: pfsense&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;&amp;lt;span style=&amp;quot;font-size: 18pt;&amp;quot; &amp;gt;Change this. Do it NOW!&amp;lt;/span&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
If you have the WAN port connected to the Internet, you should actually be capable of accessing the outside world right now.&lt;br /&gt;
&lt;br /&gt;
[[pfSense - Menu Structure{{!}}Menu Structure]]&lt;br /&gt;
&lt;br /&gt;
=== All the fancy stuff ===&lt;br /&gt;
(Coming soon&amp;lt;sup&amp;gt;TM&amp;lt;/sup&amp;gt;... Promise&amp;lt;sup&amp;gt;TM&amp;lt;/sup&amp;gt;...)&lt;br /&gt;
&lt;br /&gt;
*[[NetMan - Dynamic DNS{{!}}Configuring Dynamic DNS]]&lt;br /&gt;
*[[PfSense - Managing DHCP{{!}}Managing DHCP]]&lt;br /&gt;
*[[PfSense - Managing NAT on the firewall{{!}}Managing NAT on the firewall]]&lt;br /&gt;
*[[PfSense - Multi-Wan Configuration{{!}}Multi-Wan Configuration]]&lt;br /&gt;
*[[PfSense - Private VPN{{!}}Private VPN]]&lt;br /&gt;
*[[PfSense - Crap-Stopping with pfBlockerNG{{!}}Crap-Stopping with pfBlockerNG]]&lt;br /&gt;
*[[PfSense - Etc...{{!}}etc...]]&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting &amp;amp; Repair =&lt;br /&gt;
&lt;br /&gt;
== Clearing the DNS Forwarder Cache ==&lt;br /&gt;
[https://docs.netgate.com/pfsense/en/latest/dns/clearing-the-dns-forwarder-cache.html Source]&lt;br /&gt;
&lt;br /&gt;
To clear the DNS Forwarder cache, restart the dnsmasq daemon as follows:&lt;br /&gt;
&lt;br /&gt;
Click &amp;#039;&amp;#039;&amp;#039;Status / Services&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Find &amp;#039;&amp;#039;&amp;#039;dnsmasq&amp;#039;&amp;#039;&amp;#039; in the list&lt;br /&gt;
&lt;br /&gt;
Click [[File:Fa-repeat.png]], or stop the service using [[File:Fa-stop-circle.png]] then start again with [[File:Fa-play-circle.png]].&lt;br /&gt;
&lt;br /&gt;
Restarting the daemon will clear the internal cache, but the client PCs may still have cached entries.&lt;br /&gt;
&lt;br /&gt;
== Flushing the ARP Cache ==&lt;br /&gt;
Click &amp;#039;&amp;#039;&amp;#039;Diagnostics / Command Prompt&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;arp -d -a&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Port Forwarding =&lt;br /&gt;
&lt;br /&gt;
*[https://www.netgate.com/docs/pfsense/nat/forwarding-ports-with-pfsense.html Forwarding Ports with pfSense]&lt;br /&gt;
*[https://forum.netgate.com/topic/50236/port-forwarding-step-by-step-demystified-pfsense-2-solved Port Forwarding - Step-by-Step - Demystified - pfSense 2 [SOLVED]]&lt;br /&gt;
*[https://www.yougetsignal.com/tools/open-ports/ Open Port Check Tool]&lt;br /&gt;
*[https://community.spiceworks.com/topic/1978690-what-am-i-missing-on-setting-this-port-forward-for-rdp-on-pfsense What am I missing on setting this port forward for RDP on pfSense?]&lt;br /&gt;
&lt;br /&gt;
== Connecting to the VPN machine through the firewall ==&lt;br /&gt;
&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;SEARCH:&amp;#039;&amp;#039;&amp;#039; [https://www.google.com/search?q=bind+vnc+to+network+interface bind vnc to network interface]&lt;br /&gt;
&lt;br /&gt;
= Notes &amp;amp; Tips =&lt;br /&gt;
&lt;br /&gt;
== If you want to be able to ping your network from the outside, Go into Firewall / Rules / WAN &amp;amp; create a rule to allow ICMP. ==&lt;br /&gt;
[[File:PfSense-ICMP-rule.png{{!}}left{{!}}thumb]]&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear: both&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== To adjust the size of your subnet on the internal LAN connections: ==&lt;br /&gt;
&lt;br /&gt;
*Select &amp;#039;&amp;#039;&amp;#039;Interfaces / LANx&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
*Under &amp;#039;&amp;#039;&amp;#039;Static IPv4 Configuration&amp;#039;&amp;#039;&amp;#039;, change the [https://techterms.com/definition/subnet_mask subnet mask][[File:PfSense - Subnet Mask.png{{!}}frameless]] (probably from the default &amp;#039;&amp;#039;&amp;#039;/24&amp;#039;&amp;#039;&amp;#039;)&lt;br /&gt;
**Just a note, pfSense uses [https://docs.netgate.com/pfsense/en/latest/book/network/understanding-cidr-subnet-mask-notation.html CIDR Subnet Mask Notation]&lt;br /&gt;
Here&amp;#039;s a handy [https://www.freecodecamp.org/news/subnet-cheat-sheet-24-subnet-mask-30-26-27-29-and-other-ip-address-cidr-network-references/ Subnet Cheat Sheet]&lt;br /&gt;
&lt;br /&gt;
= Some Links =&lt;br /&gt;
&lt;br /&gt;
*Some rather good tutorials at [https://blog.monstermuffin.org/ Muffin&amp;#039;s Lab]:&lt;br /&gt;
**[https://blog.monstermuffin.org/pfsense-guide-nat-firewall-rules-networking-101/ pfSense: A Guide to NAT, Firewall Rules and some Networking 101]&lt;br /&gt;
**[https://blog.monstermuffin.org/tunneling-specific-traffic-over-a-vpn-with-pfsense/ Tunneling Specific Traffic over a VPN with pfSense]&lt;br /&gt;
**[https://blog.monstermuffin.org/create-an-ipsec-site-to-site-tunnel-between-two-pfsense-firewalls/ Create an IPSEC Site to Site tunnel between two PfSense firewalls]&lt;br /&gt;
*[https://doc.pfsense.org/index.php/Installing_pfSense Installing pfSense]&lt;br /&gt;
*[https://www.youtube.com/watch?v=ledv33t6SNE Build a Router 2016 Q4 - pfSense Build]&lt;br /&gt;
*[https://www.youtube.com/watch?v=8jYibgeAV0Y Whole-network VPN with pfSense Router]&lt;br /&gt;
*[https://www.youtube.com/watch?v=bkWJ8Cmn03I pfSense: How to Setup in DataCenter on VM-ware ESXi (Morton Hjorth)]&lt;br /&gt;
&lt;br /&gt;
[[Category:Network Management]]&lt;br /&gt;
[[Category:pfSense]]&lt;br /&gt;
[[Category:ServerBuilding]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=Passwordless_SSH&amp;diff=214</id>
		<title>Passwordless SSH</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=Passwordless_SSH&amp;diff=214"/>
		<updated>2022-01-03T20:30:16Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== For Linux ==&lt;br /&gt;
This needs to be done on the machine you will be SSHing &amp;#039;&amp;#039;&amp;#039;FROM&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;ssh-keygen -t rsa&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;cat ~/.ssh/id_rsa.pub {{!}} ssh USER@OTHERLINUXBOX &amp;#039;cat &amp;amp;gt;&amp;amp;gt; ~/.ssh/authorized_keys&amp;#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
It is possible that &amp;lt;code&amp;gt;~/.ssh&amp;lt;/code&amp;gt; does not yet exist on the target machine. If so, you&amp;#039;ll need to create it:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;ssh USER@OTHERLINUXBOX &amp;#039;mkdir ~/.ssh&amp;#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== For ESXi ==&lt;br /&gt;
These instructions assume 2 ESXi servers: ESXi0 &amp;amp; ESXi1&lt;br /&gt;
&lt;br /&gt;
Both of these servers have a datastore named &amp;#039;&amp;#039;&amp;#039;Admin&amp;#039;&amp;#039;&amp;#039; for Administrative stuff and a Folder named &amp;#039;&amp;#039;&amp;#039;Utilities&amp;#039;&amp;#039;&amp;#039; for storing useful things.&lt;br /&gt;
&lt;br /&gt;
You will need &amp;#039;&amp;#039;&amp;#039;SSH client&amp;#039;&amp;#039;&amp;#039; enabled in the built-in firewall on your ESXi hosts.&lt;br /&gt;
&lt;br /&gt;
*Allowing SSH &amp;amp; SCP between ESXi Hosts&lt;br /&gt;
**SSH Client must be enabled in the ESXi firewall (for the outbound connection)&lt;br /&gt;
**[https://4sysops.com/archives/how-to-open-and-close-firewall-ports-on-vmware-esxi-hosts/ How to Open and Close Firewall Ports on vmWare ESXi Hosts]&lt;br /&gt;
&lt;br /&gt;
=== ESXi to ESXi ===&lt;br /&gt;
Source: [https://cormachogan.com/2016/04/13/ssh-esxi-hosts-without-providing-password/ How to SSH between ESXi 6.0U2 hosts without providing a password]&lt;br /&gt;
&lt;br /&gt;
The following 2 sections are basically lists of Copy-Pasta commands for each server.&lt;br /&gt;
&lt;br /&gt;
==== ESXi0 ====&lt;br /&gt;
&lt;br /&gt;
*If it doesn&amp;#039;t exist yet, create the Utilities folder:&lt;br /&gt;
**&amp;lt;code&amp;gt;mkdir /vmfs/volumes/Admin/Utilities&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;mkdir /vmfs/volumes/Admin/Utilities/ssl&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;mkdir /vmfs/volumes/Admin/Utilities/ssl/ESXi1&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;mkdir /vmfs/volumes/Admin/Utilities/ssl/ESXi1/keys&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;mkdir /.ssh&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;cd /.ssh&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;/usr/lib/vmware/openssh/bin/ssh-keygen -t rsa -b 4096&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;#039;&amp;#039;&amp;#039;Just accept the defaults&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
*&amp;lt;code&amp;gt;cat id_rsa.pub {{!}} ssh root@ESXi1 &amp;#039;cat &amp;amp;gt;&amp;amp;gt; /etc/ssh/keys-root/authorized_keys&amp;#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;cp /.ssh/* /vmfs/volumes/Admin/Utilities/ssl/ESXi1/keys&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;vi /etc/rc.local.d/local.sh&amp;lt;/code&amp;gt;&lt;br /&gt;
 mkdir /.ssh&lt;br /&gt;
 cp /vmfs/volumes/Admin/Utilities/ssl/ESXi1/keys/* /.ssh&lt;br /&gt;
&lt;br /&gt;
==== ESXi1 ====&lt;br /&gt;
&lt;br /&gt;
*If it doesn&amp;#039;t exist yet, create the Utilities folder:&lt;br /&gt;
**&amp;lt;code&amp;gt;mkdir /vmfs/volumes/Admin/Utilities&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;mkdir /vmfs/volumes/Admin/Utilities/ssl&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;mkdir /vmfs/volumes/Admin/Utilities/ssl/ESXi0&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;mkdir /vmfs/volumes/Admin/Utilities/ssl/ESXi0/keys&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;mkdir /.ssh&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;cd /.ssh&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;/usr/lib/vmware/openssh/bin/ssh-keygen -t rsa -b 4096&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;#039;&amp;#039;&amp;#039;Just accept the defaults&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
*&amp;lt;code&amp;gt;cat id_rsa.pub {{!}} ssh root@ESXi0 &amp;#039;cat &amp;amp;gt;&amp;amp;gt; /etc/ssh/keys-root/authorized_keys&amp;#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;cp /.ssh/* /vmfs/volumes/Admin/Utilities/ssl/ESXi0/keys&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;vi /etc/rc.local.d/local.sh&amp;lt;/code&amp;gt;&lt;br /&gt;
 mkdir /.ssh&lt;br /&gt;
 cp /vmfs/volumes/Admin/Utilities/ssl/ESXi0/keys/* /.ssh&lt;br /&gt;
&lt;br /&gt;
==== On Both Servers ====&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;chmod +t /etc/ssh/keys-root/authorized_keys&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;vi /etc/ssh/sshd_config&amp;lt;/code&amp;gt;&lt;br /&gt;
*(Ensure the following items are in the file)&lt;br /&gt;
 PermitRootLogin yes&lt;br /&gt;
 UsePAM yes&lt;br /&gt;
 # only use PAM challenge-response (keyboard-interactive)&lt;br /&gt;
 PasswordAuthentication no&lt;br /&gt;
*&amp;lt;code&amp;gt;/etc/init.d/SSH restart&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;/sbin/auto-backup.sh&amp;lt;/code&amp;gt;&lt;br /&gt;
At this point, you should be able to SSH from one to the other without needing to enter a password.&lt;br /&gt;
&lt;br /&gt;
==== Troubleshooting SSH on ESXi ====&lt;br /&gt;
If you get &amp;quot;ssh: connect to host WHATEVER port 22: Connection timed out&amp;quot; when trying to SSH from an ESXi host, double check the configuration of &amp;#039;&amp;#039;&amp;#039;SSH Client&amp;#039;&amp;#039;&amp;#039; in the servers &amp;#039;&amp;#039;&amp;#039;Firewall Rules&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
=== ESXi to Linux ===&lt;br /&gt;
Assuming you&amp;#039;ve already created your keyes using &amp;lt;code&amp;gt;ssh-keygen&amp;lt;/code&amp;gt; in [[#ESXi to ESXi{{!}}ESXi to ESXi]]&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;cat /.ssh/id_rsa.pub {{!}} ssh USER@LINUXBOX &amp;#039;cat &amp;amp;gt;&amp;amp;gt; ~/.ssh/authorized_keys&amp;#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
It is possible that &amp;lt;code&amp;gt;~/.ssh&amp;lt;/code&amp;gt; does not yet exist on the target machine. If so, you&amp;#039;ll need to create it:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;ssh USER@LINUXBOX &amp;#039;mkdir ~/.ssh&amp;#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Linux to ESXi ===&lt;br /&gt;
Assuming you&amp;#039;ve already created the directory structure in [[#ESXi to ESXi{{!}}ESXi to ESXi]]&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;ssh-keygen -t rsa&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;cat ~/.ssh/id_rsa.pub {{!}} ssh root@ESXi0 &amp;#039;cat &amp;amp;gt;&amp;amp;gt; /etc/ssh/keys-root/authorized_keys&amp;#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;ssh root@esxi0 &amp;quot;/sbin/auto-backup.sh&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Bonus Thoughts... ===&lt;br /&gt;
I can&amp;#039;t see any reason these instructions couldn&amp;#039;t be used to provide passwordless SSH to a remote ESXi server with a weird port number for SSH... &amp;#039;&amp;#039;(&amp;#039;&amp;#039;&amp;#039;HINT:&amp;#039;&amp;#039;&amp;#039; Works just fine...)&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;amp; since SCP runs over SSH...&lt;br /&gt;
&lt;br /&gt;
Could be used for automatically copying backups to/from an offsite server...&lt;br /&gt;
&lt;br /&gt;
hhhmmm...&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:ESXi]]&lt;br /&gt;
[[Category:LinuxTools]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=HowTo_-_cron&amp;diff=213</id>
		<title>HowTo - cron</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=HowTo_-_cron&amp;diff=213"/>
		<updated>2022-01-03T20:28:26Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;cron&amp;#039;&amp;#039;&amp;#039; is a background process (a [[Linux - daemon|daemon]]) that wakes up every minute &amp;amp; checks &amp;#039;&amp;#039;&amp;#039;crontab&amp;#039;&amp;#039;&amp;#039; files for tasks to run. These files might belong to &amp;#039;&amp;#039;&amp;#039;[[Linux - root|root]]&amp;#039;&amp;#039;&amp;#039; or to individual user accounts on the machine.&lt;br /&gt;
&lt;br /&gt;
=The crontab file=&lt;br /&gt;
For details about how to create crontab entries, see:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;man 5 crontab&amp;lt;/code&amp;gt;&lt;br /&gt;
*[https://community.linuxmint.com/tutorial/view/1072 Crontab Syntax Tutorial]&lt;br /&gt;
&lt;br /&gt;
==Editing your personal crontab file:==&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;crontab -e&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Editing the root crontab file:==&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo crontab -e&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=starting/stopping/restarting=&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo service cron start&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo service cron stop&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo service cron restart&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=logs=&lt;br /&gt;
cron logs are rolled into syslog&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;grep CRON /var/log/syslog&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:LinuxTools]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=HowTo_-_ssh&amp;diff=212</id>
		<title>HowTo - ssh</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=HowTo_-_ssh&amp;diff=212"/>
		<updated>2022-01-03T20:27:11Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[https://www.rootusers.com/enable-ssh-linux-mint/ How To Enable SSH in Linux Mint]&lt;br /&gt;
&lt;br /&gt;
[[Passwordless SSH]]&lt;br /&gt;
&lt;br /&gt;
= Using SSH to get stuff done =&lt;br /&gt;
== Make it easier to connect ==&lt;br /&gt;
Don&amp;#039;t use password authentication. Use [https://www.ssh.com/academy/ssh/public-key-authentication Public Key Authentication].&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;ssh-keygen&amp;lt;/code&amp;gt;&lt;br /&gt;
**(Note: You only have to do this step once on any particular machine.)&lt;br /&gt;
**The passphrase is optional.&lt;br /&gt;
*&amp;lt;code&amp;gt;ssh-copy-id &amp;#039;&amp;#039;&amp;#039;user@MACHINENAME&amp;#039;&amp;#039;&amp;#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
**This can be done for as many remote machines as you like.&lt;br /&gt;
This will simplify your life. From this point on, any time you SSH into (or SCP to/from etc...) the machine known as &amp;#039;&amp;#039;&amp;#039;MACHINENAME&amp;#039;&amp;#039;&amp;#039; while working at the machine you&amp;#039;ve done this on, you&amp;#039;ll be automagically authenticated.&lt;br /&gt;
&lt;br /&gt;
== Signing in to a machine ==&lt;br /&gt;
Pretty straightforward:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;ssh &amp;#039;&amp;#039;&amp;#039;user@MACHINENAME&amp;#039;&amp;#039;&amp;#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
This will securely give you a terminal session of the remote machine. (Much like good old telnet... But not quite so sketchily insecure.)&lt;br /&gt;
&lt;br /&gt;
== Executing commands remotely ==&lt;br /&gt;
Also, pretty straightforward...&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;ssh &amp;#039;&amp;#039;&amp;#039;user@MACHINENAME &amp;quot;Command to be executed&amp;quot;&amp;#039;&amp;#039;&amp;#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
One thing to note...&lt;br /&gt;
&lt;br /&gt;
If you want to execute a command remotely that requires &amp;#039;&amp;#039;&amp;#039;sudo&amp;#039;&amp;#039;&amp;#039;, you&amp;#039;ll have to add a &amp;#039;&amp;#039;&amp;#039;-t&amp;#039;&amp;#039;&amp;#039; to the command line or else &amp;#039;&amp;#039;&amp;#039;sudo&amp;#039;&amp;#039;&amp;#039; with tell you where to go.&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;ssh -t &amp;#039;&amp;#039;&amp;#039;user@MACHINENAME &amp;quot;Command to be executed&amp;quot;&amp;#039;&amp;#039;&amp;#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
This is because &amp;#039;&amp;#039;&amp;#039;sudo&amp;#039;&amp;#039;&amp;#039; intentionally will NOT run without a local terminal session.&lt;br /&gt;
&lt;br /&gt;
== Transferring files ==&lt;br /&gt;
There are at least 3 ways you can securely transfer files using &amp;#039;&amp;#039;&amp;#039;SSH&amp;#039;&amp;#039;&amp;#039; (via the &amp;#039;&amp;#039;&amp;#039;SCP&amp;#039;&amp;#039;&amp;#039; command)&lt;br /&gt;
&lt;br /&gt;
From the local machine to a remote machine:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;scp &amp;#039;&amp;#039;&amp;#039;FileName&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;&amp;#039;&amp;lt;nowiki&amp;gt;user@MACHINENAME:Destination&amp;lt;/nowiki&amp;gt;&amp;#039;&amp;#039;&amp;#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
From a remote machine to the local machine:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;scp &amp;#039;&amp;#039;&amp;#039;user@MACHINENAME:FileName Destination&amp;#039;&amp;#039;&amp;#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
From a remote machine to another remote machine:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;scp &amp;#039;&amp;#039;&amp;#039;user@MACHINENAME:FileName user@OTHERMACHINENAME:Destination&amp;#039;&amp;#039;&amp;#039;&amp;lt;/code&amp;gt;&lt;br /&gt;
Starting to see a pattern?&lt;br /&gt;
&lt;br /&gt;
As a bonus, [https://linux.die.net/man/1/rsync RSYNC] will use &amp;#039;&amp;#039;&amp;#039;SSH&amp;#039;&amp;#039;&amp;#039; as a transport layer.&lt;br /&gt;
&lt;br /&gt;
== Port forwarding (AKA Tunnelling) ==&lt;br /&gt;
Working on this part...&lt;br /&gt;
&lt;br /&gt;
[https://help.ubuntu.com/community/SSH/OpenSSH/PortForwarding One description]&lt;br /&gt;
&lt;br /&gt;
[https://www.ssh.com/academy/ssh/tunneling/example An example]&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
(somebody remind me to clean this crap up &amp;amp; make it easier to follow...)&lt;br /&gt;
&lt;br /&gt;
If you get crap like:&amp;lt;pre class=&amp;quot;bbcodeblock&amp;quot; dir=&amp;quot;ltr&amp;quot; style=&amp;quot;margin: 0px; margin-right: -99999px; padding: 3px; border: 1px inset; width: 98%; height: 82px; text-align: left; overflow: auto&amp;quot; &amp;gt;Warning: the ECDSA host key for &amp;#039;&amp;lt;snip&amp;gt;&amp;#039; differs from the key for the IP address &amp;#039;&amp;lt;snip&amp;gt;&amp;#039;&lt;br /&gt;
Offending key for IP in /home/&amp;lt;snip&amp;gt;/.ssh/known_hosts:14&lt;br /&gt;
Matching host key in /home/&amp;lt;snip&amp;gt;/.ssh/known_hosts:12&lt;br /&gt;
Are you sure you want to continue connecting (yes/no)?&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
or maybe:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;bbcodeblock&amp;quot; dir=&amp;quot;ltr&amp;quot; style=&amp;quot;margin: 0px; margin-right: -99999px; padding: 3px; border: 1px inset; width: 98%; text-align: left; overflow: auto&amp;quot; &amp;gt;&lt;br /&gt;
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&lt;br /&gt;
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @&lt;br /&gt;
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&lt;br /&gt;
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!&lt;br /&gt;
Someone could be eavesdropping on you right now (man-in-the-middle attack)!&lt;br /&gt;
It is also possible that a host key has just been changed.&lt;br /&gt;
The fingerprint for the RSA key sent by the remote host is&lt;br /&gt;
SHA256:&amp;#039;&amp;lt;snip&amp;gt;&amp;#039;&lt;br /&gt;
Please contact your system administrator.&lt;br /&gt;
Add correct host key in /home/user/.ssh/known_hosts to get rid of this message.&lt;br /&gt;
Offending RSA key in /home/user/.ssh/known_hosts:102&lt;br /&gt;
  remove with:&lt;br /&gt;
  ssh-keygen -f &amp;quot;/home/user/.ssh/known_hosts&amp;quot; -R &amp;#039;&amp;lt;snip&amp;gt;&amp;#039;&lt;br /&gt;
RSA host key for &amp;#039;&amp;lt;snip&amp;gt;&amp;#039; has changed and you have requested strict checking.&lt;br /&gt;
Host key verification failed.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
when you try to ssh to a machine...&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo ssh-keygen -f ~/.ssh/known_hosts -R HOSTIP&amp;lt;/code&amp;gt;&lt;br /&gt;
Messages like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;bbcodeblock&amp;quot; dir=&amp;quot;ltr&amp;quot; style=&amp;quot;margin: 0px; margin-right: -99999px; padding: 3px; border: 1px inset; width: 98%; text-align: left; overflow: auto&amp;quot; &amp;gt;&lt;br /&gt;
Warning: the RSA host key for &amp;#039;&amp;lt;snip&amp;gt;&amp;#039; differs from the key for the IP address &amp;#039;&amp;lt;snip&amp;gt;&amp;#039;&lt;br /&gt;
Offending key for IP in /home/user/.ssh/known_hosts:102&lt;br /&gt;
Matching host key in /home/user/.ssh/known_hosts:103&lt;br /&gt;
Are you sure you want to continue connecting (yes/no)? &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
mean that you have an extra entry in your known_hosts file &amp;amp; indicates the line you want to delete...&lt;br /&gt;
&lt;br /&gt;
If you see:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;Failed to add the host to the list of known hosts (/Users/USER/.ssh/known_hosts).&amp;lt;/code&amp;gt;&lt;br /&gt;
Check permissions &amp;amp; ownership on that file... &lt;br /&gt;
&lt;br /&gt;
= Some SSH reference Links =&lt;br /&gt;
&lt;br /&gt;
*[http://matt.might.net/articles/ssh-hacks/ SSH Tricks]&lt;br /&gt;
*[https://www.tecmint.com/ssh-passwordless-login-using-ssh-keygen-in-5-easy-steps/ SSH Passwordless Login Using SSH Keygen in 5 Easy Steps]&lt;br /&gt;
*[https://cormachogan.com/2016/04/13/ssh-esxi-hosts-without-providing-password/ How to SSH between ESXi 6.0U2 hosts without providing a password]&lt;br /&gt;
*[https://www.tecmint.com/secure-openssh-server/ How to Secure and Harden OpenSSH Server]&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:LinuxTools]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=Mini_Ubuntu_-_Pictures&amp;diff=211</id>
		<title>Mini Ubuntu - Pictures</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=Mini_Ubuntu_-_Pictures&amp;diff=211"/>
		<updated>2022-01-03T20:15:49Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;gallery mode=&amp;quot;slideshow&amp;quot; showfilename=&amp;quot;yes&amp;quot;&amp;gt;&lt;br /&gt;
File:Ubuntu Mini install 000.png&lt;br /&gt;
File:Ubuntu Mini install 001.png&lt;br /&gt;
File:Ubuntu Mini install 002.png&lt;br /&gt;
File:Ubuntu Mini install 003.png&lt;br /&gt;
File:Ubuntu Mini install 004.png&lt;br /&gt;
File:Ubuntu Mini install 005.png&lt;br /&gt;
File:Ubuntu Mini install 006.png&lt;br /&gt;
File:Ubuntu Mini install 007.png&lt;br /&gt;
File:Ubuntu Mini install 008.png&lt;br /&gt;
File:Ubuntu Mini install 009.png&lt;br /&gt;
File:Ubuntu Mini install 010.png&lt;br /&gt;
File:Ubuntu Mini install 011.png&lt;br /&gt;
File:Ubuntu Mini install 012.png&lt;br /&gt;
File:Ubuntu Mini install 013.png&lt;br /&gt;
File:Ubuntu Mini install 014.png&lt;br /&gt;
File:Ubuntu Mini install 015.png&lt;br /&gt;
File:Ubuntu Mini install 016.png&lt;br /&gt;
File:Ubuntu Mini install 017.png&lt;br /&gt;
File:Ubuntu Mini install 018.png&lt;br /&gt;
File:Ubuntu Mini install 019.png&lt;br /&gt;
File:Ubuntu Mini install 020.png&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=Mini_Ubunto&amp;diff=210</id>
		<title>Mini Ubunto</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=Mini_Ubunto&amp;diff=210"/>
		<updated>2022-01-03T20:15:38Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Much like [[Linux - Mini Debian]], but done with Ubuntu...&lt;br /&gt;
&lt;br /&gt;
=Installing a minimal Ubuntu=&lt;br /&gt;
[[File:Ubuntu Mini install 000.png{{!}}300px{{!}}right{{!}}thumb{{!}}Installer Menu]]&lt;br /&gt;
[[File:Ubuntu Mini install 011.png{{!}}300px{{!}}right{{!}}thumb{{!}}SSH Setup]]&lt;br /&gt;
[[File:Ubuntu Mini install 013.png{{!}}300px{{!}}right{{!}}thumb{{!}}Installation Not ActuallyComplete]]&lt;br /&gt;
[[File:Ubuntu Mini install 014.png{{!}}300px{{!}}right{{!}}thumb{{!}}Installation Complete]]&lt;br /&gt;
[[File:Ubuntu Mini install 017.png{{!}}300px{{!}}right{{!}}thumb{{!}}Boot Screen]]&lt;br /&gt;
[[File:Ubuntu Mini install 018.png{{!}}300px{{!}}right{{!}}thumb{{!}}Success!]]&lt;br /&gt;
&lt;br /&gt;
* Insert the [https://releases.ubuntu.com/20.04.3/ubuntu-20.04.3-live-server-amd64.iso CD/ISO/whatever] &amp;amp; boot the machine/VM from it.&lt;br /&gt;
** I&amp;#039;m running it as VMs under ESXi&lt;br /&gt;
*** &amp;quot;ESXi 6.7 VM&amp;quot;, &amp;quot;Linux&amp;quot;, &amp;quot;Ubuntu Linux (64-bit)&amp;quot;&lt;br /&gt;
*** 4 CPUs, 4GB memory, 16GB storage&lt;br /&gt;
* Ubuntu Server defaults to a non-GUI install&lt;br /&gt;
* Cruze along configuring the system to your liking until you reach the screen titled &amp;quot;&amp;#039;&amp;#039;&amp;#039;SSH Setup&amp;#039;&amp;#039;&amp;#039;&amp;quot;&lt;br /&gt;
* Make sure &amp;#039;&amp;#039;&amp;#039;Install OpenSSH server&amp;#039;&amp;#039;&amp;#039; is selected, then continue&lt;br /&gt;
* Keep cruzing along until it tells you &amp;#039;&amp;#039;&amp;#039;Install complete&amp;#039;&amp;#039;&amp;#039; &amp;lt;big&amp;gt;&amp;#039;&amp;#039;&amp;#039;AND&amp;#039;&amp;#039;&amp;#039;&amp;lt;/big&amp;gt; you get the &amp;#039;&amp;#039;&amp;#039;Reboot Now&amp;#039;&amp;#039;&amp;#039; option at the bottom&lt;br /&gt;
* When you tell it to continue, the system will reboot.&lt;br /&gt;
* It&amp;#039;ll probably fail to unmount the CD/ISO.  Just hit Enter&lt;br /&gt;
* During bootup, Ubunto appears to call home &amp;amp; set up some sort of cloud stuff...  :(&lt;br /&gt;
* When it&amp;#039;s done booting, you won&amp;#039;t see a login prompt until you smack the Enter key again.&lt;br /&gt;
&lt;br /&gt;
All done&lt;br /&gt;
&lt;br /&gt;
[[Linux - Mini Ubuntu - Pictures{{!}}The sequence in pictures...]]&lt;br /&gt;
&lt;br /&gt;
=Configuring the minimal Ubuntu=&lt;br /&gt;
&lt;br /&gt;
=Usage notes=&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=Mini_Debian_-_Pictures&amp;diff=209</id>
		<title>Mini Debian - Pictures</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=Mini_Debian_-_Pictures&amp;diff=209"/>
		<updated>2022-01-03T20:15:17Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;slideshow&amp;quot; showfilename=&amp;quot;yes&amp;quot;&amp;gt;&lt;br /&gt;
File:Debian Mini Install 000.png&lt;br /&gt;
File:Debian Mini Install 001.png&lt;br /&gt;
File:Debian Mini Install 002.png&lt;br /&gt;
File:Debian Mini Install 003.png&lt;br /&gt;
File:Debian Mini Install 004.png&lt;br /&gt;
File:Debian Mini Install 005.png&lt;br /&gt;
File:Debian Mini Install 006.png&lt;br /&gt;
File:Debian Mini Install 007.png&lt;br /&gt;
File:Debian Mini Install 008.png&lt;br /&gt;
File:Debian Mini Install 009.png&lt;br /&gt;
File:Debian Mini Install 010.png&lt;br /&gt;
File:Debian Mini Install 011.png&lt;br /&gt;
File:Debian Mini Install 012.png&lt;br /&gt;
File:Debian Mini Install 013.png&lt;br /&gt;
File:Debian Mini Install 014.png&lt;br /&gt;
File:Debian Mini Install 015.png&lt;br /&gt;
File:Debian Mini Install 016.png&lt;br /&gt;
File:Debian Mini Install 017.png&lt;br /&gt;
File:Debian Mini Install 018.png&lt;br /&gt;
File:Debian Mini Install 019.png&lt;br /&gt;
File:Debian Mini Install 020.png&lt;br /&gt;
File:Debian Mini Install 021.png&lt;br /&gt;
File:Debian Mini Install 022.png&lt;br /&gt;
File:Debian Mini Install 023-a.png&lt;br /&gt;
File:Debian Mini Install 023-b.png&lt;br /&gt;
File:Debian Mini Install 024.png&lt;br /&gt;
File:Debian Mini Install 025.png&lt;br /&gt;
File:Debian Mini Install 026.png&lt;br /&gt;
File:Debian Mini Install 027.png&lt;br /&gt;
File:Debian Mini Install 028.png&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=Mini_Debian&amp;diff=208</id>
		<title>Mini Debian</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=Mini_Debian&amp;diff=208"/>
		<updated>2022-01-03T20:14:38Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;So...&lt;br /&gt;
&lt;br /&gt;
A full desktop system as a server VM really is a bit silly.&lt;br /&gt;
&lt;br /&gt;
Let&amp;#039;s do something different.&lt;br /&gt;
&lt;br /&gt;
= Installing a minimal Debian =&lt;br /&gt;
[[File:Debian Mini Install 000.png{{!}}300px{{!}}right{{!}}thumb{{!}}Installer Menu]]&lt;br /&gt;
[[File:Debian Mini Install 023-b.png{{!}}300px{{!}}right{{!}}thumb{{!}}Software selection]]&lt;br /&gt;
[[File:Debian Mini Install 026.png{{!}}300px{{!}}right{{!}}thumb{{!}}Installation Complete]]&lt;br /&gt;
[[File:Debian Mini Install 027.png{{!}}300px{{!}}right{{!}}thumb{{!}}Boot Screen]]&lt;br /&gt;
[[File:Debian Mini Install 028.png{{!}}300px{{!}}right{{!}}thumb{{!}}Great Success!]]&lt;br /&gt;
&lt;br /&gt;
* Insert the [https://www.debian.org/download CD/ISO/whatever] &amp;amp; boot the machine/VM from it.&lt;br /&gt;
** I&amp;#039;m running it as VMs under ESXi&lt;br /&gt;
*** &amp;quot;ESXi 6.7 VM&amp;quot;, &amp;quot;Linux&amp;quot;, &amp;quot;Debian GNU/Linux 10 (64-bit)&amp;quot;&lt;br /&gt;
*** 4 CPUs, 4GB memory, 16GB storage&lt;br /&gt;
* When the installer menu appears, select &amp;quot;&amp;#039;&amp;#039;&amp;#039;Install&amp;#039;&amp;#039;&amp;#039;&amp;quot; rather than the default &amp;quot;&amp;#039;&amp;#039;&amp;#039;Graphical Install&amp;#039;&amp;#039;&amp;#039;&amp;quot; option&lt;br /&gt;
* Cruze along configuring the system to your liking until you reach the screen titled &amp;quot;&amp;#039;&amp;#039;&amp;#039;[!] Software selection&amp;#039;&amp;#039;&amp;#039;&amp;quot;&lt;br /&gt;
* Make sure that only &amp;#039;&amp;#039;&amp;#039;SSH server&amp;#039;&amp;#039;&amp;#039; and &amp;#039;&amp;#039;&amp;#039;standard system utilities&amp;#039;&amp;#039;&amp;#039; are selected, then continue&lt;br /&gt;
* Keep cruzing along until it tells you &amp;#039;&amp;#039;&amp;#039;Installation complete&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* When you tell it to continue, the system will reboot.&lt;br /&gt;
All done&lt;br /&gt;
&lt;br /&gt;
[[Linux - Mini Debian - Pictures{{!}}The sequence in pictures...]]&lt;br /&gt;
&lt;br /&gt;
=Configuring the minimal Debian=&lt;br /&gt;
==Install &amp;amp; configure &amp;#039;&amp;#039;&amp;#039;sudo&amp;#039;&amp;#039;&amp;#039;==&lt;br /&gt;
By default, root account is not enabled to login to Debian. As a result, a sudo authentication is needed. (But it doesn&amp;#039;t seem to be installed by default...)&lt;br /&gt;
&lt;br /&gt;
# Log in to the Debian machine and switch to root using the &amp;lt;code&amp;gt;su&amp;lt;/code&amp;gt; command.&lt;br /&gt;
#* &amp;lt;code&amp;gt;su -&amp;lt;/code&amp;gt;&lt;br /&gt;
#* (remember that root pasword you picked during install?)&lt;br /&gt;
# If &amp;lt;code&amp;gt;sudo&amp;lt;/code&amp;gt; is not installed, install the sudo package using the following command:&lt;br /&gt;
#* &amp;lt;code&amp;gt;apt install sudo&amp;lt;/code&amp;gt;&lt;br /&gt;
# Add an existing user with id=&amp;#039;&amp;#039;&amp;#039;USER&amp;#039;&amp;#039;&amp;#039; to group=sudo:&lt;br /&gt;
#* &amp;lt;code&amp;gt;adduser &amp;#039;&amp;#039;&amp;#039;USER&amp;#039;&amp;#039;&amp;#039; sudo&amp;lt;/code&amp;gt;&lt;br /&gt;
# Log into the &amp;#039;&amp;#039;&amp;#039;USER&amp;#039;&amp;#039;&amp;#039; shell, and type the following command to verify that the user is authorized:&lt;br /&gt;
#* &amp;lt;code&amp;gt;sudo -v&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You have successfully configured &amp;lt;code&amp;gt;sudo&amp;lt;/code&amp;gt; in Debian.&lt;br /&gt;
&lt;br /&gt;
==Install &amp;amp; configure &amp;#039;&amp;#039;&amp;#039;vim&amp;#039;&amp;#039;&amp;#039;==&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;sudo apt install vim&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then fix the &amp;#039;&amp;#039;&amp;#039;Visual Mode&amp;#039;&amp;#039;&amp;#039; silliness...&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;sudo vim ~/.vimrc&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 set mouse-=a&lt;br /&gt;
 syntax on&lt;br /&gt;
&lt;br /&gt;
==Aliases for ls==&lt;br /&gt;
&lt;br /&gt;
ls needs it&amp;#039;s aliases set.  (Who in heck doesn&amp;#039;t use &amp;#039;&amp;#039;&amp;#039;ll&amp;#039;&amp;#039;&amp;#039; for &amp;lt;code&amp;gt;ls -l&amp;lt;/code&amp;gt;???)&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;vi ~/.bashrc&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Scroll down &amp;amp; you&amp;#039;ll see:&lt;br /&gt;
&lt;br /&gt;
 # some more ls aliases&lt;br /&gt;
 #alias ll=&amp;#039;ls -l&amp;#039;&lt;br /&gt;
 #alias la=&amp;#039;ls -A&amp;#039;&lt;br /&gt;
 #alias l=&amp;#039;ls -CF&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Un-comment those aliases!&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;source ~/.bashrc&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=More Configurations=&lt;br /&gt;
==Samba==&lt;br /&gt;
Basic Samba install &amp;amp; minimal configuration&lt;br /&gt;
&lt;br /&gt;
Create a test folder &amp;amp; file to be shared. (Assuming you&amp;#039;ll replace &amp;#039;&amp;#039;&amp;#039;USER&amp;#039;&amp;#039;&amp;#039; with your own username...)&lt;br /&gt;
* mkdir ~&amp;#039;&amp;#039;&amp;#039;USER&amp;#039;&amp;#039;&amp;#039;/share&lt;br /&gt;
* touch ~&amp;#039;&amp;#039;&amp;#039;USER&amp;#039;&amp;#039;&amp;#039;/share/Foo&lt;br /&gt;
&lt;br /&gt;
Install Samba&lt;br /&gt;
* sudo apt install samba -y&lt;br /&gt;
&lt;br /&gt;
Configure the test share&lt;br /&gt;
* sudo vi /etc/samba/smb.conf&lt;br /&gt;
&lt;br /&gt;
 [New_share]&lt;br /&gt;
     comment= my share&lt;br /&gt;
     path = /home/&amp;#039;&amp;#039;&amp;#039;USER&amp;#039;&amp;#039;&amp;#039;/share&lt;br /&gt;
     browseable  = yes&lt;br /&gt;
     Read only = no&lt;br /&gt;
     guest  ok = no&lt;br /&gt;
     valid users = &amp;#039;&amp;#039;&amp;#039;USER&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
* sudo systemctl restart smbd&lt;br /&gt;
&lt;br /&gt;
Set up username &amp;amp; password for Samba acess&lt;br /&gt;
* sudo smbpasswd -a &amp;#039;&amp;#039;&amp;#039;USER&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Additional bits to install (Client &amp;amp; utils &amp;amp; such...)&lt;br /&gt;
* sudo apt install cifs-utils samba-client -y&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;NOTE:&amp;#039;&amp;#039;&amp;#039; At this point, the share can be accessed, but you need to know where it is because Samba does not advertise it&amp;#039;s presence.&lt;br /&gt;
&lt;br /&gt;
You &amp;#039;&amp;#039;&amp;#039;can&amp;#039;&amp;#039;&amp;#039; see the shares from the machine by entering &amp;lt;code&amp;gt;smb://&amp;#039;&amp;#039;&amp;#039;MACHINENAME&amp;#039;&amp;#039;&amp;#039;/&amp;lt;/code&amp;gt; into the address bar of your file browser.&lt;br /&gt;
&lt;br /&gt;
=Usage notes=&lt;br /&gt;
==Missing commands==&lt;br /&gt;
If you&amp;#039;re used to Ubuntu-derived Linuxes, you may note that a lot of commands cannot be found while signed in as a regular user. Before attempting to install them, check with &amp;#039;&amp;#039;&amp;#039;sudo&amp;#039;&amp;#039;&amp;#039; or while signed in as &amp;#039;&amp;#039;&amp;#039;root&amp;#039;&amp;#039;&amp;#039;. The root user account has a different search path that includes the programs that are normally not allowed to regular users anyhow.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;One good example:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;ifconfig&amp;lt;/code&amp;gt; results in&amp;#039;&amp;#039;&amp;#039;-bash: ifconfig: command not found&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
but...&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;sudo ifconfig&amp;lt;/code&amp;gt; results in details about your network connection(s)&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=Name-based_Virtual_Host_Support&amp;diff=207</id>
		<title>Name-based Virtual Host Support</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=Name-based_Virtual_Host_Support&amp;diff=207"/>
		<updated>2022-01-03T20:13:20Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Apache web server Can easily be configured to serve up different content based on the &amp;#039;&amp;#039;&amp;#039;name&amp;#039;&amp;#039;&amp;#039; it was called as.&lt;br /&gt;
&lt;br /&gt;
This allows fun stuff like giving your machine multiple names via DNS and making it look like a whole server farm.&lt;br /&gt;
&lt;br /&gt;
This also makes life easier if you&amp;#039;re using it to proxy for other machines internal to your network.&lt;br /&gt;
&lt;br /&gt;
In these notes, we&amp;#039;ll be setting up 4 names for the server. &amp;#039;&amp;#039;&amp;#039;foo.bar&amp;#039;&amp;#039;&amp;#039; &amp;amp; &amp;#039;&amp;#039;&amp;#039;www.foo.bar&amp;#039;&amp;#039;&amp;#039; which will be the default web site. &amp;#039;&amp;#039;&amp;#039;Wiki.foo.bar&amp;#039;&amp;#039;&amp;#039; which will be served up by the same install of Apache, but still independant of the default web site. &amp;#039;&amp;#039;&amp;#039;Proxy.foo.bar&amp;#039;&amp;#039;&amp;#039; which is on another machine completely &amp;amp; wouldn&amp;#039;t otherwise be reachable.&lt;br /&gt;
&lt;br /&gt;
You will need to set up external DNS for &amp;#039;&amp;#039;&amp;#039;Wiki.foo.bar&amp;#039;&amp;#039;&amp;#039; &amp;amp; &amp;#039;&amp;#039;&amp;#039;Proxy.foo.bar&amp;#039;&amp;#039;&amp;#039; (which are NOT the same as your normal webserver name as far as the outside world is concerned)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;&amp;#039;&amp;#039;&amp;#039;NOTE:&amp;#039;&amp;#039;&amp;#039;&amp;lt;/big&amp;gt; It is probably smartest to put the &amp;lt;code&amp;gt;VirtualHost&amp;lt;/code&amp;gt; sections in separate files in the &amp;lt;code&amp;gt;/etc/apache2/sites-available/&amp;lt;/code&amp;gt; folder, then make symbolic links to them in &amp;lt;code&amp;gt;/etc/apache2/sites-enabled&amp;lt;/code&amp;gt; This will simplify maintenance down the road...&lt;br /&gt;
&lt;br /&gt;
(But, if you really want to, they can simply be added to &amp;lt;code&amp;gt;/etc/apache2/apache2.conf)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=A sample set of files for &amp;lt;code&amp;gt;/etc/apache2/sites-available&amp;lt;/code&amp;gt;:=&lt;br /&gt;
&lt;br /&gt;
Note the &amp;lt;code&amp;gt;SSLCertificateFile&amp;lt;/code&amp;gt; &amp;amp; &amp;lt;code&amp;gt;SSLCertificateKeyFile&amp;lt;/code&amp;gt; lines...  In these examples, they are based on the self-signed certs built into Apache.  If you have proper certs, these will reflect that.&lt;br /&gt;
&lt;br /&gt;
==www.foo.bar.conf==&lt;br /&gt;
&lt;br /&gt;
 ##########################&lt;br /&gt;
 # WWW.foo.bar            #&lt;br /&gt;
 # our default web server #&lt;br /&gt;
 ##########################&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;VirtualHost *:80&amp;gt;&lt;br /&gt;
     ServerName foo.bar&lt;br /&gt;
     Redirect permanent / &amp;lt;nowiki&amp;gt;https://www.foo.bar/&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;VirtualHost *:80&amp;gt;&lt;br /&gt;
     ServerName www.foo.bar&lt;br /&gt;
     Redirect permanent / &amp;lt;nowiki&amp;gt;https://www.foo.bar/&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;VirtualHost _default_:443&amp;gt;&lt;br /&gt;
     ServerName www.foo.bar&lt;br /&gt;
     DocumentRoot &amp;quot;/var/www/html&amp;quot;&lt;br /&gt;
     SSLCertificateFile  /etc/ssl/certs/ssl-cert-snakeoil.pem&lt;br /&gt;
     SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key&lt;br /&gt;
 &amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==wiki.foo.bar.conf==&lt;br /&gt;
&lt;br /&gt;
 #########################&lt;br /&gt;
 # Wiki.foo.bar          #&lt;br /&gt;
 # our Wiki server       #&lt;br /&gt;
 #########################&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;VirtualHost *:80&amp;gt;&lt;br /&gt;
     ServerName wiki.foo.bar&lt;br /&gt;
     Redirect permanent / &amp;lt;nowiki&amp;gt;https://wiki.foo.bar/&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;VirtualHost _default_:443&amp;gt;&lt;br /&gt;
     ServerName wiki.foo.bar&lt;br /&gt;
     DocumentRoot &amp;quot;/var/www/wiki&amp;quot;&lt;br /&gt;
     SSLCertificateFile  /etc/ssl/certs/ssl-cert-snakeoil.pem&lt;br /&gt;
     SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key&lt;br /&gt;
 &amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==proxy.foo.bar.conf==&lt;br /&gt;
&lt;br /&gt;
 ################################################&lt;br /&gt;
 # Proxy for proxy.foo.bar                      #&lt;br /&gt;
 # an ESXi-based server on our internal network #&lt;br /&gt;
 ################################################&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;VirtualHost *:80&amp;gt;&lt;br /&gt;
     ServerName proxy.foo.bar&lt;br /&gt;
     Redirect permanent / &amp;lt;nowiki&amp;gt;https://proxy.foo.bar/&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;VirtualHost _default_:443&amp;gt;&lt;br /&gt;
     ServerName proxy.foo.bar&lt;br /&gt;
     ProxyRequests on&lt;br /&gt;
     SSLEngine On&lt;br /&gt;
     SSLProxyEngine On&lt;br /&gt;
     ProxyPreserveHost On&lt;br /&gt;
 &lt;br /&gt;
     # Redirect WSS traffic (Needed if this is a proxy for ESXi)&lt;br /&gt;
     ProxyPass /ticket/ wss://proxy.foo.bar/ticket/&lt;br /&gt;
     ProxyPassReverse /ticket/ wss://proxy.foo.bar/ticket/&lt;br /&gt;
 &lt;br /&gt;
     # Redirect HTTPS traffic&lt;br /&gt;
     ProxyPass / &amp;lt;nowiki&amp;gt;https://proxy.foo.bar/&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
     ProxyPassReverse / &amp;lt;nowiki&amp;gt;https://proxy.foo.bar/&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
     SSLCertificateFile  /etc/ssl/certs/ssl-cert-snakeoil.pem&lt;br /&gt;
     SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key&lt;br /&gt;
     &amp;lt;Proxy &amp;quot;*&amp;quot;&amp;gt;&lt;br /&gt;
         Order allow,deny&lt;br /&gt;
         Allow from all&lt;br /&gt;
     &amp;lt;/Proxy&amp;gt;&lt;br /&gt;
         ErrorLog /var/log/apache2/Proxy/proxy_log&lt;br /&gt;
         CustomLog /var/log/apache2/Proxy/proxy-access_log combined&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Enabling the Virtual Hosts=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;&amp;lt;big&amp;gt;NOTE:&amp;lt;/big&amp;gt;&amp;#039;&amp;#039;&amp;#039; Whichever &amp;#039;&amp;#039;&amp;#039;VirtualHost&amp;#039;&amp;#039;&amp;#039; gets configured &amp;#039;&amp;#039;&amp;#039;FIRST&amp;#039;&amp;#039;&amp;#039; becomes the default host.  Any name that successfully resolves to the server but is not among the names explicitly handled will be served this &amp;#039;&amp;#039;&amp;#039;VirtualHost&amp;#039;&amp;#039;&amp;#039;. (It may help to start the filename with a &amp;#039;0&amp;#039;. eg: &amp;#039;&amp;#039;&amp;#039;0-www.foo.bar.conf&amp;#039;&amp;#039;&amp;#039;) &lt;br /&gt;
&lt;br /&gt;
create the links &lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;cd  /etc/apache2/sites-enabled&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo ln -s ../sites-available/www.foo.bar.conf .&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo ln -s ../sites-available/wiki.foo.bar.conf .&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo ln -s ../sites-available/proxy.foo.bar.conf .&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and restart Apache: &lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo systemctl restart apache2&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:ServerBuilding]]&lt;br /&gt;
[[Category:WebServers]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=HowTo_-_vi&amp;diff=206</id>
		<title>HowTo - vi</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=HowTo_-_vi&amp;diff=206"/>
		<updated>2022-01-03T20:12:07Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;So far... Just some links.&lt;br /&gt;
&lt;br /&gt;
But they are ones that I consider reasonably good.&lt;br /&gt;
&lt;br /&gt;
*[https://www.cs.colostate.edu/helpdocs/vi.html Basic vi Commands] (CSU)&lt;br /&gt;
*[https://www.ccsf.edu/Pub/Fac/vi.html UNIX:  vi Editor] (City College of SF)&lt;br /&gt;
*[https://www.guru99.com/the-vi-editor.html VI Text Editor with Commands: Linux/Unix Tutorial] (Guru99)&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:SoftwareTools]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=UserDir&amp;diff=204</id>
		<title>UserDir</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=UserDir&amp;diff=204"/>
		<updated>2022-01-03T20:05:28Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Sometimes, you might want individual users with accounts on the webserver to have personal pages...&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo a2enmod userdir&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo systemctl restart apache2&amp;lt;/code&amp;gt;&lt;br /&gt;
To set up a personal page for the currently logged-in user:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;mkdir ~/public_html&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;chmod ugo+rX ~/public_html&amp;lt;/code&amp;gt;&lt;br /&gt;
*create an index.html file in ~/public_html&lt;br /&gt;
*&amp;lt;code&amp;gt;vi ~/public_html/index.html&amp;lt;/code&amp;gt;&lt;br /&gt;
Assuming this users name is &amp;#039;&amp;#039;&amp;#039;fred&amp;#039;&amp;#039;&amp;#039;, his page can now be reached at &amp;#039;&amp;#039;&amp;#039;MYSERVER.MYDOMAIN.NET/~fred/&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
[[Category:WebServers]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=WebServer_-_UserDir&amp;diff=203</id>
		<title>WebServer - UserDir</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=WebServer_-_UserDir&amp;diff=203"/>
		<updated>2022-01-03T20:04:54Z</updated>

		<summary type="html">&lt;p&gt;Bart: Bart moved page WebServer - UserDir to UserDir: Cleanup&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[UserDir]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=UserDir&amp;diff=202</id>
		<title>UserDir</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=UserDir&amp;diff=202"/>
		<updated>2022-01-03T20:04:54Z</updated>

		<summary type="html">&lt;p&gt;Bart: Bart moved page WebServer - UserDir to UserDir: Cleanup&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Sometimes, you might want individual users with accounts on the webserver to have personal pages...&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo a2enmod userdir&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo systemctl restart apache2&amp;lt;/code&amp;gt;&lt;br /&gt;
To set up a personal page for the currently logged-in user:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;mkdir ~/public_html&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;chmod ugo+rX ~/public_html&amp;lt;/code&amp;gt;&lt;br /&gt;
*create an index.html file in ~/public_html&lt;br /&gt;
*&amp;lt;code&amp;gt;vi ~/public_html/index.html&amp;lt;/code&amp;gt;&lt;br /&gt;
Assuming this users name is &amp;#039;&amp;#039;&amp;#039;fred&amp;#039;&amp;#039;&amp;#039;, his page can now be reached at &amp;#039;&amp;#039;&amp;#039;MYSERVER.MYDOMAIN.NET/~fred/&amp;#039;&amp;#039;&amp;#039;&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=WebServer_-_Name-based_Virtual_Host_Support&amp;diff=200</id>
		<title>WebServer - Name-based Virtual Host Support</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=WebServer_-_Name-based_Virtual_Host_Support&amp;diff=200"/>
		<updated>2022-01-03T20:00:26Z</updated>

		<summary type="html">&lt;p&gt;Bart: Bart moved page WebServer - Name-based Virtual Host Support to Name-based Virtual Host Support: Cleanup&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Name-based Virtual Host Support]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=Name-based_Virtual_Host_Support&amp;diff=199</id>
		<title>Name-based Virtual Host Support</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=Name-based_Virtual_Host_Support&amp;diff=199"/>
		<updated>2022-01-03T20:00:26Z</updated>

		<summary type="html">&lt;p&gt;Bart: Bart moved page WebServer - Name-based Virtual Host Support to Name-based Virtual Host Support: Cleanup&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Apache web server Can easily be configured to serve up different content based on the &amp;#039;&amp;#039;&amp;#039;name&amp;#039;&amp;#039;&amp;#039; it was called as.&lt;br /&gt;
&lt;br /&gt;
This allows fun stuff like giving your machine multiple names via DNS and making it look like a whole server farm.&lt;br /&gt;
&lt;br /&gt;
This also makes life easier if you&amp;#039;re using it to proxy for other machines internal to your network.&lt;br /&gt;
&lt;br /&gt;
In these notes, we&amp;#039;ll be setting up 4 names for the server. &amp;#039;&amp;#039;&amp;#039;foo.bar&amp;#039;&amp;#039;&amp;#039; &amp;amp; &amp;#039;&amp;#039;&amp;#039;www.foo.bar&amp;#039;&amp;#039;&amp;#039; which will be the default web site. &amp;#039;&amp;#039;&amp;#039;Wiki.foo.bar&amp;#039;&amp;#039;&amp;#039; which will be served up by the same install of Apache, but still independant of the default web site. &amp;#039;&amp;#039;&amp;#039;Proxy.foo.bar&amp;#039;&amp;#039;&amp;#039; which is on another machine completely &amp;amp; wouldn&amp;#039;t otherwise be reachable.&lt;br /&gt;
&lt;br /&gt;
You will need to set up external DNS for &amp;#039;&amp;#039;&amp;#039;Wiki.foo.bar&amp;#039;&amp;#039;&amp;#039; &amp;amp; &amp;#039;&amp;#039;&amp;#039;Proxy.foo.bar&amp;#039;&amp;#039;&amp;#039; (which are NOT the same as your normal webserver name as far as the outside world is concerned)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;&amp;#039;&amp;#039;&amp;#039;NOTE:&amp;#039;&amp;#039;&amp;#039;&amp;lt;/big&amp;gt; It is probably smartest to put the &amp;lt;code&amp;gt;VirtualHost&amp;lt;/code&amp;gt; sections in separate files in the &amp;lt;code&amp;gt;/etc/apache2/sites-available/&amp;lt;/code&amp;gt; folder, then make symbolic links to them in &amp;lt;code&amp;gt;/etc/apache2/sites-enabled&amp;lt;/code&amp;gt; This will simplify maintenance down the road...&lt;br /&gt;
&lt;br /&gt;
(But, if you really want to, they can simply be added to &amp;lt;code&amp;gt;/etc/apache2/apache2.conf)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=A sample set of files for &amp;lt;code&amp;gt;/etc/apache2/sites-available&amp;lt;/code&amp;gt;:=&lt;br /&gt;
&lt;br /&gt;
Note the &amp;lt;code&amp;gt;SSLCertificateFile&amp;lt;/code&amp;gt; &amp;amp; &amp;lt;code&amp;gt;SSLCertificateKeyFile&amp;lt;/code&amp;gt; lines...  In these examples, they are based on the self-signed certs built into Apache.  If you have proper certs, these will reflect that.&lt;br /&gt;
&lt;br /&gt;
==www.foo.bar.conf==&lt;br /&gt;
&lt;br /&gt;
 ##########################&lt;br /&gt;
 # WWW.foo.bar            #&lt;br /&gt;
 # our default web server #&lt;br /&gt;
 ##########################&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;VirtualHost *:80&amp;gt;&lt;br /&gt;
     ServerName foo.bar&lt;br /&gt;
     Redirect permanent / &amp;lt;nowiki&amp;gt;https://www.foo.bar/&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;VirtualHost *:80&amp;gt;&lt;br /&gt;
     ServerName www.foo.bar&lt;br /&gt;
     Redirect permanent / &amp;lt;nowiki&amp;gt;https://www.foo.bar/&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;VirtualHost _default_:443&amp;gt;&lt;br /&gt;
     ServerName www.foo.bar&lt;br /&gt;
     DocumentRoot &amp;quot;/var/www/html&amp;quot;&lt;br /&gt;
     SSLCertificateFile  /etc/ssl/certs/ssl-cert-snakeoil.pem&lt;br /&gt;
     SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key&lt;br /&gt;
 &amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==wiki.foo.bar.conf==&lt;br /&gt;
&lt;br /&gt;
 #########################&lt;br /&gt;
 # Wiki.foo.bar          #&lt;br /&gt;
 # our Wiki server       #&lt;br /&gt;
 #########################&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;VirtualHost *:80&amp;gt;&lt;br /&gt;
     ServerName wiki.foo.bar&lt;br /&gt;
     Redirect permanent / &amp;lt;nowiki&amp;gt;https://wiki.foo.bar/&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;VirtualHost _default_:443&amp;gt;&lt;br /&gt;
     ServerName wiki.foo.bar&lt;br /&gt;
     DocumentRoot &amp;quot;/var/www/wiki&amp;quot;&lt;br /&gt;
     SSLCertificateFile  /etc/ssl/certs/ssl-cert-snakeoil.pem&lt;br /&gt;
     SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key&lt;br /&gt;
 &amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==proxy.foo.bar.conf==&lt;br /&gt;
&lt;br /&gt;
 ################################################&lt;br /&gt;
 # Proxy for proxy.foo.bar                      #&lt;br /&gt;
 # an ESXi-based server on our internal network #&lt;br /&gt;
 ################################################&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;VirtualHost *:80&amp;gt;&lt;br /&gt;
     ServerName proxy.foo.bar&lt;br /&gt;
     Redirect permanent / &amp;lt;nowiki&amp;gt;https://proxy.foo.bar/&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;VirtualHost _default_:443&amp;gt;&lt;br /&gt;
     ServerName proxy.foo.bar&lt;br /&gt;
     ProxyRequests on&lt;br /&gt;
     SSLEngine On&lt;br /&gt;
     SSLProxyEngine On&lt;br /&gt;
     ProxyPreserveHost On&lt;br /&gt;
 &lt;br /&gt;
     # Redirect WSS traffic (Needed if this is a proxy for ESXi)&lt;br /&gt;
     ProxyPass /ticket/ wss://proxy.foo.bar/ticket/&lt;br /&gt;
     ProxyPassReverse /ticket/ wss://proxy.foo.bar/ticket/&lt;br /&gt;
 &lt;br /&gt;
     # Redirect HTTPS traffic&lt;br /&gt;
     ProxyPass / &amp;lt;nowiki&amp;gt;https://proxy.foo.bar/&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
     ProxyPassReverse / &amp;lt;nowiki&amp;gt;https://proxy.foo.bar/&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
     SSLCertificateFile  /etc/ssl/certs/ssl-cert-snakeoil.pem&lt;br /&gt;
     SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key&lt;br /&gt;
     &amp;lt;Proxy &amp;quot;*&amp;quot;&amp;gt;&lt;br /&gt;
         Order allow,deny&lt;br /&gt;
         Allow from all&lt;br /&gt;
     &amp;lt;/Proxy&amp;gt;&lt;br /&gt;
         ErrorLog /var/log/apache2/Proxy/proxy_log&lt;br /&gt;
         CustomLog /var/log/apache2/Proxy/proxy-access_log combined&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Enabling the Virtual Hosts=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;&amp;lt;big&amp;gt;NOTE:&amp;lt;/big&amp;gt;&amp;#039;&amp;#039;&amp;#039; Whichever &amp;#039;&amp;#039;&amp;#039;VirtualHost&amp;#039;&amp;#039;&amp;#039; gets configured &amp;#039;&amp;#039;&amp;#039;FIRST&amp;#039;&amp;#039;&amp;#039; becomes the default host.  Any name that successfully resolves to the server but is not among the names explicitly handled will be served this &amp;#039;&amp;#039;&amp;#039;VirtualHost&amp;#039;&amp;#039;&amp;#039;. (It may help to start the filename with a &amp;#039;0&amp;#039;. eg: &amp;#039;&amp;#039;&amp;#039;0-www.foo.bar.conf&amp;#039;&amp;#039;&amp;#039;) &lt;br /&gt;
&lt;br /&gt;
create the links &lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;cd  /etc/apache2/sites-enabled&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo ln -s ../sites-available/www.foo.bar.conf .&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo ln -s ../sites-available/wiki.foo.bar.conf .&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo ln -s ../sites-available/proxy.foo.bar.conf .&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and restart Apache: &lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo systemctl restart apache2&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=Category:ObsoleteStuff&amp;diff=198</id>
		<title>Category:ObsoleteStuff</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=Category:ObsoleteStuff&amp;diff=198"/>
		<updated>2022-01-03T19:58:39Z</updated>

		<summary type="html">&lt;p&gt;Bart: Created page with &amp;quot;Things in this category exist here to help with maintaining things that really should just be upgraded.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Things in this category exist here to help with maintaining things that really should just be upgraded.&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=WebServer_-_Mint_19.3&amp;diff=197</id>
		<title>WebServer - Mint 19.3</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=WebServer_-_Mint_19.3&amp;diff=197"/>
		<updated>2022-01-03T19:57:49Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;span style=&amp;quot;color:#c0392b&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039;Note:&amp;#039;&amp;#039;&amp;#039; On Mint 19.3, the instructions here for [[WebServer - Basic LAMP Stack Install{{!}}installing the LAMP stack]] installs php 7.2.24. On Mint 20, this installs php 7.4.3. This &amp;#039;&amp;#039;MIGHT&amp;#039;&amp;#039; be an important point to keep in mind for later...&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you expect to need php newer than 7.2.24 on a Mint 19.3 server, force it to upgrade before you move on to installing the packages:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo add-apt-repository ppa:ondrej/php # Press enter to confirm.&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo apt update&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo apt upgrade&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;php -v&amp;lt;/code&amp;gt;&lt;br /&gt;
(Verify that it&amp;#039;s showing a suitable version of php. I&amp;#039;m seeing 7.4.10 in testing...)&lt;br /&gt;
&lt;br /&gt;
[[Category:ServerBuilding]]&lt;br /&gt;
[[Category:WebServers]]&lt;br /&gt;
[[Category:ObsoleteStuff]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=Category:DBServers&amp;diff=196</id>
		<title>Category:DBServers</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=Category:DBServers&amp;diff=196"/>
		<updated>2022-01-03T19:55:03Z</updated>

		<summary type="html">&lt;p&gt;Bart: Created page with &amp;quot;Build &amp;amp; maintain a Database Server.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Build &amp;amp; maintain a Database Server.&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=MySQL&amp;diff=193</id>
		<title>MySQL</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=MySQL&amp;diff=193"/>
		<updated>2022-01-03T19:45:54Z</updated>

		<summary type="html">&lt;p&gt;Bart: Created page with &amp;quot;= MySQL on Debian =  Debian does not have MySQL in its repositories... :(  We can solve this!  Check the [https://dev.mysql.com/downloads/repo/apt/ MySQL download page] for current version...  If you&amp;#039;re happy with &amp;#039;&amp;#039;&amp;#039;8.0.27&amp;#039;&amp;#039;&amp;#039;, go ahead, download &amp;amp; install. * &amp;lt;code&amp;gt;wget &amp;lt;nowiki&amp;gt;https://dev.mysql.com/get/mysql-apt-config_0.8.20-1_all.deb&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; * &amp;lt;code&amp;gt;sudo apt install ./mysql-apt-config_0.8.20-1_all.deb&amp;lt;/code&amp;gt; It may ask about distro version. On LMDE 4 or Sparky...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= MySQL on Debian =&lt;br /&gt;
&lt;br /&gt;
Debian does not have MySQL in its repositories... :(&lt;br /&gt;
&lt;br /&gt;
We can solve this!&lt;br /&gt;
&lt;br /&gt;
Check the [https://dev.mysql.com/downloads/repo/apt/ MySQL download page] for current version...&lt;br /&gt;
&lt;br /&gt;
If you&amp;#039;re happy with &amp;#039;&amp;#039;&amp;#039;8.0.27&amp;#039;&amp;#039;&amp;#039;, go ahead, download &amp;amp; install.&lt;br /&gt;
* &amp;lt;code&amp;gt;wget &amp;lt;nowiki&amp;gt;https://dev.mysql.com/get/mysql-apt-config_0.8.20-1_all.deb&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;sudo apt install ./mysql-apt-config_0.8.20-1_all.deb&amp;lt;/code&amp;gt;&lt;br /&gt;
It may ask about distro version. On LMDE 4 or SparkyLinux 5, Select &amp;#039;&amp;#039;&amp;#039;&amp;quot;debian buster&amp;quot;&amp;#039;&amp;#039;&amp;#039; (It won&amp;#039;t ask on Debian...)&lt;br /&gt;
&lt;br /&gt;
Select &amp;#039;&amp;#039;&amp;#039;&amp;quot;Ok&amp;quot;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Select &amp;#039;&amp;#039;&amp;#039;&amp;quot;Ok&amp;quot;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Some versions will also ask about &amp;lt;u&amp;gt;Configuring mysql-community-server&amp;lt;/u&amp;gt;&lt;br /&gt;
*Pick a good &amp;#039;&amp;#039;&amp;#039;root&amp;#039;&amp;#039;&amp;#039; password...&lt;br /&gt;
*I tend to select &amp;#039;&amp;#039;&amp;#039;Use Legacy Authentication Method&amp;#039;&amp;#039;&amp;#039; because &amp;#039;&amp;#039;&amp;#039;Use Strong Password Encryption&amp;#039;&amp;#039;&amp;#039; is annoying as hell. (Your choice here...)&lt;br /&gt;
Update &amp;amp; Upgrade everything now...&lt;br /&gt;
* &amp;lt;code&amp;gt;sudo apt update&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;sudo apt upgrade&amp;lt;/code&amp;gt;&lt;br /&gt;
Now you can go ahead &amp;amp; pretend they haven&amp;#039;t dropped MySQL from the Debian repos...&lt;br /&gt;
&lt;br /&gt;
[[Category:ServerBuilding]]&lt;br /&gt;
[[Category:WebServers]]&lt;br /&gt;
[[Category:DBServers]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=Category:SoftwareTools&amp;diff=191</id>
		<title>Category:SoftwareTools</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=Category:SoftwareTools&amp;diff=191"/>
		<updated>2022-01-03T19:43:33Z</updated>

		<summary type="html">&lt;p&gt;Bart: Created page with &amp;quot;Utility type software...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Utility type software...&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=Category:Linux&amp;diff=190</id>
		<title>Category:Linux</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=Category:Linux&amp;diff=190"/>
		<updated>2022-01-03T19:42:57Z</updated>

		<summary type="html">&lt;p&gt;Bart: Created page with &amp;quot;Things related to Linux...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Things related to Linux...&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=Linux_Stuff&amp;diff=189</id>
		<title>Linux Stuff</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=Linux_Stuff&amp;diff=189"/>
		<updated>2022-01-03T19:41:52Z</updated>

		<summary type="html">&lt;p&gt;Bart: /* Linux Applications &amp;amp; Tools */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[http://strangehorizons.com/non-fiction/articles/installing-linux-on-a-dead-badger-users-notes/ Installing Linux on a Dead Badger: User&amp;#039;s Notes]&lt;br /&gt;
&lt;br /&gt;
= Installation Assistance =&lt;br /&gt;
== Non-GUI Linux ==&lt;br /&gt;
* [[Linux - Mini Debian{{!}}Minimal Debian]]&lt;br /&gt;
* [[Linux - Mini Ubunto{{!}}Minimal Ubuntu]]&lt;br /&gt;
* [[Linux - LFS{{!}}Linux From Scratch]]&lt;br /&gt;
&lt;br /&gt;
= Linux Applications &amp;amp; Tools =&lt;br /&gt;
* [[Fixing vim{{!}}vim]]&lt;br /&gt;
&lt;br /&gt;
= Linux for the Desktop =&lt;br /&gt;
All Linux distros should attempt to be as user friendly as possible, that&amp;#039;s the sign of a polished well made OS. And no distro should ever become complacent about the quality of it&amp;#039;s UX, all distros should always strive to make things better, every time a new user becomes confused, their experience should be used to refine the UX design to make the OS better.I like Linux Mint because it attempts to be as user friendly as possible. Some people call this approach &amp;quot;A beginner Linux distro&amp;quot;. I disagree. Linux Mint is a distro for all users, new and experienced. From mums who spend all day on Facebook, to programmers. - grady_vuckovic (reddit)&lt;br /&gt;
&lt;br /&gt;
= Bunches of other stuff =&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;&amp;lt;big&amp;gt;[[Linux - N00b tips!{{!}}n00b tips!]]&amp;lt;/big&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
*[[Linux - Distributions{{!}}Distributions]]&lt;br /&gt;
**[[Linux - Desktop Environments{{!}}Desktop Environments]]&lt;br /&gt;
**[[Linux - Window Managers{{!}}Window Managers]]&lt;br /&gt;
**[[Linux - File Managers{{!}}File Managers]]&lt;br /&gt;
*[[Linux - How-Tos{{!}}How-Tos]]&lt;br /&gt;
**[[Linux - Tutorials{{!}}Tutorials]]&lt;br /&gt;
**File Sharing&lt;br /&gt;
***[[Linux - AutoMounting the stock network shares{{!}}AutoMounting the stock network shares (SMB) on Linux]]&lt;br /&gt;
***[[Linux - NFS{{!}}NFS]]&lt;br /&gt;
**[[Linux - Remote Desktop{{!}}Remote Desktop]]&lt;br /&gt;
**[[Linux - Multimedia{{!}}Multimedia]]&lt;br /&gt;
*[[Linux - Smart Linux Tricks{{!}}&amp;lt;s&amp;gt;Stupid&amp;lt;/s&amp;gt; Smart Linux Tricks]]&lt;br /&gt;
*[[Linux - Tricks{{!}}Tricks]]&lt;br /&gt;
*[[Linux - Customizations{{!}}Customizations]]&lt;br /&gt;
*[[Linux - Shell Scripts{{!}}Shell Scripts]]&lt;br /&gt;
*[[Linux - Troubleshooting{{!}}Troubleshooting]]&lt;br /&gt;
**&lt;br /&gt;
*[[Linux - Reference Links{{!}}Linux Reference Links]]&lt;br /&gt;
*[[Linux - Useful (or maybe just fun) Applications &amp;amp; Utilities{{!}}Useful (or maybe just fun) Applications &amp;amp; Utilities]]&lt;br /&gt;
*[[Linux - Getting rid of the Software Rendering Mode message{{!}}VMs - Software Rendering Mode]]&lt;br /&gt;
*[[Linux - How to use vi (or vim){{!}}How to use vi (or vim)]]&lt;br /&gt;
*[[Linux - Stats over MQTT{{!}}Stats over MQTT]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=Linux_Stuff&amp;diff=188</id>
		<title>Linux Stuff</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=Linux_Stuff&amp;diff=188"/>
		<updated>2022-01-03T19:41:13Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[http://strangehorizons.com/non-fiction/articles/installing-linux-on-a-dead-badger-users-notes/ Installing Linux on a Dead Badger: User&amp;#039;s Notes]&lt;br /&gt;
&lt;br /&gt;
= Installation Assistance =&lt;br /&gt;
== Non-GUI Linux ==&lt;br /&gt;
* [[Linux - Mini Debian{{!}}Minimal Debian]]&lt;br /&gt;
* [[Linux - Mini Ubunto{{!}}Minimal Ubuntu]]&lt;br /&gt;
* [[Linux - LFS{{!}}Linux From Scratch]]&lt;br /&gt;
&lt;br /&gt;
= Linux Applications &amp;amp; Tools =&lt;br /&gt;
* vim&lt;br /&gt;
&lt;br /&gt;
= Linux for the Desktop =&lt;br /&gt;
All Linux distros should attempt to be as user friendly as possible, that&amp;#039;s the sign of a polished well made OS. And no distro should ever become complacent about the quality of it&amp;#039;s UX, all distros should always strive to make things better, every time a new user becomes confused, their experience should be used to refine the UX design to make the OS better.I like Linux Mint because it attempts to be as user friendly as possible. Some people call this approach &amp;quot;A beginner Linux distro&amp;quot;. I disagree. Linux Mint is a distro for all users, new and experienced. From mums who spend all day on Facebook, to programmers. - grady_vuckovic (reddit)&lt;br /&gt;
&lt;br /&gt;
= Bunches of other stuff =&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;&amp;lt;big&amp;gt;[[Linux - N00b tips!{{!}}n00b tips!]]&amp;lt;/big&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
*[[Linux - Distributions{{!}}Distributions]]&lt;br /&gt;
**[[Linux - Desktop Environments{{!}}Desktop Environments]]&lt;br /&gt;
**[[Linux - Window Managers{{!}}Window Managers]]&lt;br /&gt;
**[[Linux - File Managers{{!}}File Managers]]&lt;br /&gt;
*[[Linux - How-Tos{{!}}How-Tos]]&lt;br /&gt;
**[[Linux - Tutorials{{!}}Tutorials]]&lt;br /&gt;
**File Sharing&lt;br /&gt;
***[[Linux - AutoMounting the stock network shares{{!}}AutoMounting the stock network shares (SMB) on Linux]]&lt;br /&gt;
***[[Linux - NFS{{!}}NFS]]&lt;br /&gt;
**[[Linux - Remote Desktop{{!}}Remote Desktop]]&lt;br /&gt;
**[[Linux - Multimedia{{!}}Multimedia]]&lt;br /&gt;
*[[Linux - Smart Linux Tricks{{!}}&amp;lt;s&amp;gt;Stupid&amp;lt;/s&amp;gt; Smart Linux Tricks]]&lt;br /&gt;
*[[Linux - Tricks{{!}}Tricks]]&lt;br /&gt;
*[[Linux - Customizations{{!}}Customizations]]&lt;br /&gt;
*[[Linux - Shell Scripts{{!}}Shell Scripts]]&lt;br /&gt;
*[[Linux - Troubleshooting{{!}}Troubleshooting]]&lt;br /&gt;
**&lt;br /&gt;
*[[Linux - Reference Links{{!}}Linux Reference Links]]&lt;br /&gt;
*[[Linux - Useful (or maybe just fun) Applications &amp;amp; Utilities{{!}}Useful (or maybe just fun) Applications &amp;amp; Utilities]]&lt;br /&gt;
*[[Linux - Getting rid of the Software Rendering Mode message{{!}}VMs - Software Rendering Mode]]&lt;br /&gt;
*[[Linux - How to use vi (or vim){{!}}How to use vi (or vim)]]&lt;br /&gt;
*[[Linux - Stats over MQTT{{!}}Stats over MQTT]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=Linux_Stuff&amp;diff=187</id>
		<title>Linux Stuff</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=Linux_Stuff&amp;diff=187"/>
		<updated>2022-01-03T19:40:37Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[http://strangehorizons.com/non-fiction/articles/installing-linux-on-a-dead-badger-users-notes/ Installing Linux on a Dead Badger: User&amp;#039;s Notes]&lt;br /&gt;
&lt;br /&gt;
= Installation Assistance =&lt;br /&gt;
== Non-GUI Linux ==&lt;br /&gt;
* [[Linux - Mini Debian{{!}}Minimal Debian]]&lt;br /&gt;
* [[Linux - Mini Ubunto{{!}}Minimal Ubuntu]]&lt;br /&gt;
* [[Linux - LFS{{!}}Linux From Scratch]]&lt;br /&gt;
&lt;br /&gt;
= Linux Applications &amp;amp; Tools =&lt;br /&gt;
vim&lt;br /&gt;
= Linux for the Desktop =&lt;br /&gt;
All Linux distros should attempt to be as user friendly as possible, that&amp;#039;s the sign of a polished well made OS. And no distro should ever become complacent about the quality of it&amp;#039;s UX, all distros should always strive to make things better, every time a new user becomes confused, their experience should be used to refine the UX design to make the OS better.I like Linux Mint because it attempts to be as user friendly as possible. Some people call this approach &amp;quot;A beginner Linux distro&amp;quot;. I disagree. Linux Mint is a distro for all users, new and experienced. From mums who spend all day on Facebook, to programmers. - grady_vuckovic (reddit)&lt;br /&gt;
&lt;br /&gt;
= Bunches of other stuff =&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;&amp;lt;big&amp;gt;[[Linux - N00b tips!{{!}}n00b tips!]]&amp;lt;/big&amp;gt;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
*[[Linux - Distributions{{!}}Distributions]]&lt;br /&gt;
**[[Linux - Desktop Environments{{!}}Desktop Environments]]&lt;br /&gt;
**[[Linux - Window Managers{{!}}Window Managers]]&lt;br /&gt;
**[[Linux - File Managers{{!}}File Managers]]&lt;br /&gt;
*[[Linux - How-Tos{{!}}How-Tos]]&lt;br /&gt;
**[[Linux - Tutorials{{!}}Tutorials]]&lt;br /&gt;
**File Sharing&lt;br /&gt;
***[[Linux - AutoMounting the stock network shares{{!}}AutoMounting the stock network shares (SMB) on Linux]]&lt;br /&gt;
***[[Linux - NFS{{!}}NFS]]&lt;br /&gt;
**[[Linux - Remote Desktop{{!}}Remote Desktop]]&lt;br /&gt;
**[[Linux - Multimedia{{!}}Multimedia]]&lt;br /&gt;
*[[Linux - Smart Linux Tricks{{!}}&amp;lt;s&amp;gt;Stupid&amp;lt;/s&amp;gt; Smart Linux Tricks]]&lt;br /&gt;
*[[Linux - Tricks{{!}}Tricks]]&lt;br /&gt;
*[[Linux - Customizations{{!}}Customizations]]&lt;br /&gt;
*[[Linux - Shell Scripts{{!}}Shell Scripts]]&lt;br /&gt;
*[[Linux - Troubleshooting{{!}}Troubleshooting]]&lt;br /&gt;
**&lt;br /&gt;
*[[Linux - Reference Links{{!}}Linux Reference Links]]&lt;br /&gt;
*[[Linux - Useful (or maybe just fun) Applications &amp;amp; Utilities{{!}}Useful (or maybe just fun) Applications &amp;amp; Utilities]]&lt;br /&gt;
*[[Linux - Getting rid of the Software Rendering Mode message{{!}}VMs - Software Rendering Mode]]&lt;br /&gt;
*[[Linux - How to use vi (or vim){{!}}How to use vi (or vim)]]&lt;br /&gt;
*[[Linux - Stats over MQTT{{!}}Stats over MQTT]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=Fixing_vim&amp;diff=186</id>
		<title>Fixing vim</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=Fixing_vim&amp;diff=186"/>
		<updated>2022-01-03T19:38:06Z</updated>

		<summary type="html">&lt;p&gt;Bart: Created page with &amp;quot;= VIM (&amp;amp; fixing it on Debian) = (as installed on Debian) has mouse weirdness. Selecting text with the mouse automatically enters &amp;#039;&amp;#039;&amp;#039;visual mode&amp;#039;&amp;#039;&amp;#039;. This prevents useful things like using the mouse to copy/paste while editing in the terminal. (&amp;#039;&amp;#039;&amp;#039;Visual Mode&amp;#039;&amp;#039;&amp;#039; is stupid...)  ==== Solution ==== Either enter:  *&amp;lt;code&amp;gt;:set mouse-=a&amp;lt;/code&amp;gt;  during an editing session, or even better, put it (without the leading colon) in your &amp;lt;code&amp;gt;~/.vimrc&amp;lt;/code&amp;gt; file. (create the &amp;lt;code&amp;gt;.vim...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= VIM (&amp;amp; fixing it on Debian) =&lt;br /&gt;
(as installed on Debian) has mouse weirdness. Selecting text with the mouse automatically enters &amp;#039;&amp;#039;&amp;#039;visual mode&amp;#039;&amp;#039;&amp;#039;. This prevents useful things like using the mouse to copy/paste while editing in the terminal. (&amp;#039;&amp;#039;&amp;#039;Visual Mode&amp;#039;&amp;#039;&amp;#039; is stupid...)&lt;br /&gt;
&lt;br /&gt;
==== Solution ====&lt;br /&gt;
Either enter:&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;:set mouse-=a&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
during an editing session, or even better, put it (without the leading colon) in your &amp;lt;code&amp;gt;~/.vimrc&amp;lt;/code&amp;gt; file. (create the &amp;lt;code&amp;gt;.vimrc&amp;lt;/code&amp;gt; file if it&amp;#039;s not already there...)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;vim ~/.vimrc&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 set mouse-=a&lt;br /&gt;
&lt;br /&gt;
If you tend to use vim via sudo a lot... (duh... Who doesn&amp;#039;t?)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo vim ~root/.vimrc&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Sadly, this seems to turn off the colour syntax hilighting.&lt;br /&gt;
&lt;br /&gt;
But!&lt;br /&gt;
&lt;br /&gt;
add&lt;br /&gt;
&lt;br /&gt;
 syntax on&lt;br /&gt;
&lt;br /&gt;
to the &amp;#039;&amp;#039;&amp;#039;.vimrc&amp;#039;&amp;#039;&amp;#039; files &amp;amp; it&amp;#039;s back.&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:SoftwareTools]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=Category:WebServers&amp;diff=185</id>
		<title>Category:WebServers</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=Category:WebServers&amp;diff=185"/>
		<updated>2022-01-03T19:34:04Z</updated>

		<summary type="html">&lt;p&gt;Bart: Created page with &amp;quot;Build &amp;amp; maintain a WebServer.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Build &amp;amp; maintain a WebServer.&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=Category:ServerBuilding&amp;diff=184</id>
		<title>Category:ServerBuilding</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=Category:ServerBuilding&amp;diff=184"/>
		<updated>2022-01-03T19:32:45Z</updated>

		<summary type="html">&lt;p&gt;Bart: Created page with &amp;quot;Clear help in building various sorts of servers.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Clear help in building various sorts of servers.&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=Server_Building&amp;diff=183</id>
		<title>Server Building</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=Server_Building&amp;diff=183"/>
		<updated>2022-01-03T19:29:10Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This section is slowly being moved over from my [[TinkerWiki:SBN - Building Notes{{!}}General Wiki]]. Please be patient.&lt;br /&gt;
&lt;br /&gt;
*[[Building Web Servers]]&lt;br /&gt;
&lt;br /&gt;
[[Category:ServerBuilding]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=WebServer_-_Basic_LAMP_Stack_Install&amp;diff=182</id>
		<title>WebServer - Basic LAMP Stack Install</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=WebServer_-_Basic_LAMP_Stack_Install&amp;diff=182"/>
		<updated>2022-01-03T19:26:41Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;*Proven on&lt;br /&gt;
**Mint 19.3 ... (Seems to get MySQL 5.7)&lt;br /&gt;
**Mint 20 ... (Gets MySQL 8.0)&lt;br /&gt;
**SparkyLinux 5.11 ... (Debian based)&lt;br /&gt;
**LMDE 4 ... (Debian based)&lt;br /&gt;
**Debian minimal ... (Debian based)&lt;br /&gt;
&lt;br /&gt;
=== Install the LAMP Stack ===&lt;br /&gt;
* [[WebServer - Mint 19.3{{!}}If you are running Mint 19.3]]&lt;br /&gt;
* [[WebServer - Debian based Linux{{!}}If you are running a Debian based Linux]]&lt;br /&gt;
** (Debian itself, LMDE, SparkyLinux, others...)&lt;br /&gt;
&lt;br /&gt;
==== Install the packages ====&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo apt install apache2 libapache2-mod-php php-xml php-mbstring php-apcu php-intl imagemagick inkscape php-gd php-cli php-cgi php mysql-server mysql-client php-mysql&amp;lt;/code&amp;gt;&lt;br /&gt;
**Say Yes to Continue&lt;br /&gt;
**&amp;lt;u&amp;gt;Configuring mysql-community-server&amp;lt;/u&amp;gt; (Doesn&amp;#039;t happen on Mint but DOES happen on LMDE)&lt;br /&gt;
***Pick a good &amp;#039;&amp;#039;&amp;#039;root&amp;#039;&amp;#039;&amp;#039; password...&lt;br /&gt;
***I tend to select &amp;#039;&amp;#039;&amp;#039;Use Legacy Authentication Method&amp;#039;&amp;#039;&amp;#039; because &amp;#039;&amp;#039;&amp;#039;Use Strong Password Encryption&amp;#039;&amp;#039;&amp;#039; is annoying as hell. (Your choice here...)&lt;br /&gt;
&lt;br /&gt;
==== Configure MySQL ====&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo mysql_secure_installation&amp;lt;/code&amp;gt;&lt;br /&gt;
**&amp;lt;u&amp;gt;Would you like to setup VALIDATE PASSWORD component?&amp;lt;/u&amp;gt;&lt;br /&gt;
***I select No (because I&amp;#039;d rather manage my own password policies, thanks...)&lt;br /&gt;
**&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;root password&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
***&amp;lt;u&amp;gt;Please set the password for root here.&amp;lt;/u&amp;gt;&lt;br /&gt;
****Pick a good &amp;#039;&amp;#039;&amp;#039;root&amp;#039;&amp;#039;&amp;#039; password...&lt;br /&gt;
**or... (depends on install...)&lt;br /&gt;
***&amp;lt;u&amp;gt;Using existing password for root.&amp;lt;/u&amp;gt;&lt;br /&gt;
****Say No&lt;br /&gt;
**&amp;lt;u&amp;gt;Remove anonymous users?&amp;lt;/u&amp;gt;&lt;br /&gt;
***Duh... Yes&lt;br /&gt;
**&amp;lt;u&amp;gt;Disallow root login remotely?&amp;lt;/u&amp;gt;&lt;br /&gt;
***Your choice, but I tend to say No.&lt;br /&gt;
**&amp;lt;u&amp;gt;Remove test database and access to it?&amp;lt;/u&amp;gt;&lt;br /&gt;
***Duh... Yes again.&lt;br /&gt;
**&amp;lt;u&amp;gt;Reload privilege tables now?&amp;lt;/u&amp;gt;&lt;br /&gt;
***Yes&lt;br /&gt;
*([[MySQL - Initial Configuration{{!}}Extra Instructions if you&amp;#039;ve never configured MySQL before]])&lt;br /&gt;
&lt;br /&gt;
==== &amp;amp; Test it ====&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo vi /var/www/html/info.php&amp;lt;/code&amp;gt;&lt;br /&gt;
 &amp;lt;!--?php  phpinfo();&lt;br /&gt;
 ?--&amp;gt;&lt;br /&gt;
Browse to http://ServerAddress/ &amp;amp; you should see the default page.&lt;br /&gt;
&lt;br /&gt;
Browse to [http://ServerAddress/ http://ServerAddress/info.php] &amp;amp; you should see a whole bunch of info about your PHP subsystem.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Notice that those 2 addresses are HTTP, and NOT HTTPS. This is important and Chrome will mess with you.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
==== Set up at least one user in mysql ====&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo mysql -u root -p&amp;lt;/code&amp;gt;&lt;br /&gt;
 CREATE USER &amp;#039;someone&amp;#039;@&amp;#039;localhost&amp;#039; IDENTIFIED BY &amp;#039;password&amp;#039;;&lt;br /&gt;
 FLUSH PRIVILEGES;&lt;br /&gt;
 EXIT;&lt;br /&gt;
(&amp;#039;&amp;#039;&amp;#039;Hint:&amp;#039;&amp;#039;&amp;#039; This&amp;#039;d be a good time to create yourself as that user with your non-admin password of choice...)&lt;br /&gt;
&lt;br /&gt;
[[Category:ServerBuilding]]&lt;br /&gt;
[[Category:WebServers]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
	<entry>
		<id>https://wiki.nerdmage.ca/index.php?title=Building_Web_Servers&amp;diff=181</id>
		<title>Building Web Servers</title>
		<link rel="alternate" type="text/html" href="https://wiki.nerdmage.ca/index.php?title=Building_Web_Servers&amp;diff=181"/>
		<updated>2022-01-03T19:25:39Z</updated>

		<summary type="html">&lt;p&gt;Bart: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;*[[WebServer - Basic LAMP Stack Install{{!}}Basic LAMP Stack Install]]&lt;br /&gt;
*[[NetMan - SSL Certs{{!}}SSL]]&lt;br /&gt;
*[[WebServer - UserDir{{!}}Enabling User Web Directories]]&lt;br /&gt;
*[[WebServer - Name-based Virtual Host Support{{!}}Name-based Virtual Host Support]]&lt;br /&gt;
*[[SBN - Proxy Server Notes{{!}}Proxy Server Notes]]&lt;br /&gt;
*[[WebServer - Important Files on The Server{{!}}Important Files on The Server]]&lt;br /&gt;
*[[WebServer - CORS{{!}}CORS]]&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Note:&amp;#039;&amp;#039;&amp;#039; Pretty much any time you&amp;#039;ve edited the configuration files for Apache, You&amp;#039;ll need to restart it.&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;code&amp;gt;sudo service apache2 restart&amp;lt;/code&amp;gt;&lt;br /&gt;
You can check on the status of Apache by:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;sudo apache2ctl -S&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:ServerBuilding]]&lt;/div&gt;</summary>
		<author><name>Bart</name></author>
	</entry>
</feed>