From 85141fa13a60d08d3954df0b66f752d734d74b28 Mon Sep 17 00:00:00 2001 From: rra Date: Mon, 1 Jul 2019 11:45:18 +0200 Subject: [PATCH] editing here and there, added intro and manifesto --- content/fundamentals/intro.md | 16 ++++++++ content/fundamentals/manifesto.md | 50 +++++++++++++++++++++++++ content/fundamentals/port_forwarding.md | 1 + content/fundamentals/webserver.md | 25 ++++++++++--- 4 files changed, 86 insertions(+), 6 deletions(-) create mode 100644 content/fundamentals/intro.md create mode 100644 content/fundamentals/manifesto.md diff --git a/content/fundamentals/intro.md b/content/fundamentals/intro.md new file mode 100644 index 0000000..ca7c615 --- /dev/null +++ b/content/fundamentals/intro.md @@ -0,0 +1,16 @@ +Title: Introduction +Date: 2019-06-17 +Slug: fundamentals-intro +Description: why you want to get in to homeserving +Summary: introduction to hbsc fundamentals +Status: published +Category: fundamentals + +This series is a starting point for people looking to host their own on-line services from home. A good place to start is by reading the [homebrewserver.club principles]({filename}manifesto.md) on to understand why we make the choices we do. Then have a look at the [hardware guide](hwguide) or [setting up a server behind your home router.]({filename}portforwarding.md) + +The Homebrewserver.club principles +What makes a good homebrew server (hardware guide) +Setting up a server behind a home router +Setting up a webserver +Using SSH to connect to your home brew server +Basic security considerations diff --git a/content/fundamentals/manifesto.md b/content/fundamentals/manifesto.md new file mode 100644 index 0000000..5b70033 --- /dev/null +++ b/content/fundamentals/manifesto.md @@ -0,0 +1,50 @@ +Date: 2019-06-17 +Title: The homebrewserver.club principles +Slug: fundamentals-manifesto +Summary: The homebrewserver.club principles +Status: published +Category: fundamentals + + +###The homebrewserver.club takes the 'home' in homebrewserver.club literally and the 'self' in self-hosting figuratively. +That means we try to host from our homes rather than from datacenters and for and with our communities rather than just ourselves. + +###Approaches not Apps + +We priviledge general approaches over particular software applications. We try to contextualize our technical choices to provide understanding and prevent The Best Way™ solutionism. For these reasons we like free and open source software and documentation. Omg documentation so gud. + + +###Not your one click solution + +Primarily the homebrewserver.club wants to be a space to learn together. It might mean you are knowledgable about a topic and are willing to share that. Or that you are curious and willing to learn. We are about the long route that provides grounded contextual understandings instead of just copy pasta into the terminal to install things via todays new hip deployment framework. + +###Yes, We're Config™ + +We help each other out out but we can't do the work for you. We're Config, meaning we're comfy with figuring things out. We take pleasure in researching configurations and the struggle of getting things working. We gladly lend you a helping hand, but we can't hold your hand through the whole process. + +###Serving from constraints + +a homebrew sever means serving from constraints. You don't have the fastest connection. You use as little power as possible. Your server is some spare laptop you had lying around. You want as little maintenance or worrying as possible. You're not on 24/7 standby if there is an issue. All of that is perfectly ok and we see that it does influence our choices in terms of what to run and how. + +###A bunch of amateurs + +Is what we are. What works for datacenters and the industry might not be what works for homebrew servers. As such the homebrewserver.club documentation won't be exhaustive but rather inteds to add to the on-line knowledge available specifically from the perspective of the homebrew server. + +###Embracing the feminist server manifesto + + link or direct quote? + + +###Aspiring to broaden participation + +The homebrewserver.club hopes to provide the means for diverse communities to configure their server according to their needs and goals. + + Provide a space for other communities [other than the usual suspects (white male hackerspaces)] + + The homebrewserver.club hopes to provide the means for communities to configure their server according to their needs and goals. + + Rejects certain behaviour + + Goes beyond elitist, closed, ? + + diff --git a/content/fundamentals/port_forwarding.md b/content/fundamentals/port_forwarding.md index 6c130e3..ed489d1 100644 --- a/content/fundamentals/port_forwarding.md +++ b/content/fundamentals/port_forwarding.md @@ -4,6 +4,7 @@ Tags: port forwarding, router, introduction, lan, wan Slug: fundamentals-port-forwarding Summary: How to make your homebrew server reachable over the internet using your home router. Author: hbsc & friends +Image: images/port_forwarding.svg Status: published diff --git a/content/fundamentals/webserver.md b/content/fundamentals/webserver.md index ce0714e..b251fc5 100644 --- a/content/fundamentals/webserver.md +++ b/content/fundamentals/webserver.md @@ -1,23 +1,33 @@ -Title: Installing webserver software and publishing your website +Title: Setting up a web server Date: 2019-01-14 Category: fundamentals Tags: server, router, introduction, lan, wan Slug: fundamentals-webserver-website -Summary: How to set up a spare computer as a web server and publish your website. +Summary: Installing a web server for your home brew server Author: hbsc & friends Status: published -# SUPER UNDER CONSTRUCTION -TODO: add good dns registry reference +TODO: +* add good dns registry reference +* certificate renewal certbot ##Introduction -Ever wanted to host your own website from the comfort of your own house? Ever wondered how to achieve this? Search no further! This guide will help you with the installation of web server software, which is what allows a computer to start handling HTTP requests and serve web content in response. +Ever wanted to host your own website from the comfort of your own house? Ever wondered how to achieve this? Search no further! This guide will help you with the installation and configuration of web server software, which is what allows a computer to start handling HTTP requests and serve web content in response. Besides helping you with the installation, this guide will help you getting the right certificates, configuring your server and publishing your homebrewserved website. -The instructions on this guide were run on a Debian Stretch distribution. +## Some background knowledge. + +So first off, what is the web, what is a web site and what is a web server? + +The web is the single most known part of the internet. Because of that, it often happens that 'the web' and 'the internet' become conflated. Therefor it often becomes a bit hazy to state what the difference is between the internet and the web. Generally speaking 'the web' is only the part of the internet that we interact with with a web browser. More technically speaking, the web is the part of the internet that runs on port 80 and port 443 and that uses the HTTP and HTTPS protocols. + +Websites are text documents that are formatted through HTML, CSS and JS. These three technologies tell the webbrowser what the structure of the page is, how it should be laid out and what kind of interactions are possible. Websites are transmitted using Hyper Text Transfer Protocol, which is why we usually type them like so `http://homebrewserver.club`. +A web server is a piece of software which listens for and responds to HTTP requests. + +So in essence the web is a network of webservers which runs on top of the internet and through which websites can be retrieved. ##Requirements @@ -28,6 +38,8 @@ The instructions on this guide were run on a Debian Stretch distribution. - Have an available power socket next to your router. - An ethernet cable to connect your server to the router. +The instructions on this guide were run on a Debian Stretch distribution. + ## Installing Apache The Apache HTTP server is a free and open-source web server software and it has been around since 1995, being the most widely used server software in the world. Because of this, documentation is plentiful and the support community is very large, meaning that help is quite easy to get for any of your server issues. @@ -280,4 +292,5 @@ Open it on your favourite text editor and let's get started on a bare-bones "Hel ``` Open your browser again and savour the fruits of your hard work. + That was it! Now you are ready to have hours of endless fun sailing the vast sea of HTML, CSS, JavaScript, etc.