Aansluiten op het ontkoppelpunt middels Stunnel

Vergelijkbare documenten
Settings for the C100BRS4 MAC Address Spoofing with cable Internet.

Standard Parts Installatie Solid Edge ST3

MobiDM App Handleiding voor Windows Mobile Standard en Pro

2019 SUNEXCHANGE USER GUIDE LAST UPDATED

FAAC DRIVER. Driver install procedure for FAAC boards. Installatieprocedure voor driver voor FAAC-kaarten.

Handleiding aanmaak CSR

Denit Backup instellen op een Linux server

Solcon Online Backup. Aan de slag handleiding voor Linux

Handleiding Installatie ADS

Het aanmaken en installeren van een ZOVAR-servercertificaat onder een Apache webserver

MyDHL+ Van Non-Corporate naar Corporate

Huiswerk Linux: Apache SSL

Hoe te verbinden met NDI Remote Office (NDIRO): Apple OS X How to connect to NDI Remote Office (NDIRO): Apple OS X

Handleiding aanmaak CSR

Firewall van de Speedtouch 789wl volledig uitschakelen?

EM6250 Firmware update V030507

Installatiehandleiding. Automated Transfer Tool

How To: Setup MGE Network Shutdown Module V3 op het service console binnen VMware ESX 3.0.2

Shipment Centre EU Quick Print Client handleiding [NL]

Installatie en configuratie 1.1. Licentie Systeem. Dé specialist in ruimtelijke informatievoorziening

Handleiding Zuludesk Parent

Maillijsten voor medewerkers van de Universiteit van Amsterdam

Handleiding beheer lijst.hva.nl. See page 11 for Instruction in English

Windows XP aanmaken CSR

EM7680 Firmware Update by OTA

Installatie Handleiding voor Modelit Applicatieprogrammatuur

Het beheren van mijn Tungsten Network Portal account NL 1 Manage my Tungsten Network Portal account EN 14

Howto make Exim work with Freesco 0.2.7

MyDHL+ ProView activeren in MyDHL+

Datum 15 juni 2006 Versie Exchange Online. Handleiding voor gebruiker Release 1.0

LDAP Server on Yeastar MyPBX & tiptel 31xx/32xx series

ideal Payment module v2.1.2 Voor Virtuemart v1.1.x

EM7680 Firmware Update by Micro SD card

Handleiding Digipass DP310

NCTS - INFORMATIE INZAKE NIEUWIGHEDEN VOOR 2010

VPN verbinding maken HCCnet (Windows XP)

MySQL Server Installatie Handleiding RETSOFT ARCHIEF EXPERT VERSIE Versie: v

Raspberry Pi VPN-server. Auteur: Ger Stok

Multi user Setup. Firebird database op een windows (server)

Installatie Handleiding voor: TiC Narrow Casting Certified. System Integrators

MyDHL+ Tarief berekenen

KeyLink B.V. KeyLink CTI Client Installation Manual - Dutch

BRIGHT-NET INSTALLATIE HANDLEIDING

INSTALLATIE ENEM HARDE SCHIJF SOFTWARE

ICARUS Illumina E653BK on Windows 8 (upgraded) how to install USB drivers

General info on using shopping carts with Ingenico epayments

Easyhosting Handleiding SSL Certificaat installeren in DirectAdmin

Instructie SCAN-Office. uit. Automatisering helpt Agrarisch Natuurbeheer. Uitgevoerd door collectieven

BRIGHT-NET INSTALLATIE HANDLEIDING

Registratie- en activeringsproces voor de Factuurstatus Service NL 1 Registration and activation process for the Invoice Status Service EN 10

Netwerkprinter Dell 1320C installeren op Ubuntu LTS - Lucid Lynx

Installatie & configuratie Citrix Receiver voor Windows

Instellen back up Microsoft SQL database Bronboek Professional

Handleiding installatie Rental Dynamics

Installatiehandleiding. ixperion Word Import. voor Windows 2008 R2 64bit. Smartsite ixperion WordImport Implementatie. Copyright

Handleiding SQL Server installeren en configureren t.b.v. 2Static voorraadbeheer database

Flexibele oplossing om de eid kaart aan te spreken vanuit.net (en Delphi, Visual Basic, C++ etc)

DALISOFT. 33. Configuring DALI ballasts with the TDS20620V2 DALI Tool. Connect the TDS20620V2. Start DALISOFT

Stappen om EduVPN te activeren:

Leeftijdcheck (NL) Age Check (EN)

Ius Commune Training Programme Amsterdam Masterclass 16 June 2016

Table of Contents. FireFox...1. Firefox installeren op OS X...2 Firefox downloaden...2. Firefox installeren op Windows...6 Firefox Downloaden...

Installatiehandleiding TiC Narrow Casting Manager

EM4594 Firmware update

Intermax backup exclusion files

Supplement. Treatment Letter

Online Resource 1. Title: Implementing the flipped classroom: An exploration of study behaviour and student performance

Het aanmaken en installeren van een servercertificaat onder Apache

HowTo => OpenBSD => Secure Remote Access

Bluetooth Software Update Manual for Windows 7 IVE-W530BT

Find Neighbor Polygons in a Layer

