Category Archives: All
All of the posts on this site.
Car Studio 4: Reflections on 21 April 2025
Fact vs Force: The Apollo Missions
Fact: Mankind has not yet been to the Moon.
Force: Most of mankind believes we have been to the Moon, and laughs at people who don’t believe it.
I believed the moon landings were real and I dismissed theories to the contrary for one simple reason: the Apollo missions required the efforts of hundreds of thousands of people and that many people cannot keep a secret. There can’t be a lie that big – I thought.
Hundreds, Not Hundreds of Thousands
The theory was presented to me that the astronauts went to low Earth orbit, and unbeknownst to even ground control (the famous “Houston”), they faked everything beyond low Earth orbit. They faked radio calls, flight data, and some images and videos that had been pre-recorded from the California desert (probably recorded in the summer of 1968). Since ground control couldn’t tell the difference between a real flight and even a training simulation, it may not have been easy but it is doable. Launching and faking the radio calls and imagery reduces the number of people involved in the secret from hundreds of thousands down maybe a hundred or so – much more manageable.
Lie or Die
A hundred still seems like a lot of people to keep a secret until you consider that the ring-leaders, whoever they were, killed people to do it. You don’t have to kill everyone who might speak up. Once you kill a few people who are willing to speak up, the remaining people willingly fall in line and keep the secret, knowing what happened to their friends.
The phrase, “for two people to keep a secret, one of them has to be dead,” should be, “For two or more people to keep a secret, you must kill one of them who speaks.”
Timeline
What follows is a timeline of key events along with videos. Throughout the summary, I make two simple statements to categorize the evidence:
- “To believe the moon landings were real, you accept …”
- “To believe the moon landings were faked, you accept …”
Both versions of the story are incredible, whether we went to the Moon or we faked it. When I see the evidence laid out, I come to the conclusion that the moon landings are not just an incredible feat, they are truly not credible. They did not happen. Mankind has not yet landed on the Moon – or even left low Earth orbit for that matter.
22 January 1967: Gruff Gus
According to Gus Grissom’s widow, when he was home for the last time before the fire that killed him, Gus picked a large lemon from a tree in their yard and intended to hang it on the rocket to call the rocket a lemon. Grissom was quoted as saying we were at least a decade from going to the Moon, not 2 years as was advertised. His criticism had earned him the nickname “Gruff Gus”.

