We will first explore configuring a router. Initially, you will manually configure IP address information on your system and then properly configure the system to bring up its interfaces automatically. From there, we'll move on to extend your system to act as a router for your own network, including DHCP for dynamically configuring client systems.
After that you will configure DNS. You will set up your internal DNS server to resolve external hostnames, and host DNS records for your own domain.
Next you will configure IPv6. Starting with a brief introduction to IPv6, you'll configure a tunnel to provide IPv6 connectivity, implement firewalling using iptables6, and provide IPv6 addresses to the rest of your network.
Next you will look at remote access and explore methods for remotely interacting with your new network using OpenSSH and OpenVPN.
Finally you will explore Web Servers; here you will set up web servers hosting PHP code, using both the Apache HTTPD server and NGINX.
About the Author
Gregory Boyce is a technologist with nearly 20 years' experience using and managing Linux systems. When he's not at work or spending time with his wife and two daughters, he plays around with new technologies. Gregory has spent the last 15 years working at Akamai Technologies, where he has worked in roles ranging from Network Operations, Internal IT, Information Security, Software Testing, and Professional Services. Currently, he heads up the Linux OS team that manages Akamai's custom Linux operating system, which runs on their massively distributed customer-facing network.