2020-01-17-documenting-server.html (2815B) - raw


      1 <!-- title: Documenting my server -->
      2 <!-- slug: documenting-server -->
      3 <!-- categories: Self-hosting -->
      4 <!-- date: 2020-01-17T00:00:00Z -->
      5 <!-- lastmod: 2020-03-01T01:00:00Z -->
      6 
      7 <p>
      8   Not long ago I realized that I could get $50 of credit on Digital Ocean with my GitHub Student
      9   account, so I decided to try it. I transferred my website there, and with time I started adding
     10   services. It is currently running the following services:</p>
     11 <!-- /p -->
     12 
     13 <ul>
     14   <li>My webpage (<a href="https://oscarbenedito.com">oscarbenedito.com</a>).</li>
     15   <li>
     16     Redirections from <a href="https://www.oscarbenedito.com">www.oscarbenedito.com</a>,
     17     <a href="https://obenedito.org">obenedito.org</a> and
     18     <a href="https://www.obenedito.org">www.obenedito.org</a> to
     19     <a href="https://oscarbenedito.com">oscarbenedito.com</a>.</li>
     20   <!-- /li -->
     21   <li>A <a href="https://gotify.net/">Gotify</a> server through which I am able to send notifications to my phone.</li>
     22   <li> A static page showing traffic on my website thanks to <a href="https://goaccess.io/">GoAccess</a> (which analyzes Apache's log files).</li>
     23   <li>It runs <a href="https://git.oscarbenedito.com/git-backup/">this script</a> daily to back up all my git repositories and others I find interesting.</li>
     24   <li>It notifies me if any new documents are uploaded to my college Moodle using <a href="https://git.oscarbenedito.com/osf/file/moodle-updates-notifications.py.html">this script</a> and a cronjob.</li>
     25   <li>It notifies me every time someone logs in to the server using SSH.</li>
     26 </ul>
     27 
     28 <p>
     29   As time passes I am adding more and more features to my server. In the first place because it is
     30   fun to learn about different things and installing them, but also because they are useful features
     31   (indeed I have tried to run other programs which ended up not being as useful as I initially
     32   thought). I realized it is getting to the point where if something was to happen to my server (and
     33   it got erased), I would probably not remember how I set up everything, so I decided to do some
     34   documentation work<sup id="fnref1"><a href="#fn1">1</a></sup>.</p>
     35 <!-- /p -->
     36 
     37 <p>
     38   After some time, I am nearly done documenting everything that is set up and I am pretty confident
     39   if I had to do it all again now, the documentation would be very useful. Besides, it is also a
     40   good way of keeping a record of everything running in the server and its configuration.</p>
     41 <!-- /p -->
     42 
     43 <!-- footnotes -->
     44 <hr />
     45 
     46 <ol>
     47   <li id="fn1">
     48     I know that taking snapshots of the server or making a backup every once in a while would solve
     49     that issue. However, that wasn't the only goal. I wanted to be able to rebuild my server from
     50     scratch again. <a href="#fnref1" title="Jump back to footnote 1 in the text">&#8617;</a></li>
     51   <!-- /li -->
     52 </ol>