Hoe met Windows 8 te verbinden met NDI Remote Office (NDIRO) How to connect With Windows 8 to NDI Remote Office (NDIRO

BRIGHT-NET INSTALLATIE HANDLEIDING

1 Installatie van de server... 2

Boutronic. MSSQL Express server voor Log functie. >> Installatie handleiding << 23 april 2014, versie 1.0d

Bescherming van (software) IP bij uitbesteding van productie

Ius Commune Training Programme Amsterdam Masterclass 15 June 2018

Handleiding installatie Visual Rental Dynamics

Registratie- en activeringsproces voor de Factuurstatus Service NL 1 Registration and activation process for the Invoice Status Service EN 11

Installatie Handleiding voor: TiC Narrow Casting Certified. System Integrators

EM7680 Firmware Auto-Update for Kodi 17.2

MyDHL+ Uw accountnummer(s) delen

TaskCentre Web Service Connector: Creëren van requests in Synergy Enterprise

How to install and use dictionaries on the ICARUS Illumina HD (E652BK)

INHOUDSOPGAVE IMUIS INSTALLEREN 2 WINDOWS 2. WINDOWS SERVER 2008 r2 3 UITGAANDE VERBINDINGEN 4 INSTALLATIE IMUISONLINE.MSI 4 SSL CERTIFICAAT 4

FIREBIRD DE SAFESCAN TA EN TA+ SOFTWARE OP MEER DAN ÉÉN COMPUTER GEBRUIKEN

QUICK START. IP cam viewer.

Gebruikershandleiding Portal. Eekels Elektrotechniek

Installatie stappen Microsoft SQL Server 2012 Express With Tools:

Technote. EnGenius Senao EOM Mesh Layer 2 configuratie Transparant netwerk

Linux Quickstart Cygwin via HTTP

OGC WMS en WFS beveiligd met PKI-certificaten: problemen en oplossingen

Hoe kan ik extern werken?

Installatie MicroSoft SQL server 2012 Express

Installatie en configuratie 1.0. Licentie Systeem. Dé specialist in ruimtelijke informatievoorziening

Ius Commune Training Programme Amsterdam Masterclass 22 June 2017

EM7580 Firmware Update by Micro SD card

Absentie Presentie Server Migratie

Transcriptie:

Handleiding Aansluiten op het ontkoppelpunt middels Stunnel Versie 0.2 Status Draft Versiebeheer Datum Versie Omschrijving Auteur 7 april 2017 0.1 Draft F. Tjong-Ayong - QDelft 10 april 2017 0.2 Review E. Kappe verwerkt F. Tjong-Ayong - QDelft

Inhoudsopgave 1. Inleiding 3 1.1 Doel 3 1.2 Overview 3 2. Vereiste software voor het aansluiten middels Stunnel en het maken van de 3 benodigde certificaten 3 3. Aanmaken benodigd certificaat 4 4. Certificaten samenvoegen in ca-keystore-<omgeving>.pem 5 5. Installeren en inrichten Stunnel op Unix/Linux 7 5.1 Certificaten samenvoegen in ca-keystore-<omgeving>.pem 7 5.2 Configureren en starten Stunnel server 7 5.3 Configureren en starten Stunnel client 8 5.4 Installeren Stunnel als Unix/Linux Service (daemon mode) 10 6. Installeren en inrichten Stunnel op Windows 13 6.1 Certificaten samenvoegen in ca-keystore-<omgeving>.pem 13 6.2 Configureren en starten Stunnel server 13 6.3 Configureren en starten Stunnel client 14 6.4 Installeren Stunnel als Windows Service 16 Vertrouwelijk St. Studielink/QDelft, 2017 2 / 16

1. Inleiding 1.1 Doel Het berichtenverkeer tussen het ontkoppelpunt en de Sis adapter wordt beveiligd met Stunnel. Stunnel is een programma dat TCP verkeer versleuteld door middel van SSL. 1.2 Overview Hoofdstuk 2 beschrijft welke programmatuur benodigd is om aan te kunnen sluiten middels Stunnel Hoofdstuk 3 beschrijft op welke wijze de certificaten moeten worden aangemaakt. Hoofdstuk 4 beschrijft hoe het bestand ca-keystore-<omgeving>.pem kan worden samengesteld. Hoofdstuk 5 beschrijft de installatie en inrichting van Stunnel op een Unix/Linux platform. Hoofdstuk 6 beschrijft de installatie en inrichting van Stunnel op een Windows platform. 2. Vereiste software voor het aansluiten middels Stunnel en het maken van de benodigde certificaten Om met een beveiligde verbinding te kunnen werken zijn certificaten nodig. Per adapter moet een certificaat gemaakt worden, dat aangeleverd wordt aan QDelft. Op basis van dit certificaat maakt QDelft certificaten aan die de instelling nodig heeft om aan te kunnen sluiten op het ontkoppelpunt. Om een certificaat te maken is de applicatie OpenSSL benodigd. Deze applicatie is te vinden op http://www.openssl.org/. Voor zowel Windows als Unix/Linux kunt u versie 1.0.2j FIPS downloaden. Vervolgens is de applicatie Stunnel benodigd om berichten encrypted te kunnen uitwisselen met Studielink. Stunnel is te vinden op http://www.stunnel.org/. Voor zowel Windows als Unix/Linux kunt u versie 5.41 downloaden. Vertrouwelijk St. Studielink/QDelft, 2017 3 / 16

3. Aanmaken benodigd certificaat Installeer/unpack OpenSSL en ga vervolgens naar de bin directory van OpenSSL. Geef onderstaand commando in: Openssl req newkey rsa:2048 keyout client-key.pem out csr.pem Vervolgens worden onderstaande vragen doorlopen: Enter PEM pass phrase: <instelling> (Deze pass phrase wordt ook gevraagd bij het starten van de stunnel client) Country Name (2 letter code) [AU]: NL State or Province Name (full name) [Some-State]: Provincie Locality Name (eg, city): Plaatsnaam Organisation Name (eg, company) [Internet Widgets Pty Ltd]: Instelling Organizational Unit (eg, section): Afdeling Common Name (eg, YOUR name): studielink.instelling.nl Email Address: info@instelling.nl De gevraagde extra attributes moeten niet gevuld worden. Hieronder een voorbeeld van het aanmaken van een certificaat: C:\OpenSSL\bin>openssl req -newkey rsa:2048 -keyout client-key.pem -out csr.pem Loading 'screen' into random state - done Generating a 2048 bit RSA private key...++++++...++++++ writing new private key to 'client-key.pem' Enter PEM pass phrase: Verifying - Enter PEM pass phrase: ----- You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]:nl State or Province Name (full name) [Some-State]:Noord-Brabant Locality Name (eg, city) :Breda Organization Name (eg, company) [Internet Widgits Pty Ltd]:Avans Hogeschool Organizational Unit Name (eg, section) :Studielink Common Name (eg, YOUR name) :studielink.avans.nl Email Address :info@avans.nl Please enter the following 'extra' attributes to be sent with your certificate request A challenge password : An optional company name : Vertrouwelijk St. Studielink/QDelft, 2017 4 / 16

