WIP: server setup guide
parent
28da09c5bf
commit
8fb106ff43
@ -0,0 +1,99 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="title" content="I've started a blog">
|
||||
<meta name="description" content="A new step for aney.co.uk, there's now a blog.">
|
||||
<meta name="keywords" content="Blog, articles, news">
|
||||
<meta name="author" content="Nathan (Aney) Steel">
|
||||
<meta name="theme-color" content="white">
|
||||
<meta name="theme-color" content="black">
|
||||
<link rel="stylesheet" type="text/css" href="/main.css">
|
||||
<link rel="icon" type="image/png" href="/images/favicon.svg">
|
||||
<title>Debian Server Setup</title>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<header>
|
||||
<h1>Debian Server Setup</h1>
|
||||
<hr/>
|
||||
<nav>
|
||||
<a href="/">home</a>
|
||||
<a href="/equipment.html">equipment</a>
|
||||
<a href="/projects.html">projects</a>
|
||||
<a href="/blog/">blog</a>
|
||||
<a href="/sitemap.html">misc</a>
|
||||
<a href="/support.html">support</a>
|
||||
</nav>
|
||||
<hr/>
|
||||
</header>
|
||||
|
||||
<main>
|
||||
<section>
|
||||
<p>This section assumes you have a fresh Debian 11 install on a server (either physical or VPS)</p>
|
||||
<p>It will cover installing the essentials for access, and basic security so you don't need to worry in the future. This section may seem a little daunting for a first-time linux user, but most of it is copy/paste, hopefully with enough description to understand what is being done.</p>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<p>This first section will be done on the physical PC, or on the VPS via their website</p>
|
||||
<h2>Update the OS</h2>
|
||||
<p>Even with a fresh install of Debian from the latest ISO, there may be some updates you're missing, and it's a good idea to have these, especially in case they're security updates.</p>>
|
||||
<pre>
|
||||
<code>
|
||||
root# apt update && apt upgrade
|
||||
</code>
|
||||
</pre>
|
||||
|
||||
<h2>Install essential packages</h2>
|
||||
<p>These are packages that are needed for accessing, and controlling the server</p>
|
||||
<pre>
|
||||
<code>
|
||||
root# apt install sudo ssh
|
||||
</code>
|
||||
</pre>
|
||||
<h3>Some useful packages too</h3>
|
||||
<pre>
|
||||
<code>
|
||||
root# apt install vim htop wget curl tmux
|
||||
</code>
|
||||
</pre>
|
||||
|
||||
<h2>Add a user, and give super user privilleges</h2>
|
||||
<p>You want to avoid using root as much as possible in regular use, so a new user for yourself is a must</p>
|
||||
<pre>
|
||||
<code>
|
||||
root# adduser <USERNAME>
|
||||
root# usermod -aG sudo <USERNAME>
|
||||
</code>
|
||||
</pre>
|
||||
<p>*replace <USERNAME> with the user you want to create, e.g. nathan</p>
|
||||
|
||||
<h2>Set static IP</h2>
|
||||
<p><strong>TODO: Homeserver</strong>. If the server is a physical PC in your home you will need to set a static IP, otherwise your router could assign a differnent IP on reboot, and this would mess with port forwarding, and internal DNS.</p>
|
||||
|
||||
<h2>Secure ssh</h2>
|
||||
|
||||
<h2>Setup UFW</h2>
|
||||
|
||||
<h2>Set hostname</h2>
|
||||
<p>Setting the name for a server is an important step, but the name doesn't need to be serious</p>
|
||||
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<p>This next section can be done via a terminal, or a SSH client else you can secure shell with e.g. PuTTY for Windows</p>
|
||||
<h2>Create an SSH key</h2>
|
||||
<h2>SSH into the server</h2>
|
||||
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
<footer>
|
||||
<hr/>
|
||||
<p>Written by <a href="http://www.aney.co.uk" target="_blank" rel="noopener noreferrer">@aney</a> with <a href="https://danluu.com/web-bloat/" target="_blank" rel="noopener noreferrer">web bloat</a> in mind | <a href="https://github.com/Aney/website" target="_blank" rel="noopener noreferrer">Source Code</a></p>
|
||||
</footer>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@ -0,0 +1,112 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="title" content="Aney's guide to server hosting">
|
||||
<meta name="description" content="Learn to host a public/private server with a bunch of great services">
|
||||
<meta name="keywords" content="Blog, articles, news, server, hosting, website">
|
||||
<meta name="author" content="Nathan (Aney) Steel">
|
||||
<meta name="theme-color" content="white">
|
||||
<meta name="theme-color" content="black">
|
||||
<link rel="stylesheet" type="text/css" href="/main.css">
|
||||
<link rel="icon" type="image/png" href="/images/favicon.svg">
|
||||
<title>Aney's guide to server hosting</title>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<header>
|
||||
<h1>Aney' guide to server hosting</h1>
|
||||
<hr/>
|
||||
<nav>
|
||||
<a href="/">home</a>
|
||||
<a href="/equipment.html">equipment</a>
|
||||
<a href="/projects.html">projects</a>
|
||||
<a href="/blog/">blog</a>
|
||||
<a href="/sitemap.html">misc</a>
|
||||
<a href="/support.html">support</a>
|
||||
</nav>
|
||||
<hr/>
|
||||
</header>
|
||||
|
||||
<main>
|
||||
<section>
|
||||
<p class="intro">If you want to start getting into server hosting, system administration, or just want to get a basic minecraft/web server up for you and your friends, then welcom. We all start somewhere, and I would love if I could get your foot in the door.<br/>I'll be adding to this guide whenever I get time, and will update it's readibility once it's 'complete'.</p>
|
||||
|
||||
<h2>Basic Server setup</h2>
|
||||
<ul>
|
||||
<li>Get a server</li>
|
||||
<li><a href="/blog/debian-server-setup.html">Basic Debian Server setup (with some security)</a></li>
|
||||
<li>Get a domain name</li>
|
||||
<li>Connect your server and domain name</li>
|
||||
</ul>
|
||||
<p>Now you officially own a server, but currently all you can do is SSH into it, so let's get some services on there</p>
|
||||
|
||||
<h2>Nginx Webserver</h2>
|
||||
<p>A great first service for any server is a website, even if it's just a little page to let people know you own the server</p>
|
||||
<ul>
|
||||
<li>Install nginx</li>
|
||||
<li>Setup your first website</li>
|
||||
<li>Add an SSL certificate w/Certbot</li>
|
||||
<li>Nginx web hardening</li>
|
||||
<li>Add PHP to your webserver (optional)</li>
|
||||
</ul>
|
||||
|
||||
<h2>MariaDB Database</h2>
|
||||
<p>A database is a great tool to store, access, and filter data. Typically used alongside a website, or other services, but can be useful standalone if you know what you're doing</p>
|
||||
<ul>
|
||||
<li>Install mariaDB</li>
|
||||
<li>SQL cheatsheet</li>
|
||||
<li>Adminer install</li>
|
||||
<li>Backup databases (optional)</li>
|
||||
</ul>
|
||||
|
||||
<h2>Backup your server!</h2>
|
||||
<p>Backups are super useful. If something breaks, or gets accidentally deleted you can always use a backup to get back to operational</p>
|
||||
<ul>
|
||||
<li>Setup rsync</li>
|
||||
<li>Setup rdiff-backup</li>
|
||||
<li>Setup backup cronjob(s)</li>
|
||||
</ul>
|
||||
|
||||
<h2>Run virtual machines</h2>
|
||||
<p>Virtual machines allow you to use your server as multiple servers at once, with different operating systems, services, files, etc.</p>
|
||||
<ul>
|
||||
<li>Setup Qemu/KVM</li>
|
||||
<li>Setup a bridged adapter</li>
|
||||
<li>Setup a virtual machine</li>
|
||||
<li>Virsh cheatsheet</li>
|
||||
</ul>
|
||||
|
||||
<h2>Proxy services to port 80/433</h2>
|
||||
<p>Many services you install will be accessible via the web, but will use a different ports. Proxying these allows access (and security) without the need to append a port to the server address</p>
|
||||
|
||||
<h2>Additional services/potential guides</h2>
|
||||
<ul>
|
||||
<li>Install debain on home server</li>
|
||||
<li>Self hosting and port forwarding</li>
|
||||
<li>Password protect webpages</li>
|
||||
<li>git</li>
|
||||
<li>samba</li>
|
||||
<li>Open Media Vault</li>
|
||||
<li>minecraft</li>
|
||||
<li>terraria</li>
|
||||
<li>umami</li>
|
||||
<li>uptime kuma</li>
|
||||
<li>torrentbox</li>
|
||||
<li>jellyfin</li>
|
||||
<li>VPN</li>
|
||||
<li>mailserver</li>
|
||||
<li>cockpit for noob-friendly server management</li>
|
||||
</ul>
|
||||
|
||||
</section>
|
||||
</main>
|
||||
|
||||
<footer>
|
||||
<hr/>
|
||||
<p>Written by <a href="http://www.aney.co.uk" target="_blank" rel="noopener">@aney</a> with <a href="https://danluu.com/web-bloat/" target="_blank" rel="noopener">web bloat</a> in mind | <a href="https://github.com/Aney/website" target="_blank" rel="noopener">Source Code</a></p>
|
||||
</footer>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Loading…
Reference in New Issue