27 January 1967: Apollo 1 Training Fire
Gus Grissom, Ed White, and Roger Chaffee, the Apollo 1 crew, died in a fire.
(missing video is the audio of Apollo 1 dying in the training capsule fire, it’s awful, can probably still be found somehwere)
The Apollo 1 crew are the only astronauts to die in the whole program. To believe the moon landings were real, you accept the official story that the only deaths in the entire Apollo program happen to have included the most notable critic exactly when his death would have been necessary to transition from a real moon landing effort to faking it – and more importantly put other critics on serious notice to stay quiet.
I believe people would have to have died for either story to be true – real moon landings or fake. I believe the Apollo program could have crash-landed humans on the Moon if that had been an acceptable outcome. However, the the only astronauts to die coincidentally died just when it was required to keep fake moon landings quiet.
21 April 1967: Thomas Baron Report
Thomas Ronald Baron wrote a 275-page report on NASA safety protocol violations, which he gave to Rep. Olin E. Teague’s investigation at Cape Kennedy in Florida, on 21 April 1967.
27 April 1967: Thomas Baron Death
Thomas Ronald Baron died along with his family when their car was struck by a train.
To believe the moon landings were real, you accept that Thomas Baron and his family’s deaths were also coincidental, just 3 months after the Apollo 1 crew’s deaths and 6 days after he released his critical report.
The Apollo Program: 9 Isolated Claims
There are only 6 total claims of landing humans on the Moon. Furthermore, there are only 9 total claims of humans even leaving low Earth orbit, all the Apollo program. Nobody else even claims to have sent humans beyond low Earth orbit before or since the Apollo program, not Russia, no other NASA program, not China, nobody else in all of mankind. Here is a list of all 9 claims of humans leaving low-Earth orbit:
| Mission | Landing Date (UTC) | Landing Time (UTC) | EVA Duration | Moon Phase at Landing |
|---|---|---|---|---|
| Apollo 11, Neil Armstrong, Buzz Aldrin | 20 July 1969 | 20:17:40 | 2h 31m | Waxing Crescent (28.8% illuminated) |
| Apollo 12, Charles Conrad, Alan Bean | 19 November 1969 | 06:54:35 | 7h 45m (2 EVAs) | Waxing Gibbous (80.6% illuminated) |
| Apollo 14, Alan Shepard, Edgar Mitchell | 5 February 1971 | 09:18:11 | 9h 24m (2 EVAs) | Waxing Gibbous (approx. 84% illuminated) |
| Apollo 15, David Scott, James Irwin | 30 July 1971 | 22:16:29 | 18h 37m (3 EVAs) | First Quarter (51.7% illuminated) |
| Apollo 16, John Young, Charles Duke | 21 April 1972 | 02:23:35 | 20h 14m (3 EVAs) | First Quarter (67.7% illuminated) |
| Apollo 17, Eugene Cernan, Harrison Schmitt | 11 December 1972 | 19:54:57 | 22h 4m (3 EVAs) | Waxing Gibbous (approx. 80% illuminated) |
Apollo 8 claims to have orbited the Moon 24-25 December 1968 with Frank Borman, James Lovell, and William Anders
Apollo 10 “dress rehearsal” claims to have flown within 15.6km of the moon’s surface on 22 May 1969 with Thomas P. Stafford, John W. Young, Eugene A. Cernan.
Apollo 13 claims to have been a failed moon landing attempt but also claims to have sling-shotted around the Moon in order to return to Earth with James A. Lovell, John L. Swigert, and Fred W. Haise
To believe we went to the Moon, you accept the official story that from December 1968 to December 1972, a 4-year period, the Apollo program sent humans beyond low Earth orbit 9 times, and the feat has not been accomplished at all before or since, despite the obvious leaps in technology during the following 53 years and counting.
August 1969: Apollo 11 Press Conference
To believe we went to the Moon, you accept the astronauts’ behavior at this press conference at face value. If the Apollo 1 crew was murdered and these guys went along with the mission because they knew they were next to die if they resigned, then this was a type of hostage situation – which is exactly what it looks like. Why does it look like a hostage situation? There are even teleprompters. Why are there teleprompters on the desk? Supposedly we’re looking at the 2 human beings who had ever been to the Moon (plus Michael Collins) and they all have to read from a teleprompter?
YouTube commenters bring up some poignant questions: were they raped by aliens on the Moon? Did the Moon land on them? This video would not have survived social media in 2025. There would have to have been some explanation and human behavior is timeless, so really, why do they act like that?
11 December 1972 Lunar Module Lift-Off Footage
To believe the moon landings were real, you don’t laugh at this footage of the Apollo 17 “final take-off” from the Moon:
Lunar module flying on Earth:
To believe we landed on the Moon, you accept that that aircraft went “6 for 6” landing on the Moon and taking off again. The Moon has one-sixth Earth’s gravity and no atmosphere, but still. Do it again.
Take another look at that aircraft flying and compare it to what a rocket looks like that can lift off and enter into Earth orbit. Again, 1/6 gravity of the Earth and no atmosphere, but that thing had to land on an unprepared, unknown surface ready to lift off again, escape gravity, and enter into orbit. I understand it supposedly docked with the lunar orbiter where Michael Collins was waiting – but does that make it easier or harder?
No Unfakeable Footage
To believe we went to the Moon, you accept that although none of the imagery brought back can be definitively proven fake, all of the imagery could have been faked, taken in the California desert and altered. While the imagery is impressive if fake, NONE of it is definitively unfakeable.
No Earth Footage from the Moon Surface
To believe we went to the Moon, you accept that the astronauts never panned the TV camera up to see the Earth from the surface of the Moon, despite the following reasons to have taken some video of Earth from the Moon:
- They spent a total of 75+ hours on the Moon (combined among all 6 missions).
- Neil Armstrong stated that the view of the Earth from the Moon was a source of comfort to him while on the Moon.
- The Earth was visible in the lunar sky from their landing sites literally the entire time for all 6 missions, which is an astronomical fact. The Earth does not move in the lunar sky because the Moon is tidal locked to the Earth. Also, the Earth would have been separated from the sun by roughly 90° the entire time. This is also an astronomical fact because they landed near first quarter moon phase every time. The Earth would have appeared as a “half-Earth” because of the position of the sun.
- The first famous photograph shown to the public from near the Moon was “earthrise,” supposedly taken from orbit, but they never in 75 hours panned the TV camera up to show the Earth in video.
They never showed the stars or the Earth from the surface of the Moon, especially in a video. The stars may not have shown up, okay, but Earth certainly would have. Showing the Earth from the Moon in a video would have been easy and interesting … but impossible from the California desert with 1960s technology. Why was that footage not taken? Were they too busy playing golf and driving their dune buggy on the Moon to just once point the camera at Earth that was right there in the sky the whole time?
The Van Allen Radiation Belts
To believe the moon landings were real, you have to accept that the 9 Apollo missions got to the other side of the Van Allen radiation belts – somehow – without really mentioning them and when astronauts were questioned about the radiation, they hardly remember dealing with it. Contrast that with plenty of footage of NASA itself and scientists talking about how intense and dangerous the radiation is.
2014 NASA Engineer Kelly Smith on the Van Allen Radiation
22 January 1973
Lyndon B Johnson died the day before the war in Vietnam ended and Nixon mentioned him in his speech. LBJ knew about the moon landings and profited from the Vietnam War as well. We’re not talking about nice people here.
20 July 1994: Neil Armstrong Speech at the White House for NASA’s 25th Anniversary
“Today we have with us a group of students, among America’s best. To you we say: we have only completed a beginning. We leave you much that is undone. There are great ideas undiscovered, breakthroughs available to those who can remove one of truth’s protective layers. There are places to go beyond belief.“
-Neil Armstrong, 20 July 1994
To accept the moon landings were real, you have to explain why Neil Armstrong said exactly what someone would say if he had been forced to fake the moon landing against his will and had the opportunity to speak to students 25 years later.
Read what he said. That is not a cryptic statement buried in a long speech among many speeches. The guy most famous for having walked on the Moon became a recluse from media attention for the rest of his life, but in one of the few speeches he gave, that’s what he said. Neil Armstrong was an unwilling participant and he told us what happened the best he could.
A Word on Bart Sibrel
If you believe the moon landings were faked, be warned: you’ll be grouped with Bart Sibrel, the loudest denier of the moon landings. While I happen to believe Sibrel’s theory and I think he does a pretty good job of organizing the evidence, he is unnecessary to come to the conclusion that the Apollo program faked the Moon landings. Also, Bart Sibrel is obnoxious to the astronauts, who were mostly unwilling participants it seems, especially Neil Armstrong. Lastly, Bart Sibrel believes in multi-dimensional aliens that interbreed with humans. So, quote verifiable facts, not Bart Sibrel.
18 July 1969, Apollo 11 Faking Being Halfway to the Moon
Look at this video. Why does Bart Sibrel have this video? He says NASA gave it to him by mistake when he requested footage for a documentary, which sounds fishy but plausible. He has it somehow and it has The video was not seen by the public until the 1990s when Bart Sibrel got it. Unless somebody can tell me how Bart Sibrel doctored this video or modified the date or changed the audio or whatever, it shows Apollo 11 near the Earth faking that the Earth is far away when they are supposed to be halfway to the moon. I understand videos can be faked, but it has Michael Collins’ face in it.
To believe the moon landings were real, you have to explain either how Bart Sibrel has this video, or how the video is something other than what it appears to be, which is Apollo 11 faking being halfway to the moon on 18 July 1969. You have to explain this or they didn’t go. Is the date stamp wrong? Does the audio not actually line up with what’s happening in the video? Is the person seen in the video not actually Michael Collins? Did Bart Sibrel fake the video somehow? Why does an individual with little budget have a video showing Apollo 11 in low-Earth orbit on 18 July 1969, clearly saying things contrary to what was being shown to Houston about where they were?
In Bart Sibrel’s Astronauts Gone Wild, he presents the 18 July 1969 video to Buzz Aldrin and Buzz Aldrin has no explanation. At one point in the confrontation Buzz Aldrin even suggests that Bart Sibrel manufactured the video. Bart Sibrel may be an ass hole in the way he goes about doing what he does, but the astronauts don’t act right either. Bart Sibrel is really putting his life on the line saying what he’s saying. I think the astronauts are the wrong people to confront since I believe they were unwilling participants, but their behavior is consistent with fake moon landings.
Laser Reflecting from the Moon
Supposedly the astronauts put laser reflectors on the Moon facing Earth and lasers can be bounced off of the mirrors back to Earth. To believe the landings were faked, you have to accept that there are in fact no man-made reflectors on the Moon, so the lasers are reflecting off of the surface of the Moon back to Earth. So, you have to accept that the surface of the whole Moon reflects more than Neil Armstrong’s pocket make-up mirror.
Motive? The Usual
The United States spent approximately $25.8 billion on Project Apollo between 1960 and 1973, which is equivalent to about $257 billion when adjusted for inflation to 2020 dollars.
Why do people even ask what the motive was? Money.
Russia and China Know We Faked It
If we faked the moon landings, the Soviet Union may have known at the time and both Russia and China certainly know by now. Why haven’t they said anything? To believe the moon landings were faked, you have to explain why Russia and China don’t say anything. One claim is they are blackmailing us to not say anything. Since we collaborate with Russia in space, I tend to think they are happy to work with us on space travel rather than expose us. I don’t totally understand why they don’t say something, but I am sure they know.
Nah, why am I questioning this? They knew. The Soviets knew. Anybody with a space program knew what they saw was not real. The public has nothing to compare it to, no context. The Soviet Union knew in 1969 that the Moon landing was fake. We collaborate with Russia in space, everybody knows that. The only news here is that we were already collaborating with them during Apollo so the Soviets collaborated with us faking the Moon landings. They were happy in second-place with whatever cut they got of the Apollo program to stay quiet.
My Conclusion
I started looking into the moon landings on 21 April 2025 when I realized they could have been faked. Since I started looking into it, I have seen zero compelling evidence that we actually went to the Moon and a lot of compelling evidence it was faked. Am I cherry-picking evidence? Or do people imagine that evidence is compelling that isn’t?
This really shakes my perception of reality, which is why I titled the post “Fact vs Force”. I am sure we did not go to the Moon. For such an extraordinary, incredible claim the lack of evidence is absurd. Especially now with 50+ years of hindsight, the continued fervor with which people defend the validity of this fabrication leads me to realize that when force is applied, force can override fact for a very long time…
However,
facts are stubborn things, and to those who continue to believe in this historically anomalous feat I say, “Cool. Do it again.”
If we do actually go to the Moon, we’re going to:
- ferry fuel for the departure from the moon’s gravity
- shield against Van Allen radiation
- land somewhere where we don’t have to deal with a scorching 350-hour-long day
- get some video footage of Earth from the surface of the Moon, which Apollo was apparently too busy playing golf to get done.
The Moon landings were fakeable when the public had nothing real to compare them to. When we do go to the Moon, the contrast with the fakes is going to be hilarious.
Run Programs Automatically on Linux
Server Daemons
The Greeks considered daemons to be spirits that work in the background, so that’s why daemons are called daemons.
The “d” in systemd stands for “daemon,” following the Unix convention of naming background processes by appending a lowercase “d” to their name. This reflects that systemd is a system daemon responsible for managing other daemons and system processes.
Systemctl is the primary command-line interface used to interact with and control the systemd system and service manager.
/etc/rc.local
is deprecated according to ChatGPT.
Graphical Applications
Using a desktop file in the autostart folder.
lxde?
If running a version with desktop GUI, put the desktop file for the program you want to auto-start in:
~/.config/autostart
Run Programs that Run Regularly
Crontab and systemd both schedule running programs. Crontab is simpler and much older. Systemd is the newer standard. It’s more complex but more powerful including logging etc.
To show all the services running:
systemctl list-units --type=service
To show the path and contents of a systemd unit file of a specific service:
systemctl cat awim-fastapi.service
To check the status of a service:
systemctl status awim-fastapi.service
To restart the service:
sudo systemctl restart awim-fastapi.service
Modbus on Raspberry Pi (Zero 2W) with USB Converter
Power on the Raspberry Pi before plugging in the USB interface, then to save the connected devices before plugging in the USB:
ls -1 /dev >> dev1.txt
Then plug in the USB and:
ls -1 /dev >> dev2.txt
Then, to find the new device attached:
diff dev1.txt dev2.txt
React with Vite and Express API, using Node.js and TypeScript
Install the Latest Node.js
sudo apt install nodejs npm
sudo npm install n -g
For the latest stable version of Node JS:
sudo n stable
node --version
Create a New React App with Vite
Install Node.js, then in the directory where you want to install (often within project-name/client):
npm create vite@latest
npm run dev
Clone Existing React App
To clone a React project from Github, you clone it, then use the following command from the project subdirectory (to install it, which I don’t totally understand, but it works):
npm install --f
Move Entire App to a Subdirectory
You’ll want the React app to be contained in a subdirectory /client and the Express API contained in a subdirectory /api or /server. You can move the entire React app by moving all files into a subdirectory with the following commands:
mkdir client
git mv -k * client/
Create the Express API (mostly from ChatGPT)
mkdir api
cd api
npm init -y
Install express. Install mysql2 only if you are going to connect to a database:
npm install express cors dotenv mysql2
npm install --save-dev typescript ts-node nodemon @types/node @types/express @types/cors
UPDATE: ts-node is apparently a higher-performance version of tsx. I found ts-node to be a pain, so next time, use tsx instead.
npx tsc --init
Modify tsconfig.json for better compatibility:"compilerOptions": {
"target": "ESNext",
"module": "NodeNext",
"outDir": "./dist",
"rootDir": "./src",
"strict": true,
"esModuleInterop": true,
"moduleResolution": "node"
}
Add the following lines to package.json, scripts section to run typescript files directly with ts-node by compiling with tsc then running the dist/index.js file:
… ,
"type": "module",
"scripts": {
"dev": "ts-node src/index.ts",
"build": "tsc",
"start": "node dist/index.js",
"test": "echo \"Error: no test specified\" && exit 1"
},
Make src/ directory:
mkdir src
cd src
Within src/, make index.ts and write the express API TS code, then run it with:
npm run dev
Running the Two Servers, API + React App
When they are separate, run the API from the api/ directory with:
npm run dev
and run the React app made with Vite from the client/ directory with:
npx vite
Deploy to a VPS
Fresh install an Ubuntu server and create non-root superuser per these instructions. Then:
sudo apt install -y nodejs npm nginx
sudo npm install -g serve pm2
Build and Run Frontend Manually
Going to frontend directory, then:
npm install
rm -rf dist (if necessary to clear previous build)
npm run build
package.json should be: "scripts": { "dev": "vite", "build": "tsc -b && vite build", ... }
serve -s dist --listen 4173
Run the Backend Manually
node index.js
CORS and .env Note
It is worth setting up – from the beginning – permissive CORS that utilizes .env. You can get pretty far ignoring CORS and .env in your initial local dev environment, but you do encounter CORS even in the local environment from the start. Facing and understanding the concepts of .env and CORS up front saves time overall.
Also using .env up front helps separate the environmental factors so you understand how things are working better.
Set up pm2
From the client/ directory:
pm2 start bash --name tv3clock-viteserve --cwd /home/nate/code/time-v3-astroclock4/client -- -c "npx serve -s dist --listen 6171"
From the api/ directory:
pm2 start index.js --name tv3clock-api
Set up pm2 for reboot:
pm2 save
pm2 startup
Then copy-paste the long command it gives you, per instructions.
Nginx as a Reverse Proxy
It is normal to run the sites with pm2 and use nginx to direct traffic to them.
Then add file
sudo nano /etc/nginx/sites-available/my-sites.conf
and edit with:
# -------------------------------
# Upstream definitions for PM2 apps
# -------------------------------
upstream tv3_frontend {
server 127.0.0.1:6171;
}
upstream tv3_api {
server 127.0.0.1:5001;
}
upstream tlom_frontend {
server 127.0.0.1:6172;
}
upstream tlom_api {
server 127.0.0.1:5002;
}
# -------------------------------
# timev3.com server block
# -------------------------------
server {
server_name timev3.com www.timev3.com;
# API proxy
location /api/ {
proxy_pass http://tv3_api/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
# Frontend proxy
location / {
proxy_pass http://tv3_frontend/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
listen 80;
}
# -------------------------------
# mytlom.com server block
# -------------------------------
server {
server_name mytlom.com www.mytlom.com;
# API proxy
location /api/ {
proxy_pass http://tlom_api/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
# Frontend proxy
location / {
proxy_pass http://tlom_frontend/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
listen 80;
}
Run a test on the new nginx configuration:
sudo nginx -t
Restart nginx:
sudo systemctl restart nginx
Windows Subsystem for Linux (WSL)
Develop in Python Using VS Code and WSL
PS > wsl --install
PS > wsl --list --online
PS > wsl --install -d Ubuntu-22.04
PS > wsl --list --verbose
PS > wsl --setdefault Ubuntu-22.04
PS > wsl
# code .
Windows PowerShell, Get Oriented
Windows PowerShell, Get Oriented
- The prompt is
PS C:\current\path> %VARIABLE_NAME%is a variable
Get the latest version of PowerShell
PS > winget search Microsoft.PowerShell
PS > winget install --id Microsoft.PowerShell --source winget
Scripting with PowerShell ISE
PS > Get-ExecutionPolicy -List
PS > Set-ExecutionPolicy -Scope Process RemoteSigned
Set Up Python from Scratch on Windows
Python is not natively-installed on Windows, unlike on Linux machines. This pretty much covers it: https://learn.microsoft.com/en-us/windows/python/web-frameworks
WordPress from Scratch
On a fresh Debian VPN. Per WordPress.org’s own list:
sudo apt install apache2
sudo apt install php
sudo apt install php-curl
sudo apt install php-[the rest of the recommended extensions]
php -m to see a list of the php extensions installed.
sudo apt install mariadb-server
sudo systemctl start apache2
sudo systemctl start mariadb
sudo mysql_secure_installation
mysql -u root -p
sudo apt install httpd mariadb mariadb-server php php-common php-mysql php-gd php-xml php-mbstring php-mcrypt php-xmlrpc unzip wget -y
Backup the Server
To make a backup file, sudo su root then navigate to root directory, and:
tar cvpzf backup.tgz --exclude=/proc --exclude=/lost+found --exclude=/backup.tgz --exclude=/mnt --exclude=/sys /
Download the resulting file.
To restore:
tar -xvpfz backup.tgz -C /
then, mkdir /proc, mkdir /lost+found, mkdir /mnt, mkdir /sys
reboot
Running a Server from a Raspberry Pi (Compared Alongside VPS)
A Server is a Physical Computer
There are various types of servers, but they all consist of a physical computer somewhere. This tutorial shows how to set up a server first with the simplest of physical devices you can have in your home for less than $20 and side-by-side with how to do it in its more abstract – and more common – form, a VPS (virtual private server) you can rent from a hosting service.
The two procedures are very analogous. Seeing them side-by-side helps make concrete what you are actually doing even though sometimes you can’t physically see it.
Server 1. Raspberry Pi Zero W Running Raspberry Pi OS (Debian, a flavor of Linux)
Can be purchased many places, such as Microcenter or Amazon.
Server 2. VPS (Virtual Private Server) Running Ubuntu 20.04 (a flavor of Linux)
I purchased a VPS from Hostwinds. There are various operating systems available. I used Ubuntu 20.04.
Connect to Your Server over a Network (or the Internet)
Connect Via Secure Shell (SSH)
I SSH login using the MobaXterm SSH Client. The server is usually a remote computer to which you do not have physical access, so instead of plugging in a keyboard, mouse and screen, you establish a connection that gives you access to the server’s command prompt. SSH stands for secure shell, meaning the data you transfer between your computer and the server are encrypted. SSH is enabled by default in Ubuntu, but not all Linux flavors.
Useful Linux Commands: https://vitux.com/40-most-used-ubuntu-commands/
1. Raspberry Pi Zero W
Connect the Raspberry Pi Zero to your LAN. There is a way to do this with command line but the Raspberry Pi OS connects to WiFi on the initial startup, so just do it on initialization. If you want, to view the saved password with the command line to know generally where WiFi passwords are stored, use
sudo grep psk= /etc/wpa_supplicant/*
which searches the appropriate directory for “psk=” and you see the stored WiFi keys.
Enable SSH. SSH is not enabled by default with Raspberry Pi Zero. Many tutorials tell you to add a blank file to the /boot folder called SSH (no extension at all). Use the command touch ssh, then reboot. If you do this, notice once SSH is enabled then the file gets deleted so you will not see any change other than the SSH login should work.
Or enable SSH by: in the raspberry pi terminal window, enter sudo raspi-config, select Interfacing Options, SSH, enable it.
2. Ubuntu
Must install openssh-server. Use sudo apt install openssh-server. Check status after install with sudo systemctl status ssh.
Find the Raspberry Pi’s own IP address in the command line with ip add or ip addr or ifconfig. The IP will show after wlan0: inet __.__.__.__ Within a LAN, it is often something like 192.168.1.* Alternatively, you can type your router’s IP into your browser and view a list of connected devices. Or, use nmap, sudo apt install nmap and the command sudo nmap -sn 192.168.1.0/24 (without sudo you won’t see all the MAC addresses)
2. VPS
On a VPS, SSH is (should be) enabled by your host to allow the purchaser to access it. You will get a default username and password from the hosting service who established the VPS with its default settings.
In MobaXterm, “Remote host” is where you specify the IP address of your server, available in your Hostwinds account.
The username is “root”
The password is whatever you set in Hostwinds
Optional: Update Operating System
1. Raspberry Pi OS
sudo apt update is the Debian update command (Raspberry Pi OS is based on Debian).
2. VPS
Update Ubuntu (only required if there is a new version of Ubuntu).*
*First, be sure you can login as the non-root super-user before updating Ubuntu as the new install will default to not allow root login. This means if you were planning to just use the existing root user with infinite powers you are now infinitely locked out of your own VPS and have to have your host re-initialize it. Your VPS host changed this setting when it set up your VPS so you can login but when you update the Ubuntu OS, the OS returns to the OS default which is to not allow SSH root login! This is a GREAT example of why to do the user basics as the very first step.
sudo do-release-upgrade
Update the advanced package tool:
(without the -get is newer, so I use it)sudo apt-get update
sudo apt update
Make Website Available Outside Your LAN
1. Raspberry Pi Zero W
Once the Pi server is serving a site on its IP within the LAN, making the site available outside the LAN (on the internet) is as simple as directing site requests that arrive to your internet IP to the Pi server. Sounds complicated, but when a browser looks for a website on the internet, it looks on port 80. Most routers have an option to direct all traffic arriving on a specific port to a specific IP within the LAN. Connect to your network’s router to configure it, usually by entering its IP (often 192.168.1.1) into a browser and logging in with a password you set. You should see an option like this under the advanced settings.
To Do: Establish an SSH Connection with SSH Keys for the Non-Root User
Normally, you generate a public and private key on your local computer then copy the public key to the server along with some settings. Hostwinds has an option in server management to generate the key, download the private key, and install the public key on the server. Reboot required.