De certificaten csr.pem en client-key.pem worden vervolgens aangemaakt in de bin directory van OpenSSL. Stuur het csr.pem certificaat naar QDelft (studielink@qdelft.nl). U krijgt vervolgens 3 certificaten terug. Dit zijn: client-cert-<instelling>-<omgeving>.pem ca-keystore-<omgeving>.pem waarbij: <instelling> staat voor de BRIN-code van uw instelling <omgeving> staat voor de Studielink-omgeving waarop u aansluit. De ca-keystore-<omgeving>.pem bevat 2 certificaten: ca-asp-studielink.pem broker-<omgeving>-cert.pem 4. Certificaten samenvoegen in ca-keystore-<omgeving>.pem Om certificaten van de QDelft ontkoppelpunt voor in en uitgaande connecties te verifieren gebruiken we een zogenaamd Certificate Authority certificaat van studielink (ca-asp-studielink.pem), en het specifieke certificaat van de broker zelf (broker-<omgeving>-cert.pem). De inhoud van deze twee certificaten (tekst) kopieren en plakken we bij elkaar in één bestand : ca-keystore-<omgeving>.pem, die gebruik gaat worden door zowel stunnel server als client, om de certificaten te controleren. Hieronder een voorbeeld van een ca-keystore-<omgeving>.pem met meerdere certificaten: ca-asp-studielink.pem: -----BEGIN CERTIFICATE----- MIIDszCCAxygAwIBAgIBADANBgkqhkiG9w0BAQQFADCBnjELMAkGA1UEBhMCTkwx CzAJBgNVBAgTAk5IMQ8wDQYDVQQHEwZIdWl6ZW4xEDAOBgNVBAoTB0FTUDRBbGwx IDAeBgNVBAsTF0hvc3RpbmcgU3VyZiBTdHVkaWVsaW5rMRowGAYDVQQDExFhc3At Y2Etc3R1ZGllbGluazEhMB8GCSqGSIb3DQEJARYSc3VwcG9ydEBhc3A0YWxsLm5s MB4XDTA1MTAyNjEzMzQwMFoXDTMzMDMxMzEzMzQwMFowgZ4xCzAJBgNVBAYTAk5M MQswCQYDVQQIEwJOSDEPMA0GA1UEBxMGSHVpemVuMRAwDgYDVQQKEwdBU1A0QWxs MSAwHgYDVQQLExdIb3N0aW5nIFN1cmYgU3R1ZGllbGluazEaMBgGA1UEAxMRYXNw LWNhLXN0dWRpZWxpbmsxITAfBgkqhkiG9w0BCQEWEnN1cHBvcnRAYXNwNGFsbC5u bdcbnzanbgkqhkig9w0baqefaaobjqawgykcgyeask8px1jdzc3epow4ntsvjpcz MbLSMrQP1GZB5QTkEDTcd8u3Eic/Md1kWA5LarwMBkZrO3wt+FOX6MJls5iAhePE 5iZ7zB84uKAwKI1EEAh+W5hNP+PfUnW9RlPZt+9PeTf+6YQLKPUyfh88K9VoC0Tc MuSebAUBTRrpOcBS4FcCAwEAAaOB/jCB+zAdBgNVHQ4EFgQUobYM4z3QonklTUrJ GyECoXGvHgAwgcsGA1UdIwSBwzCBwIAUobYM4z3QonklTUrJGyECoXGvHgChgaSk gaewgz4xczajbgnvbaytak5mmqswcqydvqqiewjosdepma0ga1uebxmgshvpemvu MRAwDgYDVQQKEwdBU1A0QWxsMSAwHgYDVQQLExdIb3N0aW5nIFN1cmYgU3R1ZGll bgluazeambgga1ueaxmryxnwlwnhlxn0dwrpzwxpbmsxitafbgkqhkig9w0bcqew EnN1cHBvcnRAYXNwNGFsbC5ubIIBADAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEB BAUAA4GBAGUQbgRuxXtv5wR7QQ5I4zkrcyzdQBfHIphZiEsdVAhmPIo7AZxFL/om z/avnuj+n/vzslmxhl5owcst6qy2gpkkta0eq36skdmccp4jom0s/d9x3dtdj4i3 XANXDrAet00+zqleWI16hFFiJJOedUTwYdC28Pkd0LA9SxGsF2uu -----END CERTIFICATE----- broker-test-cert.pem: -----BEGIN CERTIFICATE----- MIID4zCCA0ygAwIBAgIBAzANBgkqhkiG9w0BAQQFADCBnjELMAkGA1UEBhMCTkwx CzAJBgNVBAgTAk5IMQ8wDQYDVQQHEwZIdWl6ZW4xEDAOBgNVBAoTB0FTUDRBbGwx Vertrouwelijk St. Studielink/QDelft, 2017 5 / 16

