Een tijdje geleden heb ik een HAMnet IP adres aangevraagd om eens te kijken of ik daar wat mee kon. Mijn plan: maak vanaf mijn Synology NAS (waar ook deze website op draait) een VPN verbinding met HAMnet, zodat deze website ook vanaf HAMnet bereikbaar is. En hopenlijk kan ik via de proxyserver die ik ook op mijn NAS draai dan ook vanaf andere computers HAMnet op.
Dus: bij Rob PE1CHL (pe1chl@amsat.org) een aanvraag gedaan (met voornaam, woonplaats, provincie en call) en kort daarop kreeg ik een mailtje retour met daarin een bevestiging van mijn IP adres (pc5e.ampr.org 44.137.56.108) en een OpenVPN configuratiebestand (pc5e.ovpn).
Nu moest ik alleen nog de OpenVPN verbinding op mijn Synology NAS inrichten. En om andere amateurs het uitzoekwerk te besparen hieronder hoe je dat doet. Want het is niet heel envoudig... Je moet o.a. via SSH een aantal zaken op de Synology doen (en dus Linux commando's intikken en zo).
Stap 1 - open het ovpn bestand, hierin staat het volgende:
client
dev tun
remote gw-44-137-ext.ampr.org
remote-cert-tls server
comp-lzo
nobind
ca [inline]
cert [inline]
key [inline]
tls-auth [inline] 1
<ca>
-----BEGIN CERTIFICATE-----
Hier staat dus het certificaat
-----END CERTIFICATE-----
</ca>
<cert>
-----BEGIN CERTIFICATE-----
Hier staat dus het certificaat
-----END CERTIFICATE-----
</cert>
<key>
-----BEGIN PRIVATE KEY-----
Hier staat dus de key
-----END PRIVATE KEY-----
</key>
<tls-auth>
-----BEGIN OpenVPN Static key V1-----
Hier staat dus de key
-----END OpenVPN Static key V1-----
</tls-auth>
We gaan de certificaten en keys er nu eerst uihalen en in verschillende losse bestanden stoppen:
Het deel tussen (en zonder) <ca> en </ca> kopiëren we naar een bestand ca.crt. Idem <cert> naar cert.crt, <key> naar private.key en <tls-auth> naar tls.key. We hebben nu alle certificaten en keys als losse bestanden. Zet deze 4 bestanden op één van je shares op je Synology NAS neer en onthoudt de sharenaam.
Nu loggen we in op DSM (in mijn geval 5, maar met 4 schijnt het net zo te werken), starten het Control Panel op, selecteren links Network en klikken op tab Network Interface:
Hier zien we nu de al aanwezige verbindingen (in mijn geval 2x een LAN aansluiting en 1x een PPPoE aansluiting). Hier gaan we de HAMnet OpenVPN verbinding maken, door te klikken op Create en dan te kiezen voor Create VPN profile:
Het volgende scherm opent zich en we kiezen voor OpenVPN en klikken op Next:
In het volgende scherm gaan we wat zaken invullen:
Als Profile name kiezen we HAMnet, het Server address is gw-44-137-ext.ampr.org (voor Nederland), de username en password moet je wat invullen, maar wat is niet belangrijk (ze worden niet gebruikt na onze aanpassingen), het Protocol is UDP en voor het Certificate Browse je naar het hiervoor gemaakte cert.crt. Daarna klikken we op Next.
We vinken bovenstaande vinkjes aan (Enable compression..., Allow other... en Reconnect...) en klikken weer Apply. Nu wordt de OpenVPN verbinding aangemaakt, maar deze gaat nu nog niet werken. :)
Log nu in op je Synology via SSH, gebruik username root en je beheerderswachtwoord. Je komt nu op de commandline van je Synology uit en werkt nu alleen nog met het keyboard. ;)
Type de volgende commando's in:
cd /usr/syno/etc/synovpnclient/openvpn
ls -al
Je krijgt nu de inhoud van de folder te zien waar de OpenVPN bestanden staan. Eén van de bestanden heeft een naam die er uit ziet als client_oXXXXXXXXXX, waarbij XXXXXXXX een getal is. Dit getal noteren we.
Ga naar de share op je Synology waar je de crt en key bestanden hebt neergezet. Maak hier een bestand genaamd ovpnclient.conf aan met de volgende inhoud:
[oXXXXXXXXXX]
nat=yes
protocol=udp
redirect-gateway=no
comp-lzo=yes
pass=xxxx
port=1194
reconnect=no
conf_name=HAMnet
user=pc5e
remote=gw-44-137-ext.ampr.org
Waarbij XXXXXXXXX het getal is dat we zojuist hebben opgeschreven.
Maak nu een volgende bestand aan met als naam client_oXXXXXXXXXX, waarbij XXXXXXXX het genoteerde getal is, met de volgende inhoud:
client
dev tun
tls-client
remote gw-44-137-ext.ampr.org
remote-cert-tls server
pull
proto udp
up /usr/syno/etc.defaults/synovpnclient/scripts/ovpn-up
route-up /usr/syno/etc.defaults/synovpnclient/scripts/route-up
comp-lzo
nobind
ca ca.crt
cert cert.crt
key private.key
tls-auth tls.key 1
script-security 2
float
reneg-sec 0
explicit-exit-notify
plugin /lib/openvpn/openvpn-down-root.so /usr/syno/etc.defaults/synovpnclient/scripts/ip-down
auth-user-pass /tmp/ovpn_client_up
We hebben nu dus 6 bestanden op de share van je Synology staan. Die gaan we nu kopiëren naar de folder waar de bestanden horen te staan. Ga terug naar je SSH venster en typ het volgende commando's in (waarbij ik er van uit ga dat de share op Volume1 staat, heb je meer volumes dan moet je dat dakijken en eventueel een andere volumenaam gebruiken), vul natuurlijk voor sharenaam de naam van de share op je Synology in waar je de bestanden hebt neergezet:
cp /volume1/sharenaam/*.crt .
cp /volume1/sharenaam/*.key .
cp /volume1/sharenaam/client_o* .
cp /volume1/sharenaam/ovpnclient.conf .
Nu staan alle bestanden op de plek waar ze horen en hebben de goede inhoud. Eventuele extra bestanden die hier staan kun je negeren:
Nu is het tijd om de OpenVPN verbinding op te starten. Selecteer de HAMnet VPN verbinding en klik op Connect:
En na een tijdje ben je verbonden:
Nu is je IP adres zichtbaar. :)
Als je nu op je Synology een website hebt draaien is die ook via HAMnet bereikbaar. In mijn geval dus http://pc5e.ampr.org. Draai je virtual hosts, dan moet je deze hostname natuurlijk nog even naar de juiste website laten wijzen, maar als dat zo is wist je dat nu ook al. :)
Veel plezier met je HAMnet verbinding!