On this page
- Unsupported Confluence macro: anchorUnsupported macro placeholder; source behavior is intentionally inert.No displayable parameters.Unsupported Confluence macro: anchorUnsupported macro placeholder; source behavior is intentionally inert.No displayable parameters.Infrastructuur Landingsplek
- Unsupported Confluence macro: anchorUnsupported macro placeholder; source behavior is intentionally inert.No displayable parameters.Unsupported Confluence macro: anchorUnsupported macro placeholder; source behavior is intentionally inert.No displayable parameters.Functioneel ontwerp
- Unsupported Confluence macro: anchorUnsupported macro placeholder; source behavior is intentionally inert.No displayable parameters.Unsupported Confluence macro: anchorUnsupported macro placeholder; source behavior is intentionally inert.No displayable parameters.Extern naar intern
- Unsupported Confluence macro: anchorUnsupported macro placeholder; source behavior is intentionally inert.No displayable parameters.Extern naar Intern push
- Unsupported Confluence macro: anchorUnsupported macro placeholder; source behavior is intentionally inert.No displayable parameters.Extern naar intern polling
- Unsupported Confluence macro: anchorUnsupported macro placeholder; source behavior is intentionally inert.No displayable parameters.Unsupported Confluence macro: anchorUnsupported macro placeholder; source behavior is intentionally inert.No displayable parameters.Intern naar extern
- Unsupported Confluence macro: anchorUnsupported macro placeholder; source behavior is intentionally inert.No displayable parameters.Intern naar extern polling
- Unsupported Confluence macro: anchorUnsupported macro placeholder; source behavior is intentionally inert.No displayable parameters.Intern naar extern push
- Connectiviteit
- Netscaler
- Wijzigingen sinds 2025-01-20
In dit hoofdstuk staan de volgende onderdelen:
In dit hoofdstuk is op basis van de gestelde wensen en eisen op hoofdlijnen een infrastructuur oplossing voorgesteld. Hierbij is aangegeven met behulp van welke Solution Building Blocks de oplossing gebouwd kan worden. Mede op basis van de gekozen Solution Building Blocks alsmede de gestelde requirements wordt tevens een keuze gemaakt voor de landingsplek op de infrastructuur.
Infrastructuur Landingsplek
De levering van de voorgestelde oplossing wordt gedaan op basis van de volgende landingsplek op de Infrastructuur:
Keuze | Infrastructuur Platform | Gebruiksvoorwaarden en Opmerkingen |
X | DC1.5 | Applicatie koppelingen voldoen aan het RWS zoneringsbeleid. |
Functioneel ontwerp
Er zijn vier scenario's mogelijk voor verplaatsen van bestanden, te weten:
- Van externe klant naar interne afdeling middels het pushen van bestanden, dat wil zeggen vanaf extern naar intern;
- Van externe klant naar interne afdeling middels het ophalen van bestanden, dat wil zeggen vanaf extern naar intern;
- Van interne afdeling naar externe klant middels het pushen van bestanden, dat wil zeggen vanaf intern naar extern;
- Van interne afdeling naar externe klant middels het ophalen van bestanden, dat wil zeggen vanaf intern naar extern.
Pushen Pushen van bestanden werkt geautomatiseerd, waarbij bestanden die binnenkomen op de FTP server, automatisch doorgestuurd worden naar de doel-FTP server. Hierbij zet klant bestand neer op de FTP server.
Ophalen Ophalen van bestanden werkt middels polling of scheduling. Een applicatie checkt op een vooraf bepaalde frequentie (per seconde, minuut, uur, eens per dag) in hoeverre een bestand klaar staat om opgehaald te worden en op de toegewezen bestandslocatie neergezet moet worden.
Overigens werken alle varianten met polling.
FTP servers in DMZ Van externe klant naar interne afdeling wordt gebruik gemaakt van de FTP servers in DMZ. Van interne afdeling naar externe klant wordt bestand rechtstreeks van de interne FTP server verstuurd naar de externe klant.
Extern naar intern
Extern naar Intern push
Bij extern naar intern middels push worden documenten van de externe klant door deze klant naar interne afdeling, eerst en automatisch verstuurd naar onze FTP servers in DMZ. Hier pollt een Managed File Transfer-polling mechanisme via een Mulesoft applicatie in hoeverre een nieuw document klaar staat om doorgezet te worden. Dit polling gebeurt middels een regelmatige, geplande check op een vooraf bepaalde bestandslocatie. Indien een nieuw bestand gesignaleerd wordt, wordt dit bestand overgezet naar de doellocatie van de interne afdeling. Deze doellocatie kan een door de interne afdeling beheerde FTP server zijn, en ook een specifieke gemountet/gekoppelde fileshare.
Extern naar intern polling
Bij extern naar intern middels polling worden documenten van de externe klant door deze klant eveneens naar interne afdeling doorgezet, maar niet automatisch. Het Managed File Transfer-polling mechanisme vindt hier eerst plaats. Een Managed File Transfer-polling mechanisme (MFT mechanisme) via een Mulesoft applicatie pollt op de FTP server van de klant in hoeverre een nieuw document klaar staat om doorgezet te worden. Dit polling gebeurt eveneens middels een regelmatige, geplande check op een vooraf bepaalde bestandslocatie. Indien een nieuw bestand gesignaleerd wordt, wordt dit bestand direct overgezet naar de doellocatie van de interne afdeling. Deze doellocatie kan een door de interne afdeling beheerde FTP server zijn, en ook een specifieke gemountet/gekoppelde fileshare. Naast het direct overzetten van het gesignaleerde bestand vindt een archivering plaats van een kopie van dit bestand in de aanwezige 'archief' folder in de bestandslocatie. Zo kan de externe klant in de archief-map zien dat een bestand verwerkt is door het MFT mechanisme.
Intern naar extern
Intern naar extern polling
Afbeelding aanpassen:
- Rode weghalen
- RWS DMZ >> onderdeel van Interne zone
Deze variant lees je van rechts naar links en wordt op dit moment niet gebruikt.
Bij intern naar extern middels polling worden documenten van de interne afdeling door deze afdeling rechtstreeks naar externe klant doorgezet, maar niet automatisch. Het Managed File Transfer-polling mechanisme vindt hier eerst plaats. Een Managed File Transfer-polling mechanisme (MFT mechanisme) via een Mulesoft applicatie pollt op de FTP server van de interne afdeling in hoeverre een nieuw document klaar staat om doorgezet te worden. Dit polling gebeurt eveneens middels een regelmatige, geplande check op een vooraf bepaalde bestandslocatie. Indien een nieuw bestand gesignaleerd wordt, wordt dit bestand direct overgezet naar de doellocatie van de externe klant. Deze doellocatie is een door de klant beheerde FTP server.
Intern naar extern push
Afbeelding aanpassen:
- Rode weghalen
- RWS DMZ >> onderdeel van Interne zone
Deze variant lees je van rechts naar links.
Bij intern naar extern middels push worden documenten van de interne afdeling door deze afdeling naar externe klant, eerst en automatisch verstuurd naar onze interne FTP servers of de fileshare die gekoppeld is aan onze interne FTP servers. Hier pollt een Managed File Transfer-polling mechanisme via een Mulesoft applicatie in hoeverre een nieuw document klaar staat om doorgezet te worden. Dit polling gebeurt middels een regelmatige, geplande check op de vooraf bepaalde bestandslocatie. Indien een nieuw bestand gesignaleerd wordt, wordt dit bestand overgezet naar de FTP server van de externe klant.
Connectiviteit
Groen: Externe gebruiker wil Productie documenten neerzetten op (push) en gebracht (pull) zien worden naar RWS-EPVL-FTP001 & -FTP002 via sftp.esb.rijkswaterstaat.nl (poort 22). EPVL wil documenten neerzetten op IPVL.
Blauw: Externe gebruiker wil Test en Acceptatie documenten neerzetten op (push) en gebracht (pull) zien worden naar RWS-EAVL-FTP001 & -FTP002 via test.sftp. of acceptatie.sftp.esb.rijkswaterstaat.nl (poort 22). EAVL wil documenten neerzetten op IAVL.
Zwart: RWS-EPVL-FTP001 & -FTP002 en RWS-EAVL-FTP001 & -FTP002 willen documenten wegzetten naar Fileshare (poort 2049).
Paars: Intranet KA werkplek wil documenten kunnen ophalen vanaf fileshare intern (poort 445).
Intranet KA werkplek wil documenten kunnen brengen naar Externe gebruiker (whitelisting).
Netscaler
Verbinding wordt ontsloten via Netscaler. Hier vindt zowel de loadbalancing, portforwarding als de firewalling/whitelisting plaats.
FQDN configuratie op Netscaler middels port forwarding via poort 22*, round robin loadbalanced:
Intern/ Intranet
- test.sftp.esb.intranet.rijkswaterstaat.nl -> rws-iavl-ftp101.workload.rws.local & rws-iavl-ftp102.workload.rws.local
- acceptatie.sftp.esb.intranet.rijkswaterstaat.nl -> rws-iavl-ftp101.workload.rws.local & rws-iavl-ftp102.workload.rws.local
- sftp.esb.intranet.rijkswaterstaat.nl -> rws-ipvl-ftp101.workload.rws.local & rws-ipvl-ftp102.workload.rws.local
Extern/ Internet-facing via DMZ:
- test.sftp.esb.rijkswaterstaat.nl -> rws-eavl-ftp101.workload.dmz.local & rws-eavl-ftp102.workload.dmz.local
- acceptatie.sftp.esb.rijkswaterstaat.nl -> rws-eavl-ftp101.workload.dmz.local & rws-eavl-ftp102.workload.dmz.local
- sftp.esb.rijkswaterstaat.nl -> rws-epvl-ftp101.workload.dmz.local & rws-epvl-ftp102.workload.dmz.local
* = voor P-Direct is dit poort 21
Wijzigingen sinds 2025-01-20
File transfer vanaf internet verloopt over port 22, protocol SFTP. Dit wordt doorgezet naar port 2222, protocol SFTP. Intern file transfer verkeer verloopt zowel via port 22 naar port 2222, als direct via port 2222, protocol SFTP. Beheer verloopt over port 22, protocol SSH. Beheer wordt alleen vanuit intern mogelijk gemaakt.
Source to destinationProtocolPort maatregel
Source: Internet SFTP 22
Firewall: Externe NetscalerSFTP 2222 Port forwarding
Destination: RWS-EPVL-FTP001/2, RWS-EAVL-FTP001/2
Doel: file transfer via SFTP protocol
Source to destinationProtocolPort maatregel
Source: Internet SSH 22
Firewall: Externe NetscalerSSH 22 Access denied
Destination: RWS-EPVL-FTP001/2, RWS-EAVL-FTP001/2
Doel: Deny access over 22 for protocol SSH
Source to destinationProtocolPort maatregel
Source: Intern SFTP 22
Firewall: Interne NetscalerSFTP 2222 Port forwarding
Destination: RWS-EPVL-FTP001/2, RWS-EAVL-FTP001/2
Doel: File transfer via SFTP protocol
Source to destinationProtocolPort maatregel
Source: Intern SFTP 2222
Firewall: Interne NetscalerSFTP 2222 Port forwarding
Destination: RWS-EPVL-FTP001/2, RWS-EAVL-FTP001/2
Doel: File transfer via SFTP protocol
Source to destinationProtocolPort maatregel
Source: Intern SSH 22
Firewall: Interne NetscalerSSH 22 Port forwarding
Destination: RWS-EPVL-FTP001/2, RWS-EAVL-FTP001/2
Doel: Beheer over SSH protocol
Op dit moment draait nu op de eapvl een daemon die sftp verkeer afhandelt. Deze daemon draait naast ssh daemon voor ssh verkeer.
Deze ssh-daemon is nu verantwoordelijk voor zowel SFTP als SSH. Daar moet SFTP met eigen port bij komen (2222). Ansible/beheer maakt ook gebruik van 22. tweede daemon is noodzakelijk.
Advies vanuit Rick meertens - Linux guru. Hiermee kunnen user directories gemapt worden op klant directory i.p.v. main oftewel /etc/.
En vervolgens wordt er iets gepubliceerd neem ik aan, met een URL die van buitenaf benaderbaar is?
En hoe loopt de weg terug als een externe partij iets klaarzet voor binnen RWS, DMZ server haalt iets op (PULL?) en waar wordt het neergezet?
En hoe komt het weer intern van daaruit zodat RWS medewerkers erbij kunnen?
Afhankelijk van richting van buiten naar RWS, is dmz url voor dmz sftp server bereikbaar gemaakt ( sftp.esb.rws.nl), er wordt d.m.v. firewall aanvraag poort 22 opengezet om klant ipadres toe te laten .
Klant kan met sftp user die we op dmz sftp server aangemaakt aanloggen en bestanden( pushen) , doorsturen.
Vervolgens wordt d.m.v. mule applicatie bestanden vanaf dmz opgepakt en richting interne sftp server gestuurd en daar via nfs share , richting Samba( windows share) van RWS gestuurd.
Van Rws naar buiten , logt rWS medewerker via sftp userid van sftp interne server , vervolgens pakt de mule applicatie bestanden van interne sftp en stuurt hij naar DMZ en vandaar wordt de bestand naar de externe klant doorgestuurd, zie plaatje boven.
Mirror provenance
- Mirror source
- confluence/spaces/INFRAARCH/pages/189136974/page.metadata.json
- Storage source
- confluence/spaces/INFRAARCH/pages/189136974/page.storage.xhtml
- Access
- Committed snapshot only