IDAeBgNVBAsTF0hvc3RpbmcgU3VyZiBTdHVkaWVsaW5rMRowGAYDVQQDExFhc3At Y2Etc3R1ZGllbGluazEhMB8GCSqGSIb3DQEJARYSc3VwcG9ydEBhc3A0YWxsLm5s MB4XDTA1MTEwMzA4MDQwN1oXDTMzMDMyMTA4MDQwN1owgaExCzAJBgNVBAYTAk5M MQswCQYDVQQIEwJOSDEPMA0GA1UEBxMGSHVpemVuMRAwDgYDVQQKEwdBU1A0QWxs MRswGQYDVQQLExJIb3N0aW5nIFN0dWRpZWxpbmsxIjAgBgNVBAMTGWJyb2tlci50 ZXN0LnN0dWRpZWxpbmsubmwxITAfBgkqhkiG9w0BCQEWEnN1cHBvcnRAYXNwNGFs bc5ubdcbnzanbgkqhkig9w0baqefaaobjqawgykcgyea5xdbz2qwrim8w+xgpwe4 xw6rdfl4ptwu8dashw7anibelcypga4yzuqcw2ormfj8caskd5iclv3ufjtmw2cr 0po2jzs1k1lCdL+kTtsuZ7RpFHxu5WzAb94TmKCZkQ4KrYWIK6AIMGjI06JYyUZ/ zzpwguphyayahnidtv2plr8caweaaaocasowggemmakga1udewqcmaawlayjyizi AYb4QgENBB8WHU9wZW5TU0wgR2VuZXJhdGVkIENlcnRpZmljYXRlMB0GA1UdDgQW BBTovplxwnxduDjuwFBeStDYWsFIhDCBywYDVR0jBIHDMIHAgBShtgzjPdCieSVN SskbIQKhca8eAKGBpKSBoTCBnjELMAkGA1UEBhMCTkwxCzAJBgNVBAgTAk5IMQ8w DQYDVQQHEwZIdWl6ZW4xEDAOBgNVBAoTB0FTUDRBbGwxIDAeBgNVBAsTF0hvc3Rp bmcgu3vyzibtdhvkawvsaw5rmrowgaydvqqdexfhc3aty2etc3r1zgllbgluazeh MB8GCSqGSIb3DQEJARYSc3VwcG9ydEBhc3A0YWxsLm5sggEAMA0GCSqGSIb3DQEB BAUAA4GBAICybju4z/iWfJTVvqekeXw3Dkxbxh6Cq8iHVyzNHWAXrd92m2VM0yNu qhxvypgdb+w0pils3rrduefdut+nbjl9/ele4wr1os/weyxzucm6bskqwq8onutj rxhrc8m2frl/eenaanuj0/lyvphsekbt0r/sxi12hty3yoovl/1r -----END CERTIFICATE----- broker-prod-cert.pem: -----BEGIN CERTIFICATE----- MIID4zCCA0ygAwIBAgIBAzANBgkqhkiG9w0BAQQFADCBnjELMAkGA1UEBhMCTkwx CzAJBgNVBAgTAk5IMQ8wDQYDVQQHEwZIdWl6ZW4xEDAOBgNVBAoTB0FTUDRBbGwx IDAeBgNVBAsTF0hvc3RpbmcgU3VyZiBTdHVkaWVsaW5rMRowGAYDVQQDExFhc3At Y2Etc3R1ZGllbGluazEhMB8GCSqGSIb3DQEJARYSc3VwcG9ydEBhc3A0YWxsLm5s MB4XDTA1MTEwMzA4MDQwN1oXDTMzMDMyMTA4MDQwN1owgaExCzAJBgNVBAYTAk5M MQswCQYDVQQIEwJOSDEPMA0GA1UEBxMGSHVpemVuMRAwDgYDVQQKEwdBU1A0QWxs MRswGQYDVQQLExJIb3N0aW5nIFN0dWRpZWxpbmsxIjAgBgNVBAMTGWJyb2tlci50 ZXN0LnN0dWRpZWxpbmsubmwxITAfBgkqhkiG9w0BCQEWEnN1cHBvcnRAYXNwNGFs bc5ubdcbnzanbgkqhkig9w0baqefaaobjqawgykcgyea5xdbz2qwrim8w+xgpwe4 xw6rdfl4ptwu8dashw7anibelcypga4yzuqcw2ormfj8caskd5iclv3ufjtmw2cr 0po2jzs1k1lCdL+kTtsuZ7RpFHxu5WzAb94TmKCZkQ4KrYWIK6AIMGjI06JYyUZ/ zzpwguphyayahnidtv2plr8caweaaaocasowggemmakga1udewqcmaawlayjyizi AYb4QgENBB8WHU9wZW5TU0wgR2VuZXJhdGVkIENlcnRpZmljYXRlMB0GA1UdDgQW BBTovplxwnxduDjuwFBeStDYWsFIhDCBywYDVR0jBIHDMIHAgBShtgzjPdCieSVN SskbIQKhca8eAKGBpKSBoTCBnjELMAkGA1UEBhMCTkwxCzAJBgNVBAgTAk5IMQ8w DQYDVQQHEwZIdWl6ZW4xEDAOBgNVBAoTB0FTUDRBbGwxIDAeBgNVBAsTF0hvc3Rp bmcgu3vyzibtdhvkawvsaw5rmrowgaydvqqdexfhc3aty2etc3r1zgllbgluazeh MB8GCSqGSIb3DQEJARYSc3VwcG9ydEBhc3A0YWxsLm5sggEAMA0GCSqGSIb3DQEB BAUAA4GBAICybju4z/iWfJTVvqekeXw3Dkxbxh6Cq8iHVyzNHWAXrd92m2VM0yNu qhxvypgdb+w0pils3rrduefdut+nbjl9/ele4wr1os/weyxzucm6bskqwq8onutj rxhrc8m2frl/eenaanuj0/lyvphsekbt0r/sxi12hty3yoovl/1r -----END CERTIFICATE----- Vertrouwelijk St. Studielink/QDelft, 2017 6 / 16

