een goeie,
amai, dit gaat weer een lange worden hoor
Gezien je Netwerkharddisk (= NAS . Network Attached Storage) achter je router hangt, en je router NAT (=network address translation) doet, ga je in je router moeten definiëren dat je het protocol FTP (File Transfer Protocol) wilt natten naar het interne adress van je NAS
met andere woorden, als met het FTP-protocol (de signalisatie hiervoor standaard op TCP poort 21) op je publiek ip address connecteerd, komt hij terecht op je router, gezien de router je interne publieke addressen kent en deze allemaal kan bereiken (of de weg ernaar kent) moet je aan je router wijsmaken wanneer hij een request voor FTP krijgt , naar waar hij dit moet doorsturen.
hiervoor moet je wel rekening houden met enkele zaken.
- FTP heeft een onveilige authenticatie (je login gegevens worden ongeïncrypteerd over het (inter)netwerk verzonden.
- FTP gebruikt 2 TCP poorten ( 1 voor signalisatie & 1 voor data)
- FTP bestaat in 2 smaken: Aktief & Passief
de keuze heeft te maken met wie achter een firewall/NAT -device zit.
- Telenet blokkeert alle poorten onder de 1024 dus ga je de standaard poort moeten veranderen (meestal iets in de trend zoals 2121)
Passief: de client gaat (in dit geval degene die dus die mp3 wil downloaden van je server) via het signalisatiekanaal aan de server vragen een willekeurig datakanaal (data connection = tcp poort) te kiezen en hier dus op te luisteren (we zullen dit even $D noemen). Eens dit gebeurd, zal de server via het sync-kanaal laten weten aan de client welke poort gereserveerd wordt voor de "data connection". De client zal dan naar de $D-poort connecteren en uw tansfer kan beginnen.
internet explorer gebruikt standaard passieve, je kan dit vinden onder tools-->internet options--> advanced
Actief: Hier maakt de FTP server (uw nas in dit geval) een een nieuwe (uitgaande) verbinding naar de client op de door de client gevraagde poort . dit is nu de dataconnection.
Met deze wetenschap in het achterhoofd, kan je stellen dat:
- iemand die naar je ftp server wilt connecteren en zelf achter NAT/firewall zit, enkel maar kan connecteren indien hij (en jij) gebruik maakt van passieve FTP.
- jij achter een firewall/NAT zit en dus enkel maar kan gebruik maken van acktieve ftp om deze dienst aan te bieden naar het internet.
wanneer je passieve ftp zou gebruiken achter een firewall/NAT weet je router namelijk nooit welke poort de client zal kiezen voor de data connection en zal deze dan ook niet tot stand gebracht kunnen worden.
Er zijn echter wel enkele oplossingen (work arounds)
- Sommige routers zijn "slim" genoeg om het FTP protocol te herkennen, en houden de gevraagde data connection -poort bij in hun NAT-tabel, wanneer hier dan een request op komt, natten zij dit eveneens naar het intern-adres van je FTP-server (hier je NAS) In dit geval, kan je perfect een passive ftp draaien achter NAT.
- Je kan in je nat router instellen dat je gebruik wilt maken van DMZ en dus bij default alle poorten forewarden naar die NAS-box zijn intern IP address. ( let wel dat je hier dan gaat moeten filteren /firewallen, anders ben je binnen de kortste keren gehackt)
- je kan kijken of je op je NAS zowel passive als aktive ftp kan aktiveren.
hoop dat dit wat duidelijk is, want dit is typisch probleem als je een ftp server wilt opzetten.
groeten
L.
Favorieten/bladwijzers