====== Standard info - webfront ======
* Lever på: [[drift:hotell.nuug.no|hotell.nuug.no]]
* Installasjonsmetode: Manuell, beskrevet lenger ned på denne wiki-siden
* Installasjonsmappe: /var/lib/planet
* Status backup: FIXME
* Status auto-oppdatering: Håndteres av apt
* Status sikkerhet: Vurdert, tiltak utført 2025-01-07. Se eget kapittel.
* Status persondatahåndtering: Ingen persondata
====== Installasjon av planet ======
''root@hotell:/var/lib/planet# apt install libvitacilina-perl \\
root@hotell:/srv/http/planet.nuug.no/html# mkdir /var/lib/planet \\
root@hotell:/srv/http/planet.nuug.no/html# cd /var/lib/planet \\
root@hotell:/var/lib/planet# cp /usr/share/doc/libvitacilina-perl/examples/ \\
feeds.yaml index.html trigger.pl wiki.tt \\
root@hotell:/var/lib/planet# cp /usr/share/doc/libvitacilina-perl/examples/* . \\
root@hotell:/var/lib/planet# ls -l \\
totalt 16 \\
-rw-r--r-- 1 root root 509 jan. 7 18:37 feeds.yaml \\
-rw-r--r-- 1 root root 3883 jan. 7 18:37 index.html \\
-rw-r--r-- 1 root root 166 jan. 7 18:37 trigger.pl \\
-rw-r--r-- 1 root root 140 jan. 7 18:37 wiki.tt \\
root@hotell:/var/lib/planet# rm index.html \\
root@hotell:/var/lib/planet# nano trigger.pl \\
root@hotell:/var/lib/planet# diff -wu trigger.pl.old trigger.pl \\
--- trigger.pl.old 2025-01-07 18:40:20.804000000 +0100 \\
+++ trigger.pl 2025-01-07 18:41:33.440000000 +0100 \\
@@ -8,6 +8,7 @@ \\
my $v = Vitacilina->new( \\
config => 'feeds.yaml', \\
template => 'wiki.tt', \\
+ output => '/srv/http/planet.nuug.no/html/index.html', \\
limit => 20, \\
); \\
root@hotell:~# adduser --system --group planetuser \\
root@hotell:~# chown -R planetuser:planetuser /var/lib/planet \\
root@hotell:~# chmod 640 /var/lib/planet/* \\
root@hotell:/var/lib/planet# nano /etc/cron.d/planet \\
root@hotell:/var/lib/planet# cat /etc/cron.d/planet \\
MAILTO="" \\
\\
47 * * * * planetuser perl -e 'sleep int(rand(1800))' ; cd /var/lib/planet ; perl trigger.pl > /dev/null 2>&1 \\
''
====== Feeds ======
===== Gjeldene =====
''root@hotell:/var/lib/planet# cat feeds.yaml \\
http://hild1.no/feed.xml: \\
name: Anders Einar Hilden \\
https://blog.des.no/feed: \\
name: Dag-Erling Smørgrav \\
https://www.espenbraastad.no/index.xml: \\
name: Espen Braastad \\
https://unhammer.wordpress.com/feed/: \\
name: Kevin Brubeck Unhammer \\
https://mimesbronn.wordpress.com/feed/: \\
name: Mimes brønn \\
https://www.nuugfoundation.no/no/news.rss: \\
name: NUUG Foundation \\
http://www.nuug.no/pub/video/nuug-video-ogv.rss: \\
name: NUUG events video archive \\
https://bsdly.blogspot.com/feeds/posts/default: \\
name: Peter Hansteen (That Grumpy BSD Guy) \\
https://code.foo.no/feed/: \\
name: Salve J. Nilsen''
===== Fjernet =====
(mest sannsynlig pga feed ikke lenger finnes) \\
''https://people.skolelinux.org/pere/blog/index.rss: \\
name: Petter Reinholdtsen \\
https://twistylife.blogspot.com/feeds/posts/default: \\
name: Nicolai Langfeldt \\
https://www.nuug.no/newsblog.rss \\
name: NUUG news \\
https://blogs.gnome.org/oleaamot/feed/: \\
name: Ole Aamot – GNOME Development Blog''
====== Template ======
''root@hotell:/var/lib/planet# cat wiki.tt \\
[% FOREACH p IN data %] \\
[% p.title %] by [% p.author %] \\
\\
[% END %] ''
====== Forvaltningsvurderinger ======
===== Sikkerhet =====
* Sårbart tredjepartsbibliotek
* libvitacilina-perl kan inneholde sårbarheter
* Delvis mitigert ved å installere fra en kilde man stoler på (Debians pakkebrønn)
* Mitigert ved å ikke kjøre koden som root.
* Liberale filrettigheter
* Alle brukere kan lese filene i /var/lib/planet
* Mitigeres ved å holde filene frie for hemmeligheter
* Mitigert ved å stramme inn filrettigheter
* Cron-job kjører som root
* Potensielt misbruk av root-rettigheter
* Mitigert ved å opprette egen bruker for kjøring av planet
* Fil-generering i webroot
* Mulig XSS eller defacement, teknisk utnyttelse avhengig av innholdet i feeds
* Mitigeres ved å begrense omfanget av feeds og dens forfattere
* Skal være håndtert i tredjepartsbibliotekene, ikke bekreftet eller testet
* Mitigert videre ved ordentlig oppsett av sikkerhetsrelaterte web-headers som CSP osv
* Direkte republisering av ufiltrerte ytringer
* Kan inneholde skadelig innhold / hatfulle ytringer
* Mitigeres ved å begrense omfanget av feeds og dens forfattere
* Kunne vært mitigert ytterligere ved ordfiltrering i kode
* Kunne vært mitigert ytterligere ved å merke siden ordentlig med at det ikke er NUUGs egne ytringer
===== Personvern =====
Denne webfronten kjører en applikasjon som kun republiserer offentlig tilgjengelig informasjon fra andre åpne kilder, slik at ønsket publikum slipper å navigere til alle de forskjellige kildene. Dette betyr at applikasjonen ikke lagrer noe persondata som brukernavn o.l., ettersom det ikke er noe pålogging eller brukerregistrering. Det er heller ikke mulig for noen å generere noe nytt orginalt innhold gjennom denne applikasjonen.