5. Installeren en inrichten Stunnel op Unix/Linux Installeer Stunnel volgens de installatie instructies die u kunt vinden op de website http://www.stunnel.org. Configureer en start Stunnel vervolgens voor een Server en Client omgeving zoals beschreven in de volgende paragrafen. 5.1 Certificaten samenvoegen in ca-keystore-<omgeving>.pem Om certificaten van de QDelft ontkoppelpunt voor in en uitgaande connecties te verifieren gebruiken we een zogenaamd Certificate Authority certificaat van QDelft (ca-asp-studielink.pem), en het specifieke certificaat van de broker zelf (broker-<omgeving>-cert.pem). De inhoud van deze twee certificaten (tekst) kopieren en plakken we bij elkaar in één bestand : ca-keystore-<omgeving>.pem, die gebruikt gaat worden door zowel stunnel server als client, om de certificaten te controleren. 5.2 Configureren en starten Stunnel server Voor inkomende connecties naar de adapter komt er in het volgende voorbeeld een stunnel te draaien die luistert naar encrypted connecties op poort 443, en die dit forward naar de lokale adapter poort (in voorbeeld localhost:80). Er wordt uitgegaan van een basispad : /etc/stunnel/server/ maar dit kan natuurlijk aangepast worden. In dit voorbeeld zullen alleen connecties geaccepteerd worden met certificaten die geldig gesigned zijn door de QDelft Certificate Authority. Zorg voor de volgende directory structuur : /etc/stunnel/server/ /etc/stunnel/server/var/ /etc/stunnel/trusted-certs/ /etc/stunnel/my-certificates/ Zorg voor de volgende bestanden : /etc/stunnel/trusted-certs/ca-keystore-<omgeving>.pem /etc/stunnel/my-certificates/client-cert-<instelling>-<omgeving>.pem /etc/stunnel/my-certificates/client-key.pem /etc/stunnel/server/stunnel.conf: chroot = /etc/stunnel/server/ pid = /var/stunnel.pid output = /etc/stunnel/server/var/stunnel.log setuid = nobody setgid = nobody verify = 3 CAfile = /etc/stunnel/trusted-certs/ca-keystore-<omgeving>.pem sslversion = all options = NO_SSLv3 debug = 7 Vertrouwelijk St. Studielink/QDelft, 2017 7 / 16

