{"id":289,"date":"2019-05-17T21:22:21","date_gmt":"2019-05-17T21:22:21","guid":{"rendered":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/?page_id=289"},"modified":"2020-01-15T11:01:48","modified_gmt":"2020-01-15T11:01:48","slug":"interests","status":"publish","type":"page","link":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/interests\/","title":{"rendered":"System and network administration"},"content":{"rendered":"<p>One of my main interests outside my field of research is network and system administration. I became particularly interested in this topic after working for over two years in the T\u00e9cnico Lisboa&#8217;s Departments of Electrical and Computer Engineering&#8217;s Computer Laboratory and kept this skill alive ever since.<\/p>\n<p>After ceasing my functions as a system administrator,&nbsp; I decided to apply some of the knowledge I gathered to remodel my house&#8217;s intra-network and give it the robustness that the out-of-the-box network providers&#8217; solutions lack. Mainly, I wanted to address the following aspects:<\/p>\n<ul>\n<li>Better IP management and allow to create fixed IP leases;<\/li>\n<li>Creation of an internal DNS server to facilitate remote access from within the local network;<\/li>\n<li>Creation of a VPN;<\/li>\n<li>Allow for Wake-on-Lan on my hardware servers;<\/li>\n<li>Creation of centralized services of data storage, authentication, media server, and web server.<\/li>\n<li>Distribute access points throughout the house to guarantee better Wifi coverage.<\/li>\n<\/ul>\n<p>To support such needs, I implemented the following physical\/virtual infrastructure. <a href=\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/home_network.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/home_network.png\" alt=\"\" class=\"wp-image-419 size-full alignleft\" width=\"1034\" height=\"656\" srcset=\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/home_network.png 1034w, https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/home_network-300x190.png 300w, https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/home_network-768x487.png 768w, https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/home_network-1024x650.png 1024w\" sizes=\"auto, (max-width: 1034px) 100vw, 1034px\" \/><\/a><\/p>\n<h1 style=\"text-align: center;\"><\/h1>\n<p>The custom gateway was made of an old computer running the IPFire gateway solution.<\/p>\n<p>The virtual machines host was also built from an old computer and upgraded to support all the required services. A minimalistic version of CentOS 7 was installed, and the machine was configured to be a Virtual Host. To isolate the services I wanted to run, four main VMs were created:<\/p>\n<ul>\n<li>The storage server runs a minimalistic version of CentOS. It only enables two services: NFS and SAMBA. Both services are protected by the centralized authentication provided by the authentication server. Also, the HDDs used for storage purposes are managed directly by this VM, and the host operating system has no access to them. Additionally, these HDDs are mounted in a RAID 10 scheme to guarantee both redundancy and scalability.<\/li>\n<li>The authentication server runs a minimalist version of CentOS and enables the FreeIPA identity management system. All the main services use this mechanism to authenticate the users.<\/li>\n<li>The media server enables the DLNA service that is supported by most Smart TVs. This way, a Smart TV connected to the network can easily reproduce images, music, and videos stored in the data HDDs.<\/li>\n<li>The web server holds all the services responsible for serving HTTP\/HTTPS content and enables the automatic serving of the subdirectory \/web in the users&#8217; home folders.<\/li>\n<\/ul>\n<p>For communicating with the outside world (internet), some ports were forwarded from the internet provider&#8217;s gateway to the custom gateway, and a DDNS service was configured in the former to allow easy name resolution. To provide a basic security layer, the infrastructure counts with two firewalls and all hosts enable a third firewall and the Security-Enhanced Linux service. For security reasons, I provide no details on which ports are forwarded and how the firewalls are configured, but if you have some &#8220;academic questions&#8221; you can always ask me directly. \ud83d\ude42<\/p>\n<p>While the entire process of configuring this system and putting everything to work gave me quite a headache, some of the most challenging tasks are documented in the following tutorials:<\/p>\n<ul>\n<li><a href=\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/public\/docs\/tutorials\/configure_apache_server.pdf\">Configure Apache server to serve subdirectory in the user&#8217;s home directory <\/a><\/li>\n<li><a href=\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/public\/docs\/tutorials\/configure_dokuwiki_to_use_freeipa_authentication.pdf\">Configure DokuWiki to use FreeIPA authentication<\/a><\/li>\n<li><a href=\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/public\/docs\/tutorials\/configure_samba_to_use_freeipa_authentication.pdf\">Configure Samba to use FreeIPA authentication<\/a><\/li>\n<\/ul>\n<p><strong>All these tutorials contain information that I could not find anywhere else on the Internet!<\/strong><\/p>\n<p>This has been by far one of the most gratifying projects I have done so far. If you have some questions regarding details on how to implement something for yourself, do not hesitate to email me. \ud83d\ude42<\/p>\n","protected":false},"excerpt":{"rendered":"<p>One of my main interests outside my field of research is network and system administration. I became particularly interested in this topic after working for over two years in the T\u00e9cnico Lisboa&#8217;s Departments of Electrical and Computer Engineering&#8217;s Computer Laboratory and kept this skill alive ever since. After ceasing my [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"ngg_post_thumbnail":0,"footnotes":""},"class_list":["post-289","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.0 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>System and network administration - Jo\u00e3o Vieira<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/interests\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"System and network administration - Jo\u00e3o Vieira\" \/>\n<meta property=\"og:description\" content=\"One of my main interests outside my field of research is network and system administration. I became particularly interested in this topic after working for over two years in the T\u00e9cnico Lisboa&#8217;s Departments of Electrical and Computer Engineering&#8217;s Computer Laboratory and kept this skill alive ever since. After ceasing my [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/interests\/\" \/>\n<meta property=\"og:site_name\" content=\"Jo\u00e3o Vieira\" \/>\n<meta property=\"article:modified_time\" content=\"2020-01-15T11:01:48+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/home_network.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1034\" \/>\n\t<meta property=\"og:image:height\" content=\"656\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/interests\/\",\"url\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/interests\/\",\"name\":\"System and network administration - Jo\u00e3o Vieira\",\"isPartOf\":{\"@id\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/interests\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/interests\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/home_network.png\",\"datePublished\":\"2019-05-17T21:22:21+00:00\",\"dateModified\":\"2020-01-15T11:01:48+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/interests\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/interests\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/interests\/#primaryimage\",\"url\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/home_network.png\",\"contentUrl\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/home_network.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/interests\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"System and network administration\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/#website\",\"url\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/\",\"name\":\"Jo\u00e3o Vieira\",\"description\":\"Personal website\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"System and network administration - Jo\u00e3o Vieira","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/interests\/","og_locale":"en_US","og_type":"article","og_title":"System and network administration - Jo\u00e3o Vieira","og_description":"One of my main interests outside my field of research is network and system administration. I became particularly interested in this topic after working for over two years in the T\u00e9cnico Lisboa&#8217;s Departments of Electrical and Computer Engineering&#8217;s Computer Laboratory and kept this skill alive ever since. After ceasing my [&hellip;]","og_url":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/interests\/","og_site_name":"Jo\u00e3o Vieira","article_modified_time":"2020-01-15T11:01:48+00:00","og_image":[{"width":1034,"height":656,"url":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/home_network.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/interests\/","url":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/interests\/","name":"System and network administration - Jo\u00e3o Vieira","isPartOf":{"@id":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/#website"},"primaryImageOfPage":{"@id":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/interests\/#primaryimage"},"image":{"@id":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/interests\/#primaryimage"},"thumbnailUrl":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/home_network.png","datePublished":"2019-05-17T21:22:21+00:00","dateModified":"2020-01-15T11:01:48+00:00","breadcrumb":{"@id":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/interests\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/interests\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/interests\/#primaryimage","url":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/home_network.png","contentUrl":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-content\/uploads\/2019\/06\/home_network.png"},{"@type":"BreadcrumbList","@id":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/interests\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/"},{"@type":"ListItem","position":2,"name":"System and network administration"}]},{"@type":"WebSite","@id":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/#website","url":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/","name":"Jo\u00e3o Vieira","description":"Personal website","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-json\/wp\/v2\/pages\/289","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-json\/wp\/v2\/comments?post=289"}],"version-history":[{"count":26,"href":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-json\/wp\/v2\/pages\/289\/revisions"}],"predecessor-version":[{"id":608,"href":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-json\/wp\/v2\/pages\/289\/revisions\/608"}],"wp:attachment":[{"href":"https:\/\/v2.joaomiguelvieira.com\/~joaovieira\/site\/wp-json\/wp\/v2\/media?parent=289"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}