Jump to content

Πρόβλημα με πρόσβαση σε FTP μέσω Internet


Recommended Posts

Καλημέρα σε όλους!

 

Αποφάσισα πρόσφατα να φτιάξω το δικό μου FTP. Χρησιμοποίησα το server του Filezilla. Έχω κάνει όλες τις απαραίτητες ρυθμίσεις για firewall (router+windows) και port forwarding. Επέλεξα να χρησιμοποιήσω αντί για την default port 21 μία άλλη ώστε να αποφύγω τις μπλοκαρισμένες από τον ΟΤΕ. Το FTP δουλεύει κανονικά αν χρησιμοποιήσω την local ip και την port που του έχω ορίσει. Δεν μπορώ όμως με τίποτα να το δω μέσω Internet αν και η port είναι ανοιχτή. Δοκίμασα από άλλο pc εκτός του δικτύου,αλλά και με dyndns  χωρίς αποτέλεσμα όμως. Τί έχω κάνει λάθος?

 

Ευχαριστώ πολύ εκ των προτέρων για κάθε βοήθεια!

Edited by Nikos Argyropoulos
Link to comment
Share on other sites

To FTP χρειάζεται δύο πόρτες για να λειτουργήσει. Παραδοσιακά, αυτές είναι οι 20 & 21. Δεν ξέρω πως παίζει ο filezilla, αλλά πρέπει να βρείς που είναι ή δεύτερη port. Ξεκίνα ανοίγοντας και την ("πορτα που έβαλες" - 1). πχ. Αν έβαλες τη 10021, άνοιξε/forward και την 10020 στον router.

Link to comment
Share on other sites

Ακούει σε μόνο μία port? Δες πιο προσεκτικά το output.

 

C:\Windows\system32>netstat -anb > "%TMP%\netstat_output.txt"C:\Windows\system32>notepad "%TMP%\netstat_output.txt"
Link to comment
Share on other sites

To FTP χρειάζεται δύο πόρτες για να λειτουργήσει. Παραδοσιακά, αυτές είναι οι 20 & 21. Δεν ξέρω πως παίζει ο filezilla, αλλά πρέπει να βρείς που είναι ή δεύτερη port. Ξεκίνα ανοίγοντας και την ("πορτα που έβαλες" - 1). πχ. Αν έβαλες τη 10021, άνοιξε/forward και την 10020 στον router.

Έχω ανοίξει 1000 ports πρίν και άλλες 1000 μετά την επιλεγμένη. Just to be sure. Αλλά δεν έγινε κάτι...

 

Ακούει σε μόνο μία port? Δες πιο προσεκτικά το output.

 

C:\Windows\system32>netstat -anb > "%TMP%\netstat_output.txt"C:\Windows\system32>notepad "%TMP%\netstat_output.txt"

 

 [FileZilla Server.exe]  TCP    127.0.0.1:15000        127.0.0.1:64144        ESTABLISHED [FileZilla Server.exe]  TCP    127.0.0.1:15485        0.0.0.0:0              LISTENING
Link to comment
Share on other sites

Ok. To πρόβλημα είναι πως ο server ακούει μόνο στην 127.0.0.1. Δηλαδή, μόνο όταν συνδέεται κάνεις επάνω από το μηχάνημα (μόνο localhost συνδέσεις δηλαδή).

 

Πρέπει κάπου στις ρυθμίσεις του filezilla (ή ίσως να σε κόβει και το firewall των windows) να του πεις να ακούει και στην local IP (για να μπορεί να λάβει μέσω Port forwarding).

 

O σκοπός είναι να καταφέρεις κάτι τέτοιο στο output (να μην ακούει μόνο στην 127.0.0.1 δλδ):

TCP    192.168.1.7:15485        0.0.0.0:0              LISTENING

Και άλλη μία σημείωση είναι πως στο output της netstat, το όνομα του process έπαιται του port information, δεν προηγείται. Με άλλα λόγια, στο κομμάτι που έκανες paste επάνω, έχεις φάει την "από επάνω" γραμμή, και μας έχεις δώσει μία παραπάνω στο κάτω μέρος (που σημαίνει πως το port 15485 το χρησιμοποιεί κάποιο άλλο process).

Edited by sstemp
Link to comment
Share on other sites

Θα μπορούσες να μου πεις πώς να το ελέγξω?

Δυστυχώς δεν έχω Windows. Ίσως ένας άλλος φίλος μπορεί να σε βοηθήσει σε αυτό.

Δες τελευταία 2 κεφάλαια εδώ, μήπως σε βοηθήσουν στο τί πρέπει να κάνεις: https://wiki.filezilla-project.org/Network_Configuration 

Link to comment
Share on other sites

Αυτό που θα μπορούσες να κάνεις είναι να αφήσεις τις default ρυθμίσεις του Filezilla και στο router να ορίσεις κάποια μεγάλη πόρτα που δεν κόβεται από τον ΟΤΕ (πχ. 10020,10021) να το στέλνει στο μηχάνημά σου στις 20,21. Αλλά σίγουρα η διεύθυνση στις ρυθμίσεις του Filezilla δεν πρέπει να είναι η 127.Χ.Υ.Ζ, αλλιώς δε θα παίζει από άλλο μηχάνημα, μόνο από το ίδιο το μηχάνημα (που καθιστά τον server άχρηστο).

Link to comment
Share on other sites

O ftp server (ανεξάρτητα filezilla ή άλλος) πρέπει να ξέρει σε ποιά εξωτερικά port βρίσκεται, γιατί τα μεταδίδει στον client. Καλύτερα να συμφωνούν τα μέσα, με τα έξω ports.

Link to comment
Share on other sites

Δε νομίζω ότι είναι το port αυτό που μεταδίδει, αλλά η IP.

Τέλος πάντων η λύση για αυτό το πρόβλημα περιγράφεται εδώ

Πρέπει να το γυρίσει σε passive mode (αν δεν είναι ήδη), να βάλει μία url που επιστρέφει την public IP και να ορίσει ένα port range που θα επιτρέπεται από τον πάροχο και θα γίνεται forward στο router.

  • Like 1
Link to comment
Share on other sites

Πρόσθετα στο παραπάνω (το οποίο ούτως ή άλλως πρέπει να κάνεις), εξασφάλισε ότι δεν έχεις και κάποιο επιπλέον firewall από τον πάροχο (πχ ο ΟΤΕ κλείνει μερικές εισερχόμενες συνδέσεις σε συγκεκριμένες πόρτες και πρέπει να το απενεργοποιήσεις - συνήθως χαμηλές).

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...