cert = /etc/stunnel/my-certificates/client-cert-<instelling>-<omgeving>.pem key = /etc/stunnel/my-certificates/client-key.pem [SL-test>Instelling] accept = 443 connect = localhost:80 Opm: accept = 443 geeft de poort aan waarop stunnel luistert naar binnenkomend berichtenverkeer van de QDelft ontkoppelpunt naar de instelling connect = localhost:80 geeft de host:poort aan waarnaar stunnel het binnenkomend berichtenverkeer doorstuurt, dus de adapter van de instelling. De ca-keystore-<omgeving>.pem in /etc/stunnel/trusted-certs/ bevat de volgende certificaten: ca-asp-studielink.pem broker-<omgeving>-cert.pem (dit kunnen meerdere certificaten zijn i.g.v. meerdere omgevingen) Directory /etc/stunnel/my-certificates/ bevat de volgende certificaten: client-cert-<instelling>-<omgeving>.pem (te verkrijgen door het CSR op te sturen naar de QDelft helpdesk (studielink@qdelft.nl). Vervolgens krijgt u hierop het gesignde client-cert- <instelling><omgeving>.pem terug.) client-key.pem (deze heeft u aangemaakt met openssl.) Opstarten van de tunnel : chown -R nobody.nobody /etc/stunnel/server/var stunnel /etc/stunnel/server/stunnel.conf Logging : /etc/stunnel/server/var/stunnel.log 5.3 Configureren en starten Stunnel client Voor uitgaande connecties naar QDelft ontkoppelpunt komt er in het volgende voorbeeld een stunnel te draaien die luistert naar gewone tcp connecties op poort 8070, en die dit encrypted forward naar de broker.<omgeving>.studielink.nl:443. Op http://localhost:8070/vch1/broker vind je nu dus de nonencrypted variant van https://broker.<omgeving>.studielink.nl/vch1/broker. Er wordt uitgegaan van een basispad : /etc/stunnel/client/ maar dit kan natuurlijk aangepast worden. De client key die gebruikt wordt zal moeten worden gesigned door de QDelft Certificate Authority. Hierbij krijg je dan ook de client certificate van de QDelft Certificate Authority. Zorg voor de volgende directory structuur : /etc/stunnel/client/ /etc/stunnel/client/var/ /etc/stunnel/trusted-certs/ /etc/stunnel/my-certificates/ Zorg voor de volgende bestanden : /etc/stunnel/trusted-certs/ca-keystore-<omgeving>.pem /etc/stunnel/my-certificates/client-cert-<instelling>-<omgeving>.pem /etc/stunnel/my-certificates/client-key.pem /etc/stunnel/client/stunnel.conf : Vertrouwelijk St. Studielink/QDelft, 2017 8 / 16

chroot =/etc/stunnel/client/ pid = /var/stunnel.pid output = /etc/stunnel/client/var/stunnel.log setuid = nobody setgid = nobody verify = 3 CAfile = /etc/stunnel/trusted-certs/ca-keystore-<omgeving>.pem sslversion = all options = NO_SSLv3 debug = 7 client = yes cert =/etc/stunnel/my-certificates/client-cert-<instelling>-<omgeving>.pem key = /etc/stunnel/my-certificates/client-key.pem [Instelling>SL-broker] accept = 8070 connect = broker.<omgeving>.studielink.nl:443 Opm: accept = 8070 geeft de poort aan waarop stunnel luistert naar uitgaand berichtenverkeer van de instelling naar het QDelft ontkoppelpunt (dus de poort waarop de adapter van de instelling berichten uitstuurt). connect = broker.<omgeving>.studielink.nl:443 geeft de host:poort aan waarnaar stunnel het uitgaand berichtenverkeer doorstuurt, dus het QDelft ontkoppelpunt van de omgeving waar u op aansluit. De correcte URL kunt u vinden in het aanvraagformulier voor aansluiten van de betreffende Studielink-omgeving. De ca-keystore-<omgeving>.pem in /etc/stunnel/trusted-certs/ bevat de volgende certificaten: ca-asp-studielink.pem broker-<omgeving>-cert.pem (dit kunnen meerdere certificaten zijn i.g.v. meerdere omgevingen) Directory /etc/stunnel/my-certificates/ bevat de volgende certificaten: client-cert-<instelling>-<omgeving>.pem (te verkrijgen door het CSR op te sturen naar de QDelft helpdesk (studielink@qdelft.nl)vervolgens krijgt u hierop het gesignde client-cert- <instelling><omgeving>.pem terug.) client-key.pem (deze heeft u aangemaakt met openssl.) Opstarten van de tunnel : chown -R nobody.nobody /etc/stunnel/client/var stunnel /etc/stunnel/client/stunnel.conf Logging : /etc/stunnel/client/var/stunnel.log Vertrouwelijk St. Studielink/QDelft, 2017 9 / 16

5.4 Installeren Stunnel als Unix/Linux Service (daemon mode) Stunnel kan worden geïnstalleerd als service onder Unix/Linux (daemon mode). Om de Stunnel clientconfiguratie te kunnen starten in daemon mode moet de client-key.pem worden ontdaan van de PEM pass phrase. Dit kan gedaan worden met het volgende commando: openssl rsa -in client-key.pem -out newkey.pem De newkey.pem is dan ontdaan van de PEM pass phrase en kan gebruikt worden i.p.v. de client-key.pem in de stunnel.conf van de Stunnel configuratie. Met de bijgevoegde scripts kan stunnel in daemon mode draaien op Unix/Linux installaties die zijn afgeleid van Red Hat (bijvoorbeeld: Red Hat EL en Fedora). Beide servers; stunnel_server en stunnel_client draaien samen als 1 service. De service wordt opgenomen in de map /etc/rc.d/init.d. Script voor stunnel Service:!/bin/bash Script to run stunnel in daemon mode at boot time. Check http://www.gaztronics.net/ for the most up-to-date version of this script. This script is realeased under the terms of the GPL. You can source a copy at: http://www.fsf.org/copyleft/copyleft.html Please feel free to modify the script to suite your own needs. I always welcome email feedback with suggestions for improvements. Please do not email for general support. I do not have time to answer personal help requests. Author: Gary Myers MIIE MBCS email: http://www.gaztronics.net/webform/ Revision 1.0-4th March 2005 ==================================================================== Run level information: chkconfig: 2345 99 99 description: Secure Tunnel Client and Server service processname: stunnel Run "/sbin/chkconfig --add stunnel" to add the Run levels. This will setup the symlinks and set the process to run at boot. ==================================================================== ==================================================================== Paths and variables and system checks. Vertrouwelijk St. Studielink/QDelft, 2017 10 / 16

