/home-router

Primary LanguageShellBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

Home router based on Fedora Server

GitHub license

This project setup a secure home router based on Fedora Server using existing open source tools.

Features:

  • Auto update OS
  • IPv4 router
  • DHCP server
  • SSH server
  • Firewall

Used tools:

  • Fedora Server - Run server workloads on bare metal or virtual machines with the latest open source technologies curated by the Fedora Community.
  • DNF automatic - Package manager - automated upgrades.
  • firewalld - A firewall daemon with D-Bus interface providing a dynamic firewall.
  • NetworkManager - NetworkManager is the standard Linux network configuration tool suite.
  • ISC DHCP - Enterprise-grade solution for IP address-configuration needs.
  • OpenSSH - SSH.... keeping your communiqués secret.
  • gettext-envsubst - Substitutes the values of environment variables.
  • patch - The patch program applies diff files to originals.

Future tools:

  • Kea DHCP - Modern, open source DHCPv4 & DHCPv6 server.

Prerequisites:

  • Install Fedora Server on base metal router hardware
    • Architecture: x86_64 or aarch64
    • 2 x Ethernet NICs
  • Setup ed25519 authorized key for ssh access as password login is disabled
    • ssh-copy-id -i ~/.ssh/id_ed25519.pub ${USER}@${HOME_ROUTER_IP}

Install (from git):

sudo dnf install -y git
git clone https://github.com/baxeno/home-router.git
cd home-router/bash
# Update script with interfaces and possible one of the optional parameters
sudo ./setup-router.sh