<html>
<head>
<style>
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
</style>
</head>
<body class='hmmessage'>
o client παιρνει το μήνυμα network timeout<br>-------------------------------------------------------------<br>




  
  <title></title>


<tt>Παρατηρώντας τα αναφερόμενα στο
<a class="EC_moz-txt-link-freetext" href="http://www.westworks.ch/%7Echris/netbsd/NetBSD-NAT-FTP-server.html">http://www.westworks.ch/~chris/netbsd/NetBSD-NAT-FTP-server.html</a><br>
και δοκιμάζοντας τώρα να το μεταφέρω σε linux, διαπιστώνω, ότι δεν έχει
κάτι το ιδιαίτερο από πλευράς αναγκών σε iptables ή κάτι άλλο
"linux-specific", και μάλιστα άν δεν
υπάρχει firewall στον ftp server, δεν χρειάζεται καθόλου η χρήση
iptables, αλλά για σίγουρα, μόνο οι δοκιμές θα δείξουν. <span class="EC_moz-smiley-s1"><span> :-)&nbsp; </span></span><br>
Πάντως, μετά από δοκιμή με το </tt><tt>wget, που έχει default passive
mode,
παίζει, αλλά με firefox (από windoze μηχάνημα) και με ie δεν έπαιξε και
δεν ξέρω γιατί.</tt><tt><br>
<br>
Ιδού το setup:<br>
<br>
</tt>
<pre><tt>                 _____<br>  +--------+   _(    _)        +-------------+   +-----------------+<br>  | Client |--(____    )-------| ADSL router |---| vsftpd (Server) |<br>  +--------+    (_(___)        +-------------+   +-----------------+<br><br>                INTERNET                           (192.168.0.2)<br><br></tt></pre>
<tt>1) vsftpd server configuration:</tt><BR>
<tt>Server vsftpd # pwd<br>
/etc/vsftpd<br>
Server vsftpd # ls<br>
email_passwords&nbsp; vsftpd.conf <br>
Server vsftpd # cat vsftpd.conf</tt><BR>
<tt>pasv_min_port=50000<br>
pasv_max_port=50003<br>
anonymous_enable=YES<br>
banner_file=/etc/WELCOME_BANNER<br>
connect_from_port_20=YES<br>
dirmessage_enable=YES<br>
nopriv_user=ftpsecure<br>
xferlog_enable=YES<br>
<br>
# for anonymous uploads with specific email<br>
write_enable=YES<br>
anon_upload_enable=YES<br>
anon_other_write_enable=YES<br>
anon_world_readable_only=NO<br>
hide_ids=YES<br>
secure_email_list_enable=YES<br>
email_password_file=/etc/vsftpd/email_passwords</tt><BR>
<tt>Server vsftpd # cat email_passwords<br>
passwd-1<br>
passwd-2<br>
passwd-3<br>
...<br>
</tt><BR>
<tt>2) Στον ADSL router κάνουμε forward τις θύρες (tcp):&nbsp; <br>
0.0.0.0/0 port 21&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -&gt; 192.168.0.2 port 21<br>
0.0.0.0/0 port 50000 -&gt; <samp>192.168.0.2</samp> port 50000<br>
0.0.0.0/0 port 50001 -&gt; <samp>192.168.0.2</samp> port 50001<br>
0.0.0.0/0 port 50002 -&gt; <samp>192.168.0.2</samp> port 50002<br>
0.0.0.0/0 port 50003 -&gt; <samp>192.168.0.2</samp> port 50003<br>
</tt><BR>
<tt>3) ftp home directory permissions:<br>
</tt><BR>
<tt>Server home # pwd<br>
/home<br>
Server home # ls -ld ftp<br>
drwxr-xr-x 6 root ftp 58 2008-12-08 14:29 ftp<br>
Server home # cd ftp<br>
Server ftp # ls -ld uploads/<br>
drwxr-xr-x 2 ftp root 21 2008-12-29 11:57 uploads/<br>
Server ftp # <br>
<br>
</tt><BR>
<tt>4) Τέλος για δοκιμή, από κάποια εξωτερική IP (από την πλευρά του
internet)<br>
Δοκιμάζουμε κάποιες url, πχ:<br>
<br>
<a class="EC_moz-txt-link-freetext" href="ftp://Server/">ftp://fpt:passwd-1@Server/</a><br>
<br>
wget <a class="EC_moz-txt-link-freetext" href="ftp://Server/file1">ftp://fpt:passwd-1@Server/file1</a><br>
<br>
5) Υπ`όψιν</tt><tt> ότι </tt><tt>στο περιγραφέν setup</tt><tt>:<br>
α) δεν έχουμε σηκωμένο firewall στον
Server. Διαφορετικά θα πρέπει να ανοίξουμε στον firewall τις ίδιες
θύρες (21,
και 50000 έως 50003)<br>
β) Υπάρχει ο χρήστης </tt><tt>ftpsecure (</tt><tt>nopriv_user=ftpsecure),
ο οποίος έχει για shell το /bin/false.<br>
γ) Δεν μπορούμε να κάνουμε anonymous login (λόγω των </tt><tt>secure_email_list_enable=YES
και<br>
email_password_file=/etc/vsftpd/email_passwords</tt><tt> στο config).<br>
</tt><tt>δ) τον vsftpd τον τρέχουμε μέσω xinetd (με το εξής
configuration):<br>
<br>
# cat /etc/xinetd.conf&nbsp; |grep -v \#<br>
<br>
defaults<br>
{<br>
<br>
&nbsp;&nbsp;&nbsp; log_type&nbsp;&nbsp;&nbsp; = SYSLOG daemon info <br>
&nbsp;&nbsp;&nbsp; log_on_failure&nbsp;&nbsp;&nbsp; = HOST<br>
&nbsp;&nbsp;&nbsp; log_on_success&nbsp;&nbsp;&nbsp; = PID HOST DURATION EXIT<br>
<br>
&nbsp;&nbsp;&nbsp; cps&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; = 50 10<br>
&nbsp;&nbsp;&nbsp; instances&nbsp;&nbsp;&nbsp; = 50<br>
&nbsp;&nbsp;&nbsp; per_source&nbsp;&nbsp;&nbsp; = 10<br>
<br>
&nbsp;&nbsp;&nbsp; v6only&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; = no<br>
<br>
&nbsp;&nbsp;&nbsp; groups&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; = yes<br>
&nbsp;&nbsp;&nbsp; umask&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; = 002<br>
<br>
}<br>
<br>
includedir /etc/xinetd.d<br>
<br>
# cat /etc/xinetd.d/vsftpd |grep -v \#<br>
<br>
service ftp<br>
{<br>
&nbsp;&nbsp;&nbsp; socket_type&nbsp;&nbsp;&nbsp;&nbsp; = stream<br>
&nbsp;&nbsp;&nbsp; wait&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = no<br>
&nbsp;&nbsp;&nbsp; user&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = root<br>
&nbsp;&nbsp;&nbsp; server&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = /usr/sbin/vsftpd<br>
&nbsp;&nbsp;&nbsp; server_args&nbsp;&nbsp;&nbsp;&nbsp; = /etc/vsftpd/vsftpd.conf<br>
&nbsp;&nbsp;&nbsp; log_on_success&nbsp; += DURATION <br>
&nbsp;&nbsp;&nbsp; nice&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 10<br>
&nbsp;&nbsp;&nbsp; disable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = no<br>
}<br>
<br>
</tt><tt>6) Αυτά...<span class="EC_moz-smiley-s1"><span> :-) </span></span><br>
Άν θέλει κάποιος
άς δοκιμάσει κάτι τέτοιο, να μας πεί τις εντυπώσεις του.</tt><tt><br>
</tt><br /><hr />Get news, entertainment and everything you care about at Live.com. <a href='http://www.live.com/getstarted.aspx ' target='_new'>Check it out!</a></body>
</html>