Source function library (It's a Red Hat thing!). /etc/rc.d/init.d/functions Check that networking is up. [ ${NETWORKING} ="yes" ] exit 0 Path to the executable. SEXE=/usr/sbin/stunnel Path to the configuration file. CONF_CLIENT=/etc/stunnel/client/stunnel.conf CONF_SERVER=/etc/stunnel/server/stunnel.conf Check the configuration file exists. if [! -f $CONF_CLIENT ] ; then echo "The configuration file of the client cannot be found!" exit 0 fi if [! -f $CONF_SERVER ] ; then echo "The configuration file of the server cannot be found!" exit 0 fi Path to the lock file. LOCK_FILE=/var/lock/subsys/stunnel ==================================================================== ==================================================================== Run controls: prog=$"stunnel" RETVAL=0 Start stunnel as daemon. start() { if [ -f $LOCK_FILE ]; then echo "stunnel is already running!" exit 0 else echo -n $"Starting $prog: " $SEXE $CONF_CLIENT $SEXE $CONF_SERVER fi Vertrouwelijk St. Studielink/QDelft, 2017 11 / 16

RETVAL=$? [ $RETVAL -eq 0 ] && success echo [ $RETVAL -eq 0 ] && touch $LOCK_FILE return $RETVAL } Stop stunnel. stop() { if [! -f $LOCK_FILE ]; then echo "stunnel is not running!" exit 0 else echo -n $"Shutting down $prog: " killproc stunnel killproc stunnel RETVAL=$? [ $RETVAL -eq 0 ] rm -f $LOCK_FILE echo return $RETVAL } fi See how we were called. case "$1" in start) start ;; stop) stop ;; restart) stop start ;; condrestart) if [ -f $LOCK_FILE ]; then stop start RETVAL=$? fi ;; status) status stunnel RETVAL=$? ;; *) echo $"Usage: $0 {start stop restart condrestart status}" Vertrouwelijk St. Studielink/QDelft, 2017 12 / 16

RETVAL=1 esac exit $RETVAL Om dit script als service toe te voegen kunnen de volgende commando s gebruikt worden. Toevoegen van de service: chkconfig -add stunnel Automatisch starten van de service: chkconfig stunnel on 6. Installeren en inrichten Stunnel op Windows Installeer Stunnel op Windows middels stunnel-x.xx-installer.exe. Stunnel zal standaard geïnstalleerd worden onder C:\Program Files\stunnel. Configureer en start Stunnel vervolgens voor een Server en Client omgeving zoals beschreven in de volgende paragrafen. 6.1 Certificaten samenvoegen in ca-keystore-<omgeving>.pem Om certificaten van de QDelft ontkoppelpunt voor in en uitgaande connecties te verifieren gebruiken we een zogenaamd Certificate Authority certificaat van QDelft (ca-asp-studielink.pem), en het specifieke certificaat van de broker zelf (broker-<omgeving>-cert.pem). De inhoud van deze twee certificaten (tekst) kopieren en plakken we bij elkaar in één bestand : ca-keystore-<omgeving>.pem, die gebruik gaat worden door zowel stunnel server als client, om de certificaten te controleren. 6.2 Configureren en starten Stunnel server Voor inkomende connecties naar de adapter komt er in het volgende voorbeeld een stunnel te draaien die luistert naar encrypted connecties op poort 443, en die dit forward naar de lokale adapter poort (in voorbeeld localhost:80). Er wordt uitgegaan van een basispad : C:\Program Files\stunnel\server\ maar dit kan natuurlijk aangepast worden. In dit voorbeeld zullen alleen connecties geaccepteerd worden met certificaten die geldig gesigned zijn door de QDelft Certificate Authority. Zorg voor de volgende directory structuur : C:\Program Files\stunnel\ C:\Program Files\stunnel\server\ C:\Program Files\stunnel\trusted-certs\ C:\Program Files\stunnel\my-certificates\ Zorg voor de volgende bestanden : C:\Program Files\stunnel\trusted-certs\ca-keystore-<omgeving>.pem C:\Program Files\stunnel\my-certificates\client-cert-<instelling>-<omgeving>.pem C:\Program Files\stunnel\my-certificates\client-key.pem C:\Program Files\stunnel\server\stunnel.conf : service = stunnel-server Vertrouwelijk St. Studielink/QDelft, 2017 13 / 16

