1 <?xml version=
"1.0" encoding=
"utf-8"?>
2 <rss version='
2.0' xmlns:lj='http://www.livejournal.org/rss/lj/
1.0/' xmlns:
atom=
"http://www.w3.org/2005/Atom">
4 <title>Petter Reinholdtsen
</title>
5 <description></description>
6 <link>http://people.skolelinux.org/pere/blog/
</link>
7 <atom:link href=
"http://people.skolelinux.org/pere/blog/index.rss" rel=
"self" type=
"application/rss+xml" />
10 <title>Where did that package go?
&mdash; geolocated IP traceroute
</title>
11 <link>http://people.skolelinux.org/pere/blog/Where_did_that_package_go___mdash__geolocated_IP_traceroute.html
</link>
12 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Where_did_that_package_go___mdash__geolocated_IP_traceroute.html
</guid>
13 <pubDate>Mon,
9 Jan
2017 12:
20:
00 +
0100</pubDate>
14 <description><p
>Did you ever wonder where the web trafic really flow to reach the
15 web servers, and who own the network equipment it is flowing through?
16 It is possible to get a glimpse of this from using traceroute, but it
17 is hard to find all the details. Many years ago, I wrote a system to
18 map the Norwegian Internet (trying to figure out if our plans for a
19 network game service would get low enough latency, and who we needed
20 to talk to about setting up game servers close to the users. Back
21 then I used traceroute output from many locations (I asked my friends
22 to run a script and send me their traceroute output) to create the
23 graph and the map. The output from traceroute typically look like
27 traceroute to www.stortinget.no (
85.88.67.10),
30 hops max,
60 byte packets
28 1 uio-gw10.uio.no (
129.240.202.1)
0.447 ms
0.486 ms
0.621 ms
29 2 uio-gw8.uio.no (
129.240.24.229)
0.467 ms
0.578 ms
0.675 ms
30 3 oslo-gw1.uninett.no (
128.39.65.17)
0.385 ms
0.373 ms
0.358 ms
31 4 te3-
1-
2.br1.fn3.as2116.net (
193.156.90.3)
1.174 ms
1.172 ms
1.153 ms
32 5 he16-
1-
1.cr1.san110.as2116.net (
195.0.244.234)
2.627 ms he16-
1-
1.cr2.oslosda310.as2116.net (
195.0.244.48)
3.172 ms he16-
1-
1.cr1.san110.as2116.net (
195.0.244.234)
2.857 ms
33 6 ae1.ar8.oslosda310.as2116.net (
195.0.242.39)
0.662 ms
0.637 ms ae0.ar8.oslosda310.as2116.net (
195.0.242.23)
0.622 ms
34 7 89.191.10.146 (
89.191.10.146)
0.931 ms
0.917 ms
0.955 ms
38 </pre
></p
>
40 <p
>This show the DNS names and IP addresses of (at least some of the)
41 network equipment involved in getting the data traffic from me to the
42 www.stortinget.no server, and how long it took in milliseconds for a
43 package to reach the equipment and return to me. Three packages are
44 sent, and some times the packages do not follow the same path. This
45 is shown for hop
5, where three different IP addresses replied to the
46 traceroute request.
</p
>
48 <p
>There are many ways to measure trace routes. Other good traceroute
49 implementations I use are traceroute (using ICMP packages) mtr (can do
50 both ICMP, UDP and TCP) and scapy (python library with ICMP, UDP, TCP
51 traceroute and a lot of other capabilities). All of them are easily
52 available in
<a href=
"https://www.debian.org/
">Debian
</a
>.
</p
>
54 <p
>This time around, I wanted to know the geographic location of
55 different route points, to visualize how visiting a web page spread
56 information about the visit to a lot of servers around the globe. The
57 background is that a web site today often will ask the browser to get
58 from many servers the parts (for example HTML, JSON, fonts,
59 JavaScript, CSS, video) required to display the content. This will
60 leak information about the visit to those controlling these servers
61 and anyone able to peek at the data traffic passing by (like your ISP,
62 the ISPs backbone provider, FRA, GCHQ, NSA and others).
</p
>
64 <p
>Lets pick an example, the Norwegian parliament web site
65 www.stortinget.no. It is read daily by all members of parliament and
66 their staff, as well as political journalists, activits and many other
67 citizens of Norway. A visit to the www.stortinget.no web site will
68 ask your browser to contact
8 other servers: ajax.googleapis.com,
69 insights.hotjar.com, script.hotjar.com, static.hotjar.com,
70 stats.g.doubleclick.net, www.google-analytics.com,
71 www.googletagmanager.com and www.netigate.se. I extracted this by
72 asking
<a href=
"http://phantomjs.org/
">PhantomJS
</a
> to visit the
73 Stortinget web page and tell me all the URLs PhantomJS downloaded to
74 render the page (in HAR format using
75 <a href=
"https://github.com/ariya/phantomjs/blob/master/examples/netsniff.js
">their
76 netsniff example
</a
>. I am very grateful to Gorm for showing me how
77 to do this). My goal is to visualize network traces to all IP
78 addresses behind these DNS names, do show where visitors personal
79 information is spread when visiting the page.
</p
>
81 <p align=
"center
"><a href=
"www.stortinget.no-geoip.kml
"><img
82 src=
"http://people.skolelinux.org/pere/blog/images/
2017-
01-
09-www.stortinget.no-geoip-small.png
" alt=
"map of combined traces for URLs used by www.stortinget.no using GeoIP
"/
></a
></p
>
84 <p
>When I had a look around for options, I could not find any good
85 free software tools to do this, and decided I needed my own traceroute
86 wrapper outputting KML based on locations looked up using GeoIP. KML
87 is easy to work with and easy to generate, and understood by several
88 of the GIS tools I have available. I got good help from by NUUG
89 colleague Anders Einar with this, and the result can be seen in
90 <a href=
"https://github.com/petterreinholdtsen/kmltraceroute
">my
91 kmltraceroute git repository
</a
>. Unfortunately, the quality of the
92 free GeoIP databases I could find (and the for-pay databases my
93 friends had access to) is not up to the task. The IP addresses of
94 central Internet infrastructure would typically be placed near the
95 controlling companies main office, and not where the router is really
96 located, as you can see from
<a href=
"www.stortinget.no-geoip.kml
">the
97 KML file I created
</a
> using the GeoLite City dataset from MaxMind.
99 <p align=
"center
"><a href=
"http://people.skolelinux.org/pere/blog/images/
2017-
01-
09-www.stortinget.no-scapy.svg
"><img
100 src=
"http://people.skolelinux.org/pere/blog/images/
2017-
01-
09-www.stortinget.no-scapy-small.png
" alt=
"scapy traceroute graph for URLs used by www.stortinget.no
"/
></a
></p
>
102 <p
>I also had a look at the visual traceroute graph created by
103 <a href=
"http://www.secdev.org/projects/scapy/
">the scrapy project
</a
>,
104 showing IP network ownership (aka AS owner) for the IP address in
106 <a href=
"http://people.skolelinux.org/pere/blog/images/
2017-
01-
09-www.stortinget.no-scapy.svg
">The
107 graph display a lot of useful information about the traceroute in SVG
108 format
</a
>, and give a good indication on who control the network
109 equipment involved, but it do not include geolocation. This graph
110 make it possible to see the information is made available at least for
111 UNINETT, Catchcom, Stortinget, Nordunet, Google, Amazon, Telia, Level
112 3 Communications and NetDNA.
</p
>
114 <p align=
"center
"><a href=
"https://geotraceroute.com/index.php?node=
4&host=www.stortinget.no
"><img
115 src=
"http://people.skolelinux.org/pere/blog/images/
2017-
01-
09-www.stortinget.no-geotraceroute-small.png
" alt=
"example geotraceroute view for www.stortinget.no
"/
></a
></p
>
117 <p
>In the process, I came across the
118 <a href=
"https://geotraceroute.com/
">web service GeoTraceRoute
</a
> by
119 Salim Gasmi. Its methology of combining guesses based on DNS names,
120 various location databases and finally use latecy times to rule out
121 candidate locations seemed to do a very good job of guessing correct
122 geolocation. But it could only do one trace at the time, did not have
123 a sensor in Norway and did not make the geolocations easily available
124 for postprocessing. So I contacted the developer and asked if he
125 would be willing to share the code (he refused until he had time to
126 clean it up), but he was interested in providing the geolocations in a
127 machine readable format, and willing to set up a sensor in Norway. So
128 since yesterday, it is possible to run traces from Norway in this
129 service thanks to a sensor node set up by
130 <a href=
"https://www.nuug.no/
">the NUUG assosiation
</a
>, and get the
131 trace in KML format for further processing.
</p
>
133 <p align=
"center
"><a href=
"http://people.skolelinux.org/pere/blog/images/
2017-
01-
09-www.stortinget.no-geotraceroute-kml-join.kml
"><img
134 src=
"http://people.skolelinux.org/pere/blog/images/
2017-
01-
09-www.stortinget.no-geotraceroute-kml-join.png
" alt=
"map of combined traces for URLs used by www.stortinget.no using geotraceroute
"/
></a
></p
>
136 <p
>Here we can see a lot of trafic passes Sweden on its way to
137 Denmark, Germany, Holland and Ireland. Plenty of places where the
138 Snowden confirmations verified the traffic is read by various actors
139 without your best interest as their top priority.
</p
>
141 <p
>Combining KML files is trivial using a text editor, so I could loop
142 over all the hosts behind the urls imported by www.stortinget.no and
143 ask for the KML file from geotraceroute, and create a combined KML
144 file with all the traces (unfortunately only one of the IP addresses
145 behind the DNS name is traced this time. To get them all, one would
146 have to request traces using IP number instead of DNS names from
147 geotraceroute). That might be the next step in this project.
</p
>
149 <p
>Armed with these tools, I find it a lot easier to figure out where
150 the IP traffic moves and who control the boxes involved in moving it.
151 And every time the link crosses for example the Swedish border, we can
152 be sure Swedish Signal Intelligence (FRA) is listening, as GCHQ do in
153 Britain and NSA in USA and cables around the globe. (Hm, what should
154 we tell them? :) Keep that in mind if you ever send anything
155 unencrypted over the Internet.
</p
>
157 <p
>PS: KML files are drawn using
158 <a href=
"http://ivanrublev.me/kml/
">the KML viewer from Ivan
159 Rublev
<a/
>, as it was less cluttered than the local Linux application
160 Marble. There are heaps of other options too.
</p
>
165 <title>Introducing ical-archiver to split out old iCalendar entries
</title>
166 <link>http://people.skolelinux.org/pere/blog/Introducing_ical_archiver_to_split_out_old_iCalendar_entries.html
</link>
167 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Introducing_ical_archiver_to_split_out_old_iCalendar_entries.html
</guid>
168 <pubDate>Wed,
4 Jan
2017 12:
20:
00 +
0100</pubDate>
169 <description><p
>Do you have a large
<a href=
"https://icalendar.org/
">iCalendar
</a
>
170 file with lots of old entries, and would like to archive them to save
171 space and resources? At least those of us using KOrganizer know that
172 turning on and off an event set become slower and slower the more
173 entries are in the set. While working on migrating our calendars to a
174 <a href=
"http://radicale.org/
">Radicale CalDAV server
</a
> on our
175 <a href=
"https://freedomboxfoundation.org/
">Freedombox server
</a/
>, my
176 loved one wondered if I could find a way to split up the calendar file
177 she had in KOrganizer, and I set out to write a tool. I spent a few
178 days writing and polishing the system, and it is now ready for general
180 <a href=
"https://github.com/petterreinholdtsen/ical-archiver
">code for
181 ical-archiver
</a
> is publicly available from a git repository on
182 github. The system is written in Python and depend on
183 <a href=
"http://eventable.github.io/vobject/
">the vobject Python
184 module
</a
>.
</p
>
186 <p
>To use it, locate the iCalendar file you want to operate on and
187 give it as an argument to the ical-archiver script. This will
188 generate a set of new files, one file per component type per year for
189 all components expiring more than two years in the past. The vevent,
190 vtodo and vjournal entries are handled by the script. The remaining
191 entries are stored in a
'remaining
' file.
</p
>
193 <p
>This is what a test run can look like:
196 % ical-archiver t/
2004-
2016.ics
200 Writing t/
2004-
2016.ics-subset-vevent-
2004.ics
201 Writing t/
2004-
2016.ics-subset-vevent-
2005.ics
202 Writing t/
2004-
2016.ics-subset-vevent-
2006.ics
203 Writing t/
2004-
2016.ics-subset-vevent-
2007.ics
204 Writing t/
2004-
2016.ics-subset-vevent-
2008.ics
205 Writing t/
2004-
2016.ics-subset-vevent-
2009.ics
206 Writing t/
2004-
2016.ics-subset-vevent-
2010.ics
207 Writing t/
2004-
2016.ics-subset-vevent-
2011.ics
208 Writing t/
2004-
2016.ics-subset-vevent-
2012.ics
209 Writing t/
2004-
2016.ics-subset-vevent-
2013.ics
210 Writing t/
2004-
2016.ics-subset-vevent-
2014.ics
211 Writing t/
2004-
2016.ics-subset-vjournal-
2007.ics
212 Writing t/
2004-
2016.ics-subset-vjournal-
2011.ics
213 Writing t/
2004-
2016.ics-subset-vtodo-
2012.ics
214 Writing t/
2004-
2016.ics-remaining.ics
216 </pre
></p
>
218 <p
>As you can see, the original file is untouched and new files are
219 written with names derived from the original file. If you are happy
220 with their content, the *-remaining.ics file can replace the original
221 the the others can be archived or imported as historical calendar
222 collections.
</p
>
224 <p
>The script should probably be improved a bit. The error handling
225 when discovering broken entries is not good, and I am not sure yet if
226 it make sense to split different entry types into separate files or
227 not. The program is thus likely to change. If you find it
228 interesting, please get in touch. :)
</p
>
230 <p
>As usual, if you use Bitcoin and want to show your support of my
231 activities, please send Bitcoin donations to my address
232 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
&label=PetterReinholdtsenBlog
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
</p
>
237 <title>Appstream just learned how to map hardware to packages too!
</title>
238 <link>http://people.skolelinux.org/pere/blog/Appstream_just_learned_how_to_map_hardware_to_packages_too_.html
</link>
239 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Appstream_just_learned_how_to_map_hardware_to_packages_too_.html
</guid>
240 <pubDate>Fri,
23 Dec
2016 10:
30:
00 +
0100</pubDate>
241 <description><p
>I received a very nice Christmas present today. As my regular
242 readers probably know, I have been working on the
243 <a href=
"http://packages.qa.debian.org/isenkram
">the Isenkram
244 system
</a
> for many years. The goal of the Isenkram system is to make
245 it easier for users to figure out what to install to get a given piece
246 of hardware to work in Debian, and a key part of this system is a way
247 to map hardware to packages. Isenkram have its own mapping database,
248 and also uses data provided by each package using the AppStream
249 metadata format. And today,
250 <a href=
"https://tracker.debian.org/pkg/appstream
">AppStream
</a
> in
251 Debian learned to look up hardware the same way Isenkram is doing it,
252 ie using fnmatch():
</p
>
255 % appstreamcli what-provides modalias \
256 usb:v1130p0202d0100dc00dsc00dp00ic03isc00ip00in00
257 Identifier: pymissile [generic]
259 Summary: Control original Striker USB Missile Launcher
261 % appstreamcli what-provides modalias usb:v0694p0002d0000
262 Identifier: libnxt [generic]
264 Summary: utility library for talking to the LEGO Mindstorms NXT brick
267 Identifier: t2n [generic]
269 Summary: Simple command-line tool for Lego NXT
272 Identifier: python-nxt [generic]
274 Summary: Python driver/interface/wrapper for the Lego Mindstorms NXT robot
277 Identifier: nbc [generic]
279 Summary: C compiler for LEGO Mindstorms NXT bricks
282 </pre
></p
>
284 <p
>A similar query can be done using the combined AppStream and
285 Isenkram databases using the isenkram-lookup tool:
</p
>
288 % isenkram-lookup usb:v1130p0202d0100dc00dsc00dp00ic03isc00ip00in00
290 % isenkram-lookup usb:v0694p0002d0000
296 </pre
></p
>
298 <p
>You can find modalias values relevant for your machine using
299 <tt
>cat $(find /sys/devices/ -name modalias)
</tt
>.
301 <p
>If you want to make this system a success and help Debian users
302 make the most of the hardware they have, please
303 help
<a href=
"https://wiki.debian.org/AppStream/Guidelines
">add
304 AppStream metadata for your package following the guidelines
</a
>
305 documented in the wiki. So far only
11 packages provide such
306 information, among the several hundred hardware specific packages in
307 Debian. The Isenkram database on the other hand contain
101 packages,
308 mostly related to USB dongles. Most of the packages with hardware
309 mapping in AppStream are LEGO Mindstorms related, because I have, as
310 part of my involvement in
311 <a href=
"https://wiki.debian.org/LegoDesigners
">the Debian LEGO
312 team
</a
> given priority to making sure LEGO users get proposed the
313 complete set of packages in Debian for that particular hardware. The
314 team also got a nice Christmas present today. The
315 <a href=
"https://tracker.debian.org/pkg/nxt-firmware
">nxt-firmware
316 package
</a
> made it into Debian. With this package in place, it is
317 now possible to use the LEGO Mindstorms NXT unit with only free
318 software, as the nxt-firmware package contain the source and firmware
319 binaries for the NXT brick.
</p
>
321 <p
>As usual, if you use Bitcoin and want to show your support of my
322 activities, please send Bitcoin donations to my address
323 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
&label=PetterReinholdtsenBlog
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
</p
>
328 <title>Isenkram updated with a lot more hardware-package mappings
</title>
329 <link>http://people.skolelinux.org/pere/blog/Isenkram_updated_with_a_lot_more_hardware_package_mappings.html
</link>
330 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Isenkram_updated_with_a_lot_more_hardware_package_mappings.html
</guid>
331 <pubDate>Tue,
20 Dec
2016 11:
55:
00 +
0100</pubDate>
332 <description><p
><a href=
"http://packages.qa.debian.org/isenkram
">The Isenkram
333 system
</a
> I wrote two years ago to make it easier in Debian to find
334 and install packages to get your hardware dongles to work, is still
335 going strong. It is a system to look up the hardware present on or
336 connected to the current system, and map the hardware to Debian
337 packages. It can either be done using the tools in isenkram-cli or
338 using the user space daemon in the isenkram package. The latter will
339 notify you, when inserting new hardware, about what packages to
340 install to get the dongle working. It will even provide a button to
341 click on to ask packagekit to install the packages.
</p
>
343 <p
>Here is an command line example from my Thinkpad laptop:
</p
>
362 </pre
></p
>
364 <p
>It can also list the firware package providing firmware requested
365 by the load kernel modules, which in my case is an empty list because
366 I have all the firmware my machine need:
369 % /usr/sbin/isenkram-autoinstall-firmware -l
370 info: did not find any firmware files requested by loaded kernel modules. exiting
372 </pre
></p
>
374 <p
>The last few days I had a look at several of the around
250
375 packages in Debian with udev rules. These seem like good candidates
376 to install when a given hardware dongle is inserted, and I found
377 several that should be proposed by isenkram. I have not had time to
378 check all of them, but am happy to report that now there are
97
379 packages packages mapped to hardware by Isenkram.
11 of these
380 packages provide hardware mapping using AppStream, while the rest are
381 listed in the modaliases file provided in isenkram.
</p
>
383 <p
>These are the packages with hardware mappings at the moment. The
384 <strong
>marked packages
</strong
> are also announcing their hardware
385 support using AppStream, for everyone to use:
</p
>
387 <p
>air-quality-sensor, alsa-firmware-loaders, argyll,
388 <strong
>array-info
</strong
>, avarice, avrdude, b43-fwcutter,
389 bit-babbler, bluez, bluez-firmware,
<strong
>brltty
</strong
>,
390 <strong
>broadcom-sta-dkms
</strong
>, calibre, cgminer, cheese, colord,
391 <strong
>colorhug-client
</strong
>, dahdi-firmware-nonfree, dahdi-linux,
392 dfu-util, dolphin-emu, ekeyd, ethtool, firmware-ipw2x00, fprintd,
393 fprintd-demo,
<strong
>galileo
</strong
>, gkrellm-thinkbat, gphoto2,
394 gpsbabel, gpsbabel-gui, gpsman, gpstrans, gqrx-sdr, gr-fcdproplus,
395 gr-osmosdr, gtkpod, hackrf, hdapsd, hdmi2usb-udev, hpijs-ppds, hplip,
396 ipw3945-source, ipw3945d, kde-config-tablet, kinect-audio-setup,
397 <strong
>libnxt
</strong
>, libpam-fprintd,
<strong
>lomoco
</strong
>,
398 madwimax, minidisc-utils, mkgmap, msi-keyboard, mtkbabel,
399 <strong
>nbc
</strong
>,
<strong
>nqc
</strong
>, nut-hal-drivers, ola,
400 open-vm-toolbox, open-vm-tools, openambit, pcgminer, pcmciautils,
401 pcscd, pidgin-blinklight, printer-driver-splix,
402 <strong
>pymissile
</strong
>, python-nxt, qlandkartegt,
403 qlandkartegt-garmin, rosegarden, rt2x00-source, sispmctl,
404 soapysdr-module-hackrf, solaar, squeak-plugins-scratch, sunxi-tools,
405 <strong
>t2n
</strong
>, thinkfan, thinkfinger-tools, tlp, tp-smapi-dkms,
406 tp-smapi-source, tpb, tucnak, uhd-host, usbmuxd, viking,
407 virtualbox-ose-guest-x11, w1retap, xawtv, xserver-xorg-input-vmmouse,
408 xserver-xorg-input-wacom, xserver-xorg-video-qxl,
409 xserver-xorg-video-vmware, yubikey-personalization and
410 zd1211-firmware
</p
>
412 <p
>If you know of other packages, please let me know with a wishlist
413 bug report against the isenkram-cli package, and ask the package
415 <a href=
"https://wiki.debian.org/AppStream/Guidelines
">add AppStream
416 metadata according to the guidelines
</a
> to provide the information
417 for everyone. In time, I hope to get rid of the isenkram specific
418 hardware mapping and depend exclusively on AppStream.
</p
>
420 <p
>Note, the AppStream metadata for broadcom-sta-dkms is matching too
421 much hardware, and suggest that the package with with any ethernet
422 card. See
<a href=
"http://bugs.debian.org/
838735">bug #
838735</a
> for
423 the details. I hope the maintainer find time to address it soon. In
424 the mean time I provide an override in isenkram.
</p
>
429 <title>Oolite, a life in space as vagabond and mercenary - nice free software
</title>
430 <link>http://people.skolelinux.org/pere/blog/Oolite__a_life_in_space_as_vagabond_and_mercenary___nice_free_software.html
</link>
431 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Oolite__a_life_in_space_as_vagabond_and_mercenary___nice_free_software.html
</guid>
432 <pubDate>Sun,
11 Dec
2016 11:
40:
00 +
0100</pubDate>
433 <description><p align=
"center
"><img width=
"70%
" src=
"http://people.skolelinux.org/pere/blog/images/
2016-
12-
11-nice-oolite.png
"/
></p
>
435 <p
>In my early years, I played
436 <a href=
"http://wiki.alioth.net/index.php/Classic_Elite
">the epic game
437 Elite
</a
> on my PC. I spent many months trading and fighting in
438 space, and reached the
'elite
' fighting status before I moved on. The
439 original Elite game was available on Commodore
64 and the IBM PC
440 edition I played had a
64 KB executable. I am still impressed today
441 that the authors managed to squeeze both a
3D engine and details about
442 more than
2000 planet systems across
7 galaxies into a binary so
445 <p
>I have known about
<a href=
"http://www.oolite.org/
">the free
446 software game Oolite inspired by Elite
</a
> for a while, but did not
447 really have time to test it properly until a few days ago. It was
448 great to discover that my old knowledge about trading routes were
449 still valid. But my fighting and flying abilities were gone, so I had
450 to retrain to be able to dock on a space station. And I am still not
451 able to make much resistance when I am attacked by pirates, so I
452 bougth and mounted the most powerful laser in the rear to be able to
453 put up at least some resistance while fleeing for my life. :)
</p
>
455 <p
>When playing Elite in the late eighties, I had to discover
456 everything on my own, and I had long lists of prices seen on different
457 planets to be able to decide where to trade what. This time I had the
459 <a href=
"http://wiki.alioth.net/index.php/Main_Page
">Elite wiki
</a
>,
460 where information about each planet is easily available with common
461 price ranges and suggested trading routes. This improved my ability
462 to earn money and I have been able to earn enough to buy a lot of
463 useful equipent in a few days. I believe I originally played for
464 months before I could get a docking computer, while now I could get it
465 after less then a week.
</p
>
467 <p
>If you like science fiction and dreamed of a life as a vagabond in
468 space, you should try out Oolite. It is available for Linux, MacOSX
469 and Windows, and is included in Debian and derivatives since
2011.
</p
>
471 <p
>As usual, if you use Bitcoin and want to show your support of my
472 activities, please send Bitcoin donations to my address
473 <b
><a href=
"bitcoin:
15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
&label=PetterReinholdtsenBlog
">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a
></b
>.
</p
>
478 <title>Er lover brutt når personvernpolicy ikke stemmer med praksis?
</title>
479 <link>http://people.skolelinux.org/pere/blog/Er_lover_brutt_n_r_personvernpolicy_ikke_stemmer_med_praksis_.html
</link>
480 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Er_lover_brutt_n_r_personvernpolicy_ikke_stemmer_med_praksis_.html
</guid>
481 <pubDate>Fri,
9 Dec
2016 14:
20:
00 +
0100</pubDate>
482 <description><p
>Når jeg bruker
<a href=
"https://www.ghostery.com/
">Ghostery
</a
>,
483 <a href=
"https://www.ublock.org/
">uBlock
</a
>,
484 <a href=
"https://github.com/gorhill/uMatrix
">uMatrix
</a
>,
485 <a href=
"https://github.com/andryou/scriptsafe
">ScriptSafe
</a
> og andre
486 nettleserverktøy (de passer på hverandre) for å holde styr på hvordan
487 nettsteder sprer informasjon om hvilke nettsider jeg leser blir det
488 veldig synlig hvilke nettsteder som er satt opp til å utveksle
489 informasjon med utlandet og tredjeparter. For en stund siden la jeg
490 merke til at det virker å være avvik mellom personvernpolicy og
491 praksis endel steder, og tok tak i et par konkrete eksempler og sendte
492 spørsmål til Datatilsynets kontaktpunkt for veiledning:
</p
>
496 <p
>«Jeg har et spørsmål når det gjelder bruken av Google Analytics og
497 personvernpolicy. Er det lovlig for et nettsted å si en ting i
498 personvernpolicy og gjøre noe annet i virkeligheten? Spesifikt lurer
499 jeg på hvilket lov som er brutt hvis nettstedet i HTML-koden til
500 nettsidene ber lesernes nettleser om å kontakte Google Analytics og
501 slik overleverer sitt IP-nummer til Google, samtidig som
502 personvernpolicien hevder at Google Analytics kun får anonymiserte
503 data. Google får jo i slike tilfeller alltid overført fullt
504 IP-nummer, og nettstedet kan i URL-en som brukes be Google om å ikke
505 lagre deler av IP-adressen (omtalt som anonymisering av Google
508 <p
>Et eksempel er Nettavisen digi.no.
509 <a href=
"http://www.digi.no/artikler/personvernpolicy/
208772">Deres
510 personvernpolicy
</a
> sier følgende:
</p
>
513 «Tredjeparter (som Google Analytics, Cxense, TNS Gallup) får kun
517 <p
>Men når en leser artikler der så blir maskiner i Norge, USA,
518 Tyskland, Danmark, Storbritannia, Irland og Nederland varslet om
519 besøket og får dermed overlevert full IP-adresse, som datatilsynet har
520 uttalt er en personopplysning. Nettsidene er satt opp til be
521 nettleseren å kontakte
29 ulike maskiner rundt om i verden. Fire av
522 dem er er under DNS-domenene digi.no og tek.no som tilhører samme
523 eier. I tillegg ber nettsidene ikke
524 <a href=
"https://support.google.com/analytics/answer/
2763052?hl=no
">Google
525 Analytics om å fjerne siste oktett i IP-adressen ved lagring
</a
>,
526 dvs. flagget «aip=
1» er ikke satt i URL-en som brukes for å kontakte
527 Google Analytics.
</p
>
529 <p
>Tilsvarende er også tilfelle for andre nettsteder, så digi.no er
530 ikke spesiell i så måte (dagbladet.no er et annet eksempel, det
531 gjelder flere).»
</p
>
535 <p
>Etter noen dager kunne juridisk rådgiver Elisabeth Krauss Amundsen
536 hos Datatilsynet fortelle det følgende:
</p
>
539 «Hei, og takk for din e-post.
</p
>
541 <p
>Vår svartjeneste gir deg kortfattet rådgivning. Vi vil derfor ikke konkludere
542 i saken din, men gi deg råd og veiledning.
</p
>
544 <p
>Ut ifra det du skriver er det antakelig flere bestemmelser i
545 personopplysingsloven som brytes dersom virksomhetens personvernpolicy
546 sier noe annet om behandlingen av personopplysninger enn det som
547 faktisk skjer. Antakelig vil det være et brudd på informasjonsplikten
548 i personopplysingsloven §§
18 og
549 19&lt;
<a href=
"https://lovdata.no/dokument/NL/lov/
2000-
04-
14-
31/KAPITTEL_2#§
18">https://lovdata.no/dokument/NL/lov/
2000-
04-
14-
31/KAPITTEL_2#§
18</a
>&gt;
550 dersom det gis feilinformasjon om at opplysningene utleveres. Det kan
551 også stilles spørsmål om grunnkravene for behandling av
552 personopplysninger vil være oppfylt ved en utlevering av
553 personopplysninger til en tredjepart, dersom dette ikke er inkludert
554 behandlingsgrunnlaget og formålet med behandlingen, se
555 personopplysingsloven §
11, jf.
556 8.
&lt;
<a href=
"https://lovdata.no/dokument/NL/lov/
2000-
04-
14-
31/KAPITTEL_2#§
11">https://lovdata.no/dokument/NL/lov/
2000-
04-
14-
31/KAPITTEL_2#§
11</a
>&gt;»
559 <!-- Her er full URL som digi ba nettleserne bruke for å melde fra til
561 https://www.google-analytics.com/r/collect?v=
1&_v=j47
&a=
666919305&t=pageview
&_s=
1&dl=http%
3A%
2F%
2Fwww.digi.no%
2F
&ul=nb-no
&de=UTF-
8&dt=Digi.no%
20-%
20IT-bransjens%
20nettavis
&sd=
32-bit
&sr=
1024x768
&vp=
400x300
&je=
0&_u=AEAAAMQAK~
&jid=
592247632&cid=
1641512195.1480086725&tid=UA-
54426-
28&_r=
1&z=
328520576
564 <p
>Oppdatert med kunnskap om lover og regler tok jeg så kontakt med
565 Dagbladet på epostadressen de annonserer på sine
566 personvernpolicysider:
<p
>
570 <p
>«Jeg lurte litt i forbindelse med en bloggpost jeg skriver på, og lurer
571 på om dere hjelpe meg med å finne ut av følgende. Først litt
572 bakgrunnsinformasjon.
573 <a href=
"http://www.dagbladet.no/
2009/
08/
18/nyheter/avtale/brukeravtale/plikter/
7706966/
">Dagbladets
574 personvernpolicy
</a
> forteller følgende:
</p
>
577 <p
>«
3. Automatisk innhentet informasjon
</p
>
579 <p
>For eksempel IP-adressen din (ikke synlig for andre) samt
580 statistisk, automatisk produsert informasjon, som når du sist var
581 innlogget på tjenesten. Dette er informasjon vi samler for å gjøre
582 tjenesten best mulig.»
</p
>
587 <p
>Men når en besøker nettsidene til Dagbladet,
588 f.eks.
<a href=
"http://dagbladet.no/
">forsiden
</a
>, så er nettsidene
589 satt opp til å kontakte mange tredjeparter som slik får tilgang til
590 både fullt IP-nummer og i de fleste tilfeller nøyaktig hvilken
591 artikkel en leser hos Dagbladet ved at Referer-feltet fylles og legges
592 ved. Dette gjelder Google Analytics, Cxense, INS Gallup, Doubleclick
593 med flere. Totalt ber forsiden nettleseren om å koble seg opp til
60
594 nettsteder med
149 separate oppkoblinger. I hver av disse
595 oppkoblingene oversendes IP-adressen til leseren, og i følge
597 «
<a href=
"https://www.datatilsynet.no/Teknologi/Internett/Webanalyse/
">en
598 IP-adresse definert som en personopplysning fordi den kan spores
599 tilbake til en bestemt maskinvare og dermed til en enkeltperson
</a
>».
</p
>
601 <p
>Datatilsynet har fortalt meg at i følge personopplysingsloven §§
18
602 og
19 skal informasjonen som gis om bruk og utlevering av
603 personopplysninger være korrekt. De forteller videre at det er endel
604 grunnkrav som må være oppfylt ved utlevering av personopplysninger til
605 tredjeparter, nærmere forklart i personopplysingsloven §
11 som
606 henviser til §
8.
</p
>
608 <p
>Mitt spørsmål er dermed som følger:
</p
>
612 <p
>Hva mener dere i personpolicyen når dere skriver at IP-adressen ikke
613 er synlig for andre?»
</p
>
619 <p
>Etter en uke har jeg fortsatt ikke fått svar fra Dagbladet på mitt
620 spørsmål, så neste steg er antagelig å høre om Datatilsynet er
621 interessert i å se på saken.
</p
>
623 <p
>Men Dagbladet er ikke det eneste nettstedet som forteller at de
624 ikke deler personopplysninger med andre mens observerbar praksis
625 dokumenterer noe annet. Jeg sendte derfor også et spørsmål til
626 kontaktadressen til nettavisen Digi.no, og der var responsen mye
631 <p
>«Jeg lurte på en ting i forbindelse med en bloggpost jeg skriver på,
632 og lurer på om dere hjelpe meg. Først litt bakgrunnsinformasjon.
633 <a href=
"http://www.digi.no/artikler/personvernpolicy/
208772">Digi.nos
634 personvernpolicy
</a
> forteller følgende:
</p
>
637 «All personlig informasjon blir lagret i våre systemer, disse er ikke
638 tilgjengelig for tredjeparter, og blir ikke lagret i
639 informasjonskapsler. Tredjeparter (som Google Analytics, Cxense,
640 TNS Gallup) får kun anonymiserte data.»
643 <p
>Men når en besøker nettsidene til nettavisen, f.eks.
644 <a href=
"http://www.digi.no/
">forsiden
</a
>, så er nettsidene satt opp
645 til å kontakte mange tredjeparter som slik får tilgang til både fullt
646 IP-nummer og i de fleste tilfeller nøyaktig hvilken artikkel en leser
647 hos Digi.no ved at Referer-feltet fylles og legges ved. Dette gjelder
648 både Google Analytics, Cxense blant og INS Gallum. Totalt ber
649 forsiden nettleseren om å koble seg opp til
29 nettsteder med
44
650 separate oppkoblinger. I hver av disse oppkoblingene sendes
651 IP-adressen til leseren over, og i følge Datatilsynet er
652 «
<a href=
"https://www.datatilsynet.no/Teknologi/Internett/Webanalyse/
">en
653 IP-adresse definert som en personopplysning fordi den kan spores
654 tilbake til en bestemt maskinvare og dermed til en enkeltperson
</a
>».
655 Det jeg ser virker ikke å være i tråd med personvernpolicyen.
</p
>
657 <p
>Når en besøker Digi.nos nettsider gjøres det to oppkoblinger til
658 Google Analytics, en for å hente ned programkoden som samler
659 informasjon fra nettleseren og sender over til Google (analytics.js),
660 og en for å overføre det som ble samlet inn. I den siste oppkoblingen
661 er det mulig å be Google om å ikke ta vare på hele IP-adressen, men i
662 stedet fjerne siste oktett i IP-adressen. Dette omtales ofte litt
663 misvisende for «anonymisert» bruk av Google Analytics, i og med at
664 fullt IP-nummer blir sendt til Google og det er opp til Google om de
665 vil bry seg om ønsket fra de som har laget nettsiden. Ut fra det som
666 står i personvernpolicyen ville jeg tro at Digi.no ba google om å ikke
667 ta vare på hele IP-nummeret, men når en ser på den andre oppkoblingen
668 kan en se at flagget «aio=
1» ikke er satt, og at Digi.no ikke ber
669 Google om å la være å lagre hele IP-adressen. Dette virker heller
670 ikke å være i tråd med personvernpolicyen.
</p
>
672 <p
>Datatilsynet har fortalt meg at i følge personopplysingsloven §§
18
673 og
19 skal informasjonen som gis om bruk og utlevering av
674 personopplysninger være korrekt. De forteller videre at det er endel
675 grunnkrav som må være oppfylt ved utlevering av personopplysninger til
676 tredjeparter, nærmere forklart i personopplysingsloven §
11 som
677 henviser til §
8. Det er uklart for meg om disse kravene er oppfylt
678 når IP-adresse og informasjon om hvilke websider som besøkes til
679 tredjeparter.
</p
>
681 <p
>Mitt spørsmål er dermed som følger:
</p
>
685 <p
>Hva mener dere i personpolicyen når dere skriver at «Tredjeparter
686 får kun anonymiserte data»?»
</p
>
692 <p
>Redaksjonssjef Kurt Lekanger svarte samme dag og forklarte at han
693 måtte komme tilbake til meg når han hadde med utviklingsavdelingen.
694 Seks dager senere lurte jeg på hva han fant ut, og etter noen timer
695 fikk jeg så følgende svar fra direktøren for teknologi og
696 forretningsutvikling Øystein W. Høie i Teknisk Ukeblad Media:
</p
>
700 <p
>«Takk for godt tips! Det er helt riktig at IP og referrer-adresse
701 potensielt kan leses ut av tredjepart.
</p
>
703 <p
>Retningslinjene våre har vært uklare på dette tidspunktet, og vi
704 oppdaterer nå disse så dette kommer tydeligere frem. Ny tekst blir som
708 <p
>3. Dette bruker vi ikke informasjonen til Informasjon du oppgir til
709 oss blir lagret i våre systemer, er ikke tilgjengelig for
710 tredjeparter, og blir ikke lagret i informasjonskapsler.
711 Informasjonen vil kun benyttes til å gi deg som bruker mer relevant
712 informasjon og bedre tjenester.
</p
>
714 <p
>Tredjeparter (som Google Analytics, Cxense, TNS Gallup) vil kunne
715 hente ut IP-adresse og data basert på dine surfemønstre. TU Media AS
716 er pliktig å påse at disse tredjepartene behandler data i tråd med
717 norsk regelverk.
</p
>
720 <p
>Ellers har vi nå aktivert anonymisering i Google Analytics
721 (aip=
1). Kan også nevne at Tek.no-brukere som har kjøpt Tek Ekstra har
722 mulighet til å skru av all tracking i kontrollpanelet sitt. Dette er
723 noe vi vurderer å rulle ut på alle sidene i vårt nettverk.»
</p
>
727 <p
>Det var nyttig å vite at vi er enige om at formuleringen i
728 personvernpolicyen er misvisende. Derimot var det nedslående at i
729 stedet for å endre praksis for å følge det personvernpolicyen sier om
730 å ikke dele personinformasjon med tredjeparter, så velger Digi.no å
731 fortsette praksis og i stedet endre personvernpolicyen slik at den å
732 dokumentere dagens praksis med spredning av personopplysninger.
</p
>
734 <p
>Med bakgrunn i at Digi.no ikke har fulgt sin egen personvernpolicy
735 spurte jeg hvordan Digi.no kom til å håndtere endringen:
</p
>
739 <p
>«Tusen takk for beskjed om endring av personvernpolicy for digi.no.
740 Gjelder endringen også andre nettsteder?
</p
>
742 <p
>Vil tidligere håndteringen av IP-adresser og lesemønster i strid
743 med dokumentert personvernpolicy bli varslet til Datatilsynet i tråd
745 <a href=
"https://lovdata.no/forskrift/
2000-
12-
15-
1265/§
2-
6">personopplysningsforskriften
746 §
2-
6</a
>? Vil leserne bli varslet på en prominent og synlig måte om
747 at lesernes IP-adresser og lesemønster har vært utlevert til
748 tredjeparter i stid med tidligere formulering om at tredjeparter kun
749 får anonymiserte data, og at utleveringen fortsetter etter at
750 personvernpolicy er endret for å dokumentere praksis?
</p
>
752 <p
>Appropos ekstra tilbud til betalende lesere, tilbyr dere en
753 mulighet for å betale for å lese som ikke innebærer at en må gjøre det
754 mulig å la sine lesevaner blir registeret av tek.no? Betaler gjerne
755 for å lese nyheter, men ikke med en bit av privatlivet mitt. :)»
</p
>
758 <p
>Jeg fikk raskt svar tilbake fra direktøren Høie:
</p
>
761 <p
>«Tydeliggjøringen i personvernpolicy gjelder alle våre nettsteder.
</p
>
763 <p
>Vi kommer til å ta en runde og gå over vår policy i forbindelse med
764 dette, og vil i de tilfeller det er påkrevd selvsagt være tydelig
765 overfor brukere og tilsyn. Vil samtidig understreke at vår bruk av
766 tredjeparts analyseverktøy og annonsetracking er helt på linje med det
767 som er normalt for norske kommersielle nettsteder.
</p
>
769 <p
>Angående spørsmålet ditt:
770 <br
>Du vil fortsatt vises i våre interne systemer om du blir Ekstra-bruker,
771 vi skrur bare av tredjeparts tracking.»
</p
>
774 <p
>Det høres jo ikke bra ut at det er normalt for norske kommersielle
775 nettsteder å utlevere lesernes personopplysninger til utlandet. Men
776 som en kan lese fra
<a href=
"https://www.nrk.no/norge/kommunen-deler-informasjon-om-deg-med-facebook-og-google-
1.13248945">gårdagens oppslag fra NRK
</a
> gjelder
777 det også norske kommuner og andre offentlige aktører, og
778 <a href=
"http://people.skolelinux.org/pere/blog/Snurpenot_overv_kning_av_sensitiv_personinformasjon.html
">jeg
779 skrev om omfanget av problemet i fjor
</a
>. Det er uansett ikke en
780 praksis jeg tror er i tråd med kravene i personopplysningsloven, og
781 heller ikke en praksis jeg som leser synes er greit. Jeg manglet dog
782 fortsatt svar på om Digi.no kom til å varsle lesere og Datatilsynet om
783 avviket mellom praksis og policy, så jeg forsøkte meg med en ny epost
784 i går kveld:
</p
>
788 <p
>«Kan du fortelle meg om dere anser det å være påkrevd å varsle
789 tilsyn og brukere nå, når dere har oppdaget at praksis ikke har vært i
790 tråd med personvernpolicy?»
</p
>
794 <p
>Det spørsmålet vet jeg så langt ikke svaret på, men antagelig kan
795 Datatilsynet svare på om det er påkrevd å varsle tilsyn og lesere om
796 dette. Jeg planlegger å oppdatere denne bloggposten med svaret når
797 det kommer.
</p
>
799 <p
>Jeg synes jo det er spesielt ille når barn får sine
800 personopplysninger spredt til utlandet, noe jeg
801 <a href=
"https://www.mimesbronn.no/request/opplysninger_samlet_inn_av_mobil
">tok
802 opp med NRK i fjor
</a
>. De to eksemplene jeg nevner er som dere
803 forstår ikke unike, men jeg har ikke full oversikt over hvor mange
804 nettsteder dette gjelder. Jeg har ikke kapasitet til eller glede av å
805 lese alle personvernpolicyer i landet. Kanskje mine lesere kan sende
806 meg tips på epost om andre nettsteder med avvik mellom policy og
807 praksis? Hvis vi alle går sammen og kontakter de ansvarlige, kanskje
808 noen til slutt endrer praksis og slutter å dele lesernes
809 personopplysninger med tredjeparter?
</p
>
811 <p
>Apropos bruken av Google Analytics kan jeg forresten nevne at
812 Universitetet i Oslo også har tatt i bruk Google Analytics, men der
813 lagres programkoden som overføres til nettleserne lokalt og deler av
814 IP-adressen fjernes lokalt på universitetet via en mellomtjener/proxy
815 (
<a href=
"https://github.com/unioslo/ipproxy
">tilgjengelig via
816 github
</a
>) før informasjon sendes over til Google Analytics. Dermed
817 er det mulig for ansvarlige for nettstedet å
<em
>vite
</em
> at Google
818 ikke har tilgang til komplett IP-adresse. Årsaken til at denne
819 metoden brukes er at juristene ved universitetet har konkludert med at
820 det er eneste måten en kunne vurdere å bruke Google Analytics uten å
821 bryte loven. Risikoen for gjenidentifisering og
822 <a href=
"https://panopticlick.eff.org/
">identifisering ved hjelp av
823 nettleserinformasjon
</a
> er fortsatt tilstede, så det er ingen optimal
824 løsning, men det er bedre enn å håpe at f.eks. Google og alle som
825 lytter på veien skal prioritere norsk lov over sin lokale
826 lovgivning.
</p
>
828 <p
>Oppdatering
2016-
12-
09: Fikk svar fra direktøren Høie på mitt
829 spørsmål litt etter at jeg hadde publisert denne artikkelen:
</p
>
833 <p
>Vi kommer til å annonsere en oppdatert policy, og skal undersøke om
834 vi er pliktig å varsle Datatilsynet.
</p
>
836 <p
>Det vi uansett ønsker å gjøre først, er å gå gjennom hele policy
837 sammen med utviklerne og advokat, så vi er sikre på at vi går frem
838 riktig og at det ikke er flere tvetydigheter som skjuler seg i
841 <p
>Har du andre idéer eller konkrete innspill til hva som kan gjøre
842 policy tydeligere, tar vi gjerne imot det. Dette er et felt vi ønsker
843 å være ryddige på.
</p
>
847 <p
>Vi får se om de liker mine innspill, som i grunnen er å ikke pusse
848 på personvernpolicyen men i stedet slutte å spre lesernes
849 personopplysninger til eksterne aktører.
</p
>
854 <title>Fri programvare-tilbakeblikk for
2015 og
2016</title>
855 <link>http://people.skolelinux.org/pere/blog/Fri_programvare_tilbakeblikk_for_2015_og_2016.html
</link>
856 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Fri_programvare_tilbakeblikk_for_2015_og_2016.html
</guid>
857 <pubDate>Thu,
1 Dec
2016 15:
30:
00 +
0100</pubDate>
858 <description><p
>Jeg er mer en gjennomsnittlig interessert i fri programvare og fri
859 kultur, og nå når et nytt år nærmer seg slutten tenkte jeg det var på
860 tide med et lite tilbakeblikk på årene som var. Jeg har vært
861 involvert i flere prosjekter og løsninger, og her er en liten
862 gjennomgang av de jeg kom på i farten.
</p
>
864 <p
>Den største nyheten for meg fra
2015 var at jeg endelig, etter
2.5
865 år med flekkvis innsats, fikk gitt ut en bokmålsutgave av den
866 klassiske boken
<a href=
"http://free-culture.cc/
">Free Culture
</a
> av
867 Lawrence Lessig. Boken forteller om bakgrunnen for fri
868 kultur-bevegelsen, beskriver problemer med dagens opphavsrett og
869 skisserer hvordan vi kan bøte på problemene både individuelt og som
870 samfunn. Jeg anbefaler alle å lese denne boken, som jeg med god hjelp
871 har gitt ut på engelsk, bokmål og fransk. Papirboken kan bestilles i
872 nettbokhandler i USA som Lulu
873 (
<a href=
"http://www.lulu.com/shop/lawrence-lessig/fri-kultur/paperback/product-
22406445.html
">Norsk
</a
>,
874 <a href=
"http://www.lulu.com/shop/lawrence-lessig/culture-libre/paperback/product-
22645082.html
">Fransk
</a
>,
875 <a href=
"http://www.lulu.com/shop/lawrence-lessig/free-culture/paperback/product-
22402863.html
">Engelsk
</a
>),
876 Amazon og Barnes
& Noble takket være selvpubliseringsløsningen
878 <a href=
"https://github.com/petterreinholdtsen/free-culture-lessig
">ebokutgave
</a
>
879 samt alt som trengs for å oppdatere boken er tilgjengelig fra
882 <p
>Et annet prosjekt jeg er veldig fornøyd med å ha deltatt i
883 lanseringen av, er
<a href=
"https://www.mimesbronn.no/
">Mimes
884 brønn
</a
>, NUUG-tjenesten for å gjøre det enklere å be om innsyn i
885 offentlig forvaltning, og spare offentlig forvaltning for å måtte
886 besvare de samme innsynshenvendelsene gang på gang. Etter bare noen
888 <a href=
"https://www.mimesbronn.no/request/forhandlinger_om_bv
">en
889 henvendelse via tjenesten
</a
> til
890 <a href=
"https://www.stortinget.no/no/Saker-og-publikasjoner/Sporsmal/Skriftlige-sporsmal-og-svar/Skriftlig-sporsmal/?qid=
65047">spørsmål
891 fra Stortinget til regjeringen
</a
>. I dette og andre tilfeller har
892 NUUG finansiert utvidet klagesak for henvendelser som vi som står bak
893 tjenesten synes fortjener ekstra oppmerksomhet. Så langt har en liten
894 håndfull slike klagesaker blitt sendt til Sivilombudsmannen, der vi
895 fikk medhold i en saken (om .bv omtalt over) og avslag i en annen
896 (oppsummering fra møte i Pentagon om Internet-styring og nasjonal
897 sikkerhet).
</p
>
899 <p
>Etter at jeg i lengre tid har manglet GPG-nøkkel registrert i
900 Debian (den opprinnelige ble fjernet på grunn av for kort
901 nøkkellengde) fikk jeg endelig fikset ny nøkkel og Debiantilgang i
902 slutten av
2015. Aktiviteten i Debian har ikke vært spesielt
903 skadelidende mens jeg manglet nøkkel (kjenner flere som er villig til
904 å laste opp på mine vegne), men da nøkkelen var på plass steg
905 motivasjonen og jeg har blant anne brukt tiden på å bidra til at
906 pakker relatert til lyd- og videokodekene fra
907 <a href=
"http://www.xiph.org
">Xiph.org-stiftelsen
</a
> (dvs. Ogg,
908 Vorbis, Theora, Opus, etc) er i bedre stand i Debian, og har bidratt
909 til å få liv i gruppen som vedlikeholder Xiph-relaterte slik at dette
910 forhåpentligvis skal fungere bedre også i fremtiden. Jeg har jobbet
911 litt mer systemene Isenkram og appstream, som gjør det enklere å
912 håndtere ulike dongler i Debian ved at systemet selv vet og foreslår
913 hvilke pakker som bør installeres for å få dongler til å fungere. Har
914 også fått inn eller hjulpet til å få inn endel nye programpakker,
916 <a href=
"https://tracker.debian.org/pkg/sonic-pi
">Sonic Pi
</A
>,
917 <a href=
"https://tracker.debian.org/pkg/openalpr
">OpenALPR
</A
> og
918 <a href=
"https://tracker.debian.org/pkg/coz-profiler
">Coz
</A
>.
921 <p
>Et Debian-relatert prosjekt jeg følger er
922 <a href=
"https://www.freedombox.org/
">FreedomBox
</a
>, som tar sikte på
923 å tilby en løsning (både programvare og maskinvare) der hvem som helst
924 kan beholde sin private informasjon hjemme hos seg selv i stedet for å
925 dele den med skytjenesteleverandører som Google, Facebook, Twitter,
926 Appear.in med flere. I tillegg til generell deltagelse i utvikling av
927 prosjektet har jeg jobbet med å få alle Debian-pakkene som brukes av
928 Freedombox
"reproduserbare
" i Debian, dvs. gjøre det mulig å sjekke at
929 pakken som brukes i Freedombox ikke inneholder annet enn det som
930 kommer fra kildekodepakken i Debian og gir et forutsigbart resultat
931 ved bygging. Har også fulgt opp endel feilrapporter relatert til
932 Freedombox-spesifikke pakker (som Plinth og freedombox-setup) og
933 pakker som utgjør tjenestene i en Freedombox.
</p
>
935 <p
>I samarbeid med Skolelinuxprosjektet og foreningen NUUG har jeg
936 vært med å arrangere flere utviklersamlinger både i
2015 og
2016. Der
937 har oversettere og utviklere blitt lært opp og arbeidet med blant
938 annet dokumentasjon, feilfiksing og utvikling av Skolelinux og
939 Frikanalen. Relatert til dette arbeidet har jeg koordinert norsk
940 oversettelse av
<a href=
"http://debian-handbook.info/
">Håndbok for
941 Debian-administratorer
</a
> til bokmål, og flyttet
942 <a href=
"https://hosted.weblate.org/projects/debian-edu-documentation/
">oversetterarbeidet
943 av Skolelinux-håndboken
</a
> fra Transifex til Weblate. Begge bøkene
944 er snart klare for første gangs korrekturlesing og vi drømmer om å
945 gjøre dem tilgjengelig på papir.
</p
>
947 <p
>Gjennom hele perioden har jeg holdt et lite øye med NUUG-prosjektet
948 FiksGataMi, som stort sett går av seg selv uten manuelt vedlikehold,
949 men av og til er det problemer med enkelte mottakere (eposter i
950 retur). NUUG-drift oppgraderte tjenesten i løpet av
2016, og jeg
951 bisto Marius Halden litt i forbindelse med dette. Tjenesten får
952 stadig flere brukere, og flere kommuner har tatt kontakt for å lære
953 mer om hvordan FiksGataMi fungerer.
955 <p
>Den åpne TV-kanalen
956 <a href=
"http://www.frikanalen.no/
">Frikanalen
</a
> har fått en god del
957 av min oppmerksomhet. Den var i starten av
2015 tilgjengelig på
958 RiksTV kanal
50, web. Kanalen har fått et REST-basert API, og dette
959 har jeg tatt i bruk for å fylle sendeplanen med NUUG-, TED- og
960 Debian-foredrag samt andre tekniske presentasjoner. Har lastet opp
961 mye nytt der og strømlinjeformet prosessen slik at både nye TED- og
962 NUUG-foredrag går veldig greit. På høsten tok jeg en titt på
963 multikast-spredning av kanalen til Uninett, og dette er nå kommet på
964 plass, slik at alle TV-er som bruker Uninetts TV-løsning nå kan se på
965 Frikanalen. Det jobbes for tiden med å få distribusjon på Altibox, og
966 dette håper vi skal være klart i starten av
2017.
</p
>
968 <p
>Relatert til Frikanalen har jeg i lengre tid
969 <a href=
"http://people.skolelinux.org/pere/blog/tags/h264/
">forsøkt å
970 få klarhet i hva som er juridisk status for H
.264 i Norge
</a
>. Det er
971 fortsatt uklart for meg om Frikanalen må betale for retten til å
972 kringkaste eller ikke, og om vi risikerer å bryte opphavsrettsvilkår
973 ved å kringkaste på web med H
.264. Har spurt ulike aktører for å
974 forsøke å finne ut hvordan de har vurdert situasjonen, uten å bli
977 <p
>Et prosjekt som var morsomt å se ta form var Ole Aamots
978 <a href=
"https://www.youtube.com/watch?v=
8ftM5fdKgZk
">dokumentarprosjekt
979 om fri programvare i Norge
</a
>. Han fikk intervjuet en god del av de
980 mest aktive folkene i Norge, og resultatet ble interessant og
981 severdig. Et nærmere prosjekt er NUUGs samarbeide med Oslo
982 dokumentarfilmfestival om visningen av Citizenfour, der NUUG tok opp
983 samtalen i forbindelse med visningen og publiserte opptaket på
984 Frikanalen. Jeg er veldig fornøyd med å ha lyktes med å få dette på
985 plass, selv om jeg ikke rakk å være med på visningen selv. Et annet
986 NUUG-foredrag jeg er spesielt fornøyd med å ha fått på plass er
987 besøket fra Bradley Kuhn fra Software Freedom Conservancy. Det tok
988 mange måneder å organisere i samarbeid med BLUG, men til slutt klarte
989 vi å finne et tidspunkt som passet alle, slik at han kunne besøke Oslo
990 og Bergen. Opptaket fra dette er også publisert på Frikanalen.
991 Generelt har jeg veldig fornøyd med at Frikanalen nå i praksis er
992 Tekno-TV med interessante faktaprogram og presentasjoner nesten hele
993 døgnet, hele uka.
</p
>
995 <p
>Vi har i lengre tid forsøkt å få opp et Mesh-nett i Oslo, under
996 navnet dugnadsnett.no, uten at vi så langt har klart å nå kritisk
997 masse. Tanken er å gjøre det mulig å kommunisere direkte mellom
998 likeverdige parter uten sentrale knutepunkt som enkelt kan avlyttes.
999 Prosjektet er ikke dødt, men interessen blant oss som er med har ikke
1000 vært stor nok til å kunne prioritere dette over alt annet.
</p
>
1002 <p
>En ting som har tatt prioritet for min del er NUUG og EFNs forsøk
1003 på å få domstolvurdering av om det er greit for politiet å overta et
1004 DNS-domene uten domstolvurdering. Bakgrunnen er at Økokrim tok beslag
1005 i popcorn-time.no i mars
2016, med påstand om at nettstedet bidro til
1006 opphavsrettsbrudd ved å omtale fri programvareløsningen Popcorn Time
1007 og lenke til nettsteder der det var lenker til nettsteder der en kunne
1008 laste ned Popcorn Time. For det første mener vi at domstolene bør
1009 involveres før DNS-domener tas fra sine eiere, og for det andre mener
1010 vi begrunnelsen er så søkt at domenet ikke burde beslaglegges i første
1011 omgang. NUUG og EFN forsøkte først å protestere på egne vegne men ble
1012 avvist av domstolene med at vi ikke hadde rettslig interesse. Mens
1013 dette pågikk lyktes vi å få kontakt med registrar og regnskapsfører
1014 som fikk ble raidet av seks stykker fra Økokrim, og i gjeldende runde
1015 er det registrar og regnskapsfører som protesterer med støtte fra NUUG
1016 og EFN. Advokattimene renner ut og vi håper vi holder ut til saken
1017 har fått prøvd saken.
</p
>
1019 <p
>Et annet prosjekt, relatert til fri kultur og åndsverksvern, som
1020 jeg har brukt endel tid på er å maskinelt kunne identifisere verk som
1021 er falt i det fri i Norge. Jeg ønsker å vite hvor mange kunstuttrykk
1022 som blir røvet fra fellesskapet hver gang vernetiden i åndsverksloven
1023 blir utvidet, f.eks. nå sist når vernetiden for musikk ble utvidet med
1024 20 år fra
50 til
70 år med tilbakevirkende kraft, som om de som laget
1025 musikk for
60 år siden skulle bli mer motivert til å lage musikk av
1026 utvidet vernetid. Har sett på å kombinere informasjon fra
1027 Nasjonalbiblioteket, Deichmanske bibliotek, Wikipedia, Store Norske
1028 Leksikon og WorldCat, og gleder meg til Nasjonalbibliotekets initiativ
1029 for autorativ database over verk tar form.
</p
>
1031 <p
>Dårlig konkurranse på drivstoffmarkedet har irritert meg en stund,
1032 og jeg laget for flere år siden en skraper som samlet inn prisdata fra
1033 ulike kilder. Jeg ble derfor veldig glad da en økonomistudent tok
1034 kontakt i starten av
2015 og lurte på om jeg kunne bidra med data til
1035 hans masteroppgave om konkurransevilkårene i drivstoffmarkedet. Jeg
1036 bidro med glede, og resultatet er
<a
1037 href=
"https://brage.bibsys.no/xmlui//browse?value=Jakobsen%
2C+Tor+%C3%
98yvind
&type=author
">publisert
1038 i fulltekst som
"Hemmeligheten bak bensinprisen : en empirisk analyse
1039 av pumpeprisens drivkrefter
" på BIBSYS Brage
</a
>.
</p
>
1041 <p
>I tilegg til det jeg har gjort her har jeg rapportert og fikset en
1042 rekke små og store feil i fri programvare, og hjulpet
1043 Debian-bidragsytere og upstream-utviklerne med å forbedre forskjellig
1044 fri programvare og få det inn i Debian.
</p
>
1046 <p
>Mye av det jeg har fått gjort rundt fri programvare og fri kultur
1047 har vært mulig takket være at jeg får dekket
20% av arbeidstiden min
1048 på Universitetet i Oslo fra
1049 <a href=
"http://www.nuugfoundation.no/
">NUUG Foundation
</a
> for å jobbe
1050 med og koordinere fri programvareaktiviteter. Jeg er svært takknemlig
1051 til dem og min arbeidsgiver USIT for at jeg har fått muligheten. Uten
1052 dette hadde jeg ikke rukket over like mye etter hvert som ungene ble
1058 <title>Fortsatt ingen sikkerhetsoppdateringer for billettautomatene til kollektivtrafikken i Oslo?
</title>
1059 <link>http://people.skolelinux.org/pere/blog/Fortsatt_ingen_sikkerhetsoppdateringer_for_billettautomatene_til_kollektivtrafikken_i_Oslo_.html
</link>
1060 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Fortsatt_ingen_sikkerhetsoppdateringer_for_billettautomatene_til_kollektivtrafikken_i_Oslo_.html
</guid>
1061 <pubDate>Tue,
29 Nov
2016 09:
05:
00 +
0100</pubDate>
1062 <description><p
><a href=
"http://people.skolelinux.org/pere/blog/Er_billettautomatene_til_kollektivtrafikken_i_Oslo_uten_sikkerhetsoppdateringer_.html
">For
1063 fire og et halvt år siden
</a
> lot jeg meg overraske over at Ruters
1064 billettautomater for kollektivtrafikken i Oslo kjørte
1065 <a href=
"http://en.wikipedia.org/wiki/Windows_2000
">Windows
2000
1066 Professional
</a
>, et og et halvt år etter at Microsoft hadde gitt
1067 beskjed om at det ikke lenger kom sikkerhetsoppdateringer til
1068 systemet. Støtten fra Microsoft
1069 <a href=
"http://support.microsoft.com/lifecycle/search/?sort=PN
&alpha=Windows+
2000&Filter=FilterNO
">tok
1070 slutt
2010-
07-
13 i følge Wikipedia og Microsoft selv
</a
>.
</p
>
1072 <p
>For fem dager siden passerte jeg på nytt en slik billettautomat som
1073 hadde brutt sammen, og den annonserte fortsatt at den kjører Windows
1074 2000 Professional, nå mer enn seks år siden Microsoft sluttet å komme
1075 med sikkerhetspatcher til produktet. Sikret meg et bilde av
1076 krasjmeldingen på skjermen.
1078 <p
><a href=
"http://people.skolelinux.org/pere/blog/images/
2016-
11-
29-ruter-win2000pro.jpeg
"><img width=
"40%
" src=
"http://people.skolelinux.org/pere/blog/images/
2016-
11-
29-ruter-win2000pro.jpeg
" alt=
"[foto av billettautomat]
"></a
></p
>
1080 <p
>Mon tro om de mangler kildekoden til systemet som kjører på
1081 automaten, og dermed ikke uten videre kan oppgradere?
</p
>
1083 <p
>Jeg ser jo fra
1084 <a href=
"https://www.mimesbronn.no/request/ruterbillett_app
">en
1085 innsynshenvendelse om kildekoden til billett-Appen til Ruter på Mimes
1086 brønn
</a
> at Ruter tilsynelatende ikke legger sikkerheten i
1087 sertifikater, nøkler og passord, men i stedet baserer seg på at
1088 logikken i programvaren holdes hemmelig. Det borger ikke godt for
1089 sikkerheten i Ruters datasystemer.
1091 <p
>Det er nå tre og et halvt år siden
1092 <a href=
"http://www.aftenposten.no/osloby/Ingen-nye-Ruter-automater-for-sommeren-
118460b.html
">Ruter
1093 fortalte Aftenposten at nye automater ble minst seks måneder
1094 forsinket
</a
>, da leverandøren ikke hadde god nok kontroll. Det kan
1095 virke som om leverandøren ikke er alene om å ikke ha god nok
1098 <p
>Bildet er tilgjengelig for bruk med bruksvilkårene til
1099 <a href=
"http://creativecommons.org/licenses/by/
3.0/no/
">Creative
1100 Commons Navngivelse
3.0 Norge (CC BY
3.0)
</a
>.
</p
>
1102 <p
>Oppdatering
2016-
12-
01: Saken har fått omtale på
1103 <a href=
"http://www.digi.no/artikler/petter-advarte-selskapet-allerede-i-
2012-da-systemkraesjen-dukket-opp-igjen-pa-tirsdag-ble-han-svaert-overrasket/
365613">digi.no
</a
>
1105 <a href=
"https://nrkbeta.no/
2016/
12/
01/mener-oslos-billettsystem-er-en-tikkende-bombe/
">NRK
1106 Beta
</a
>.
</p
>
1111 <title>Quicker Debian installations using eatmydata
</title>
1112 <link>http://people.skolelinux.org/pere/blog/Quicker_Debian_installations_using_eatmydata.html
</link>
1113 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Quicker_Debian_installations_using_eatmydata.html
</guid>
1114 <pubDate>Fri,
25 Nov
2016 14:
50:
00 +
0100</pubDate>
1115 <description><p
>Two years ago, I did some experiments with eatmydata and the Debian
1116 installation system, observing how using
1117 <a href=
"http://people.skolelinux.org/pere/blog/Speeding_up_the_Debian_installer_using_eatmydata_and_dpkg_divert.html
">eatmydata
1118 could speed up the installation
</a
> quite a bit. My testing measured
1119 speedup around
20-
40 percent for Debian Edu, where we install around
1120 1000 packages from within the installer. The eatmydata package
1121 provide a way to disable/delay file system flushing. This is a bit
1122 risky in the general case, as files that should be stored on disk will
1123 stay only in memory a bit longer than expected, causing problems if a
1124 machine crashes at an inconvenient time. But for an installation, if
1125 the machine crashes during installation the process is normally
1126 restarted, and avoiding disk operations as much as possible to speed
1127 up the process make perfect sense.
1129 <p
>I added code in the Debian Edu specific installation code to enable
1130 <a href=
"https://tracker.debian.org/pkg/libeatmydata
">eatmydata
</a
>,
1131 but did not have time to push it any further. But a few months ago I
1132 picked it up again and worked with the libeatmydata package maintainer
1133 Mattia Rizzolo to make it easier for everyone to get this installation
1134 speedup in Debian. Thanks to our cooperation There is now an
1135 eatmydata-udeb package in Debian testing and unstable, and simply
1136 enabling/installing it in debian-installer (d-i) is enough to get the
1137 quicker installations. It can be enabled using preseeding. The
1138 following untested kernel argument should do the trick:
</p
>
1140 <blockquote
><pre
>
1141 preseed/early_command=
"anna-install eatmydata-udeb
"
1142 </pre
></blockquote
>
1144 <p
>This should ask d-i to install the package inside the d-i
1145 environment early in the installation sequence. Having it installed
1146 in d-i in turn will make sure the relevant scripts are called just
1147 after debootstrap filled /target/ with the freshly installed Debian
1148 system to configure apt to run dpkg with eatmydata. This is enough to
1149 speed up the installation process. There is a proposal to
1150 <a href=
"https://bugs.debian.org/
841153">extend the idea a bit further
1151 by using /etc/ld.so.preload instead of apt.conf
</a
>, but I have not
1152 tested its impact.
</p
>
1158 <title>Oversette bokmål til nynorsk, enklere enn du tror takket være Apertium
</title>
1159 <link>http://people.skolelinux.org/pere/blog/Oversette_bokm_l_til_nynorsk__enklere_enn_du_tror_takket_v_re_Apertium.html
</link>
1160 <guid isPermaLink=
"true">http://people.skolelinux.org/pere/blog/Oversette_bokm_l_til_nynorsk__enklere_enn_du_tror_takket_v_re_Apertium.html
</guid>
1161 <pubDate>Thu,
24 Nov
2016 10:
50:
00 +
0100</pubDate>
1162 <description><p
>I Norge er det mange som trenger å skrive både bokmål og nynorsk.
1163 Eksamensoppgaver, offentlige brev og nyheter er eksempler på tekster
1164 der det er krav om skriftspråk. I tillegg til alle skoleoppgavene som
1165 elever over det ganske land skal levere inn hvert år. Det mange ikke
1166 vet er at selv om de kommersielle alternativene
1167 <a href=
"https://translate.google.com/
">Google Translate
</a
> og
1168 <a href=
"https://www.bing.com/translator/
">Bing Translator
</a
> ikke kan
1169 bidra med å oversette mellom bokmål og nynorsk, så finnes det et
1170 utmerket fri programvarealternativ som kan. Oversetterverktøyet
1171 Apertium har støtte for en rekke språkkombinasjoner, og takket være
1172 den utrettelige innsatsen til blant annet Kevin Brubeck Unhammer, kan
1173 en bruke webtjenesten til å fylle inn en tekst på bokmål eller
1174 nynorsk, og få den automatoversatt til det andre skriftspråket.
1175 Resultatet er ikke perfekt, men et svært godt utgangspunkt. Av og til
1176 er resultatet så bra at det kan benyttes uten endringer. Jeg vet
1177 f.eks. at store deler av Joomla ble oversatt til nynorsk ved hjelp
1178 Apertium. Høres det ut som noe du kan ha bruk for? Besøk i så fall
1179 <a href=
"https://www.apertium.org/
">Apertium.org
</a
> og fyll inn
1180 teksten din i webskjemaet der.
1182 <p
>Hvis du trenger maskinell tilgang til den bakenforliggende
1183 teknologien kan du enten installere pakken
1184 <a href=
"https://tracker.debian.org/apertium-nno-nob
">apertium-nno-nob
</a
>
1185 på en Debian-maskin eller bruke web-API-et tilgjengelig fra
1186 api.apertium.org. Se
1187 <a href=
"http://wiki.apertium.org/wiki/Apertium-apy
">API-dokumentasjonen
</a
>
1188 for detaljer om web-API-et. Her kan du se hvordan resultatet blir for
1189 denne teksten som ble skrevet på bokmål over maskinoversatt til
1194 <p
>I Noreg er det mange som treng å skriva både bokmål og nynorsk.
1195 Eksamensoppgåver, offentlege brev og nyhende er døme på tekster der
1196 det er krav om skriftspråk. I tillegg til alle skuleoppgåvene som
1197 elevar over det ganske land skal levera inn kvart år. Det mange ikkje
1198 veit er at sjølv om dei kommersielle alternativa
1199 <a href=
"https://translate.google.com/
">Google *Translate
</a
> og
1200 <a href=
"https://www.bing.com/translator/
">Bing *Translator
</a
> ikkje
1201 kan bidra med å omsetja mellom bokmål og nynorsk, så finst det eit
1202 utmerka fri programvarealternativ som kan. Omsetjarverktøyet
1203 *Apertium har støtte for ei rekkje språkkombinasjonar, og takka vera
1204 den utrøyttelege innsatsen til blant anna Kevin Brubeck Unhammer, kan
1205 ein bruka *webtjenesten til å fylla inn ei tekst på bokmål eller
1206 nynorsk, og få den *automatoversatt til det andre skriftspråket.
1207 Resultatet er ikkje perfekt, men eit svært godt utgangspunkt. Av og
1208 til er resultatet så bra at det kan nyttast utan endringar. Eg veit
1209 t.d. at store delar av *Joomla vart omsett til nynorsk ved hjelp
1210 *Apertium. Høyrast det ut som noko du kan ha bruk for? Besøk i så
1211 fall
<a href=
"https://www.apertium.org/
">*Apertium.org
</a
> og fyll inn
1212 teksta di i *webskjemaet der.
1214 <p
>Viss du treng *maskinell tilgjenge til den *bakenforliggende
1215 teknologien kan du anten installera pakken
1216 <a href=
"https://tracker.debian.org/apertium-nno-nob
">*apertium-*nno-*nob
</a
>
1217 på ein *Debian-maskin eller bruka *web-*API-eit tilgjengeleg frå
1218 *api.*apertium.org. Sjå
1219 <a href=
"http://wiki.apertium.org/wiki/Apertium-apy
">*API-dokumentasjonen
</a
>
1220 for detaljar om *web-*API-eit. Her kan du sjå korleis resultatet vert
1221 for denne teksta som vart skreva på bokmål over *maskinoversatt til