hints:rpki
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| hints:rpki [2025/03/15 11:44] – [FORT] philip | hints:rpki [2026/08/01 08:13] (current) – [FORT] philip | ||
|---|---|---|---|
| Line 19: | Line 19: | ||
| * [[rpki# | * [[rpki# | ||
| - | The tips and tricks for the validator builds discussed below all are for Ubuntu | + | The tips and tricks for the validator builds discussed below all are for Ubuntu |
| ===== AS0 TALs ===== | ===== AS0 TALs ===== | ||
| Line 32: | Line 32: | ||
| ===== NLnetLabs Routinator ===== | ===== NLnetLabs Routinator ===== | ||
| - | Nothing to say here, the instructions just work, the validator installs sweetly, and just runs. As long as the instructions are followed. The current version of Routinator is 0.14.0, at time of writing. | + | Nothing to say here, the instructions just work, the validator installs sweetly, and just runs. As long as the instructions are followed. The current version of Routinator is 0.15.2, at time of writing. |
| - | If using Debian/ | + | If using Debian/ |
| - | + | ||
| - | If the link to the supplied package is added to your package manager, for example **apt** on Ubuntu, then create an entry in **/ | + | |
| - | + | ||
| - | < | + | |
| - | deb [arch=amd64] https:// | + | |
| - | </ | + | |
| - | + | ||
| - | (Note: if you are trying this on Ubuntu 24.04, there is no package for '' | + | |
| - | + | ||
| - | Then run: | + | |
| - | + | ||
| - | < | + | |
| - | wget -qO- https:// | + | |
| - | </ | + | |
| - | + | ||
| - | And then finally: | + | |
| - | + | ||
| - | < | + | |
| - | apt-get update | + | |
| - | apt install routinator | + | |
| - | </ | + | |
| - | + | ||
| - | Easy! | + | |
| The installer will set up the necessary **systemd** file so that Routinator starts automatically on boot. Remember to modify the **/ | The installer will set up the necessary **systemd** file so that Routinator starts automatically on boot. Remember to modify the **/ | ||
| Line 86: | Line 63: | ||
| ===== FORT ===== | ===== FORT ===== | ||
| - | FORT is the validator developed by NIC Mexico. More about it is on the [[https:// | + | FORT is the validator developed by NIC Mexico. More about it is on the [[https:// |
| - | FORT is available as part of Ubuntu 22.04 packaging, but it is an older version (1.5.3-1). Likewise for Ubuntu 24.04, the FORT shipped is version 1.6.1-1build3. For this reason we use the latest NIC Mexico produced package. | + | FORT is available as part of Ubuntu 22.04 packaging, but it is an older version (1.5.3-1). Likewise for Ubuntu 24.04, the FORT shipped is version 1.6.1-1build3. Ubuntu 26.04 ships with version 1.6.7-1. For this reason we use the latest NIC Mexico produced package. |
| FORT is not quite so easy to install, but still relatively simple as long as you follow the instructions on their [[https:// | FORT is not quite so easy to install, but still relatively simple as long as you follow the instructions on their [[https:// | ||
| Line 95: | Line 72: | ||
| < | < | ||
| - | wget https:// | + | https:// |
| </ | </ | ||
| and then install it: | and then install it: | ||
| < | < | ||
| - | sudo apt install ./fort_1.6.6-1_amd64.deb | + | sudo apt install ./fort_1.7.0.experimental-1_amd64.deb |
| </ | </ | ||
| Line 190: | Line 167: | ||
| **rpki-client** is just a validator - it does not have the functionality to accept connections from a router. We'll come to that later on (we'll need to use [[rpki# | **rpki-client** is just a validator - it does not have the functionality to accept connections from a router. We'll come to that later on (we'll need to use [[rpki# | ||
| - | **rpki-client** has now been packaged and is available as part of the Ubuntu 22.04 distribution. However, the packaged version is old (version 7.6). At the time of writing, the current release of **rpki-client** is version 8.7. | + | **rpki-client** has now been packaged and is available |
| - | So for this reason, and to stay up to date, at least on Ubuntu, we have to build it ourselves. A pity that the **rpki-client** maintainers don't build their own deb package, or pre-build packages like NLnetLabs do with Routinator. Oh well. | + | My preference is to stay up to date on Ubuntu, |
| - | ==== Initial Preparation ==== | ||
| - | Before you attempt to download and build it, the **rpki-client** instructions note that you need a few other packages in place. These include **automake**, | ||
| - | < | ||
| - | sudo apt install automake autoconf make git libtool libexpat1-dev | ||
| - | </ | ||
| - | The other required package noted in the instructions is **tls** from LibreSSL. LibreSSL is a branch of OpenSSL and is used on OpenBSD - not found on Linux, but seems to be appearing in the latest Debian/ | ||
| - | First we go to [[https:// | + | ==== Initial Preparation ==== |
| - | < | + | |
| - | wget https:// | + | |
| - | </ | + | |
| - | We then unpack it: | + | |
| - | < | + | |
| - | tar zxf libressl-3.9.2.tar.gz | + | |
| - | </ | + | |
| - | and then build it: | + | |
| - | < | + | |
| - | cd libressl-3.9.2 | + | |
| - | ./configure --enable-libtls-only | + | |
| - | make | + | |
| - | sudo make install | + | |
| - | </ | + | |
| - | Note the option to only build **libtls** - we don't need the rest of LibreSSL and it could well interfere with OpenSSL which will already be on the system. Now that **libtls** is built, the **install** action will put the libraries in **/ | + | |
| - | < | + | |
| - | -rw-r--r-- 1 root root 18679208 Jul 14 10:11 libtls.a | + | |
| - | -rw-r--r-- 1 root root 923 Jul 14 10:11 libtls.la | + | |
| - | lrwxrwxrwx 1 root root 16 Jul 14 10:11 libtls.so -> libtls.so.29.0.0 | + | |
| - | lrwxrwxrwx 1 root root 16 Jul 14 10:11 libtls.so.29 -> libtls.so.29.0.0 | + | |
| - | -rw-r--r-- 1 root root 8721528 Jul 14 10:11 libtls.so.29.0.0 | + | |
| - | </ | + | |
| - | Run **sudo ldconfig** so that the system knows about the new libraries. | + | |
| - | Next we need to get some packages that **rpki-client** | + | Before you attempt |
| < | < | ||
| - | sudo apt install libssl-dev | + | sudo apt install |
| </ | </ | ||
| Line 254: | Line 202: | ||
| < | < | ||
| sudo groupadd _rpki-client | sudo groupadd _rpki-client | ||
| - | sudo useradd | + | sudo useradd |
| </ | </ | ||
| Now we can install RPKI-client: | Now we can install RPKI-client: | ||
| Line 260: | Line 208: | ||
| sudo make install | sudo make install | ||
| </ | </ | ||
| - | which will install the client in **/ | + | which will install the client in **/ |
| - | < | + | |
| - | wget https://www.arin.net/resources/ | + | |
| - | sudo mv arin.tal /etc/rpki | + | |
| - | </ | + | |
| Now the client can be run. There is no daemon option, it simply runs at the command line, and when it has finished downloading all the VRPs (around 10-15 minutes depending on bandwidth) it exits. But that's okay. Try running the client: | Now the client can be run. There is no daemon option, it simply runs at the command line, and when it has finished downloading all the VRPs (around 10-15 minutes depending on bandwidth) it exits. But that's okay. Try running the client: | ||
| < | < | ||
| Line 282: | Line 227: | ||
| </ | </ | ||
| and that's it. Every hour, cron will run **rpki-client** which will produce JSON output of all the VRPs it has collected. As noted above, JSON output is what is used by StayRTR and GoRTR as their input sources. Make sure that the **/ | and that's it. Every hour, cron will run **rpki-client** which will produce JSON output of all the VRPs it has collected. As noted above, JSON output is what is used by StayRTR and GoRTR as their input sources. Make sure that the **/ | ||
| + | |||
| + | If you would like to include the [[https:// | ||
| + | < | ||
| + | / | ||
| + | </ | ||
| It's a good idea to check the log file in case **rpki-client** reports issues trying to write local files etc. But mostly what you'll see there are all the transactions with the various CAs, and the problems encountered (there will be lots, unfortunately). | It's a good idea to check the log file in case **rpki-client** reports issues trying to write local files etc. But mostly what you'll see there are all the transactions with the various CAs, and the problems encountered (there will be lots, unfortunately). | ||
| Line 298: | Line 248: | ||
| First you will need a working Go environment. Full instructions are at [[https:// | First you will need a working Go environment. Full instructions are at [[https:// | ||
| - | First off, download the latest Go package (1.24.1 at time of writing): | + | First off, download the latest Go package (1.24.4 at time of writing): |
| < | < | ||
| - | wget https:// | + | wget https:// |
| </ | </ | ||
| If you have an existing Go environment, | If you have an existing Go environment, | ||
| Line 310: | Line 260: | ||
| cd /usr/local | cd /usr/local | ||
| sudo chmod 777 . | sudo chmod 777 . | ||
| - | tar xzf ~/go1.24.1.linux-amd64.tar.gz | + | tar xzf ~/go1.24.4.linux-amd64.tar.gz |
| sudo chmod 755 . | sudo chmod 755 . | ||
| </ | </ | ||
| Line 340: | Line 290: | ||
| < | < | ||
| cd dist | cd dist | ||
| - | sudo cp -p stayrtr-v0.6.2-linux-x86_64 / | + | sudo cp -p stayrtr-v0.6.4-1-g4bad963-linux-x86_64 / |
| - | sudo cp -p rtrdump-v0.6.2-linux-x86_64 / | + | sudo cp -p rtrdump-v0.6.4-1-g4bad963-linux-x86_64 / |
| - | sudo cp -p rtrmon-v0.6.2-linux-x86_64 / | + | sudo cp -p rtrmon-v0.6.4-1-g4bad963-linux-x86_64 / |
| </ | </ | ||
hints/rpki.1742039045.txt.gz · Last modified: by philip