output =C:\Program Files\stunnel\server\stunnel.log verify = 3 CAfile = C:\Program Files\stunnel\trusted-certs\ca-keystore-<omgeving>.pem sslversion = all options = NO_SSLv3 debug = 7 cert = C:\Program Files\stunnel\my-certificates\client-cert-<instelling>-<omgeving>.pem key = C:\Program Files\stunnel\my-certificates\client-key.pem [SL-test>Instelling] accept = 443 connect = localhost:80 Opm: accept = 443 geeft de poort aan waarop stunnel luistert naar binnenkomend berichtenverkeer van de QDelft ontkoppelpunt naar de instelling connect = localhost:80 geeft de host:poort aan waarnaar stunnel het binnenkomend berichtenverkeer doorstuurt, dus de adapter van de instelling. De ca-keystore-<omgeving>.pem in C:\Program Files\stunnel\trusted-certs\ bevat de volgende certificaten: ca-asp-studielink.pem broker-<omgeving>-cert.pem (dit kunnen meerdere certificaten zijn i.g.v. meerdere omgevingen) Directory C:\Program Files\stunnel\my-certificates\ bevat de volgende certificaten: client-cert-<instelling>-<omgeving>.pem (te verkrijgen door het CSR op te sturen naar de QDelft helpdesk (studielink@qdelft.nl). Vervolgens krijgt u hierop het gesignde client-cert- <instelling><omgeving>.pem terug.) client-key.pem (deze heeft u aangemaakt met openssl.) Opstarten van de tunnel : stunnel server/stunnel.conf Logging : C:\Program Files\stunnel\server\stunnel.log 6.3 Configureren en starten Stunnel client Voor uitgaande connecties naar QDelft ontkoppelpunt komt er in het volgende voorbeeld een stunnel te draaien die luistert naar gewone tcp connecties op poort 8070, en die dit encrypted forward naar de broker.<omgeving>.studielink.nl:443. Op http://localhost:8070/vch1/broker vind je nu dus de nonencrypted variant van https://broker.<omgeving>.studielink.nl/vch1/broker. Er wordt uitgegaan van een basispad : C:\Program Files\stunnel\client\ maar dit kan natuurlijk aangepast worden. De client key die gebruikt word zal moeten worden gesigned door de QDelft Certificate Authority. Hierbij krijg je dan ook de client certificate van de QDelft Certificate Authority. Vertrouwelijk St. Studielink/QDelft, 2017 14 / 16

Zorg voor de volgende directory structuur : C:\Program Files\stunnel\ C:\Program Files\stunnel\client\ C:\Program Files\stunnel\trusted-certs\ C:\Program Files\stunnel\my-certificates\ Zorg voor de volgende bestanden : C:\Program Files\stunnel\trusted-certs\ca-keystore-<omgeving>.pem C:\Program Files\stunnel\my-certificates\client-cert-<instelling>-<omgeving>.pem C:\Program Files\stunnel\my-certificates\client-key.pem C:\Program Files\stunnel\client\stunnel.conf : service = stunnel-client output =C:\Program Files\stunnel\client\stunnel.log verify = 3 CAfile = C:\Program Files\stunnel\trusted-certs\ca-keystore-<omgeving>.pem sslversion = all options = NO_SSLv3 debug = 7 client = yes cert = C:\Program Files\stunnel\my-certificates\client-cert-<instelling>-<omgeving>.pem key = C:\Program Files\stunnel\my-certificates\client-key.pem [Instelling>SL-test] accept = 8070 connect = broker.<omgeving>.studielink.nl:443 Opm: accept = 8070 geeft de poort aan waarop stunnel luistert naar uitgaand berichtenverkeer van de instelling naar de QDelft ontkoppelpunt (dus de poort waarop de adapter van de instelling berichten uitstuurt). connect = broker.<omgeving>.studielink.nl:443 geeft de host:poort aan waarnaar stunnel het uitgaand berichtenverkeer doorstuurt, dus de QDelft ontkoppelpunt van de omgeving waar u op aansluit. De correcte URL kunt u vinden in het aanvraagformulier voor aansluiten van de betreffende Studielink-omgeving. De ca-keystore-<omgeving>.pem in C:\Program Files\stunnel\trusted-certs\ bevat de volgende certificaten: ca-asp-studielink.pem broker-<omgeving>-cert.pem (dit kunnen meerdere certificaten zijn i.g.v. meerdere omgevingen) Directory C:\Program Files\stunnel\my-certificates\ bevat de volgende certificaten: client-cert-<instelling>-<omgeving>.pem (te verkrijgen door het CSR op te sturen naar de QDelft helpdesk (studielink@qdelft.nl). Vervolgens krijgt u hierop het gesignde client-cert- <instelling><omgeving>.pem terug.) client-key.pem (deze heeft u aangemaakt met openssl.) Vertrouwelijk St. Studielink/QDelft, 2017 15 / 16

Opstarten van de tunnel : stunnel client/stunnel.conf Logging : C:\Program Files\stunnel\client\stunnel.log 6.4 Installeren Stunnel als Windows Service Stunnel kan worden geïnstalleerd als Windows Service. Om de Stunnel client-configuratie te kunnen starten als service moet de client-key.pem worden ontdaan van de PEM pass phrase. Dit kan gedaan worden met het volgende commando: openssl rsa -in client-key.pem -out newkey.pem De newkey.pem is dan ontdaan van de PEM pass phrase en kan gebruikt worden i.p.v. de client-key.pem in de stunnel.conf van de Stunnel client-configuratie en de Stunnel server-configuratie. Installeren stunnel als Windows Service : stunnel install client/stunnel.conf stunnel install server/stunnel.conf voor de client-configuratie voor de server-configuratie Vertrouwelijk St. Studielink/QDelft, 2017 16 / 16