incubator-mod_ftp-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Zubin Kika <zubin...@yahoo.com>
Subject New FTP Perl-Framework scripts for Implicit SSL and Explicit SSL
Date Wed, 08 Feb 2006 14:58:15 GMT
Hello,
   
  I have written a few Perl-Framework scripts to test mod_ftp module with Implicit SSL and
Explicit SSL using PASV command.
   
  I tried using Net::FTPSSL module, but faced several problems as follows:
   
  1)    sysread() and syswrite() functions were used for reading from a socket and writing
to a socket. And the socket hangs when these functions are invoked.
  2)    The followings functions were not present in the module.
  a)    APPEND command
  b)    NOOP command
  c)    SYST command
  d)    TYPE command
  e)    HELP command
  f)    PORT command
   
  So I developed a module Ssl::FTPSSL for executing the FTP commands under Implicit and Explicit
SSL modes, for which the following modules are the prerequisites:
  1) Net::SSLeay 1.25
  2) IO::Socket::SSL 0.97
   
  Attached is the tar file containing automated scripts and the Perl module for Implicit and
Explicit SSL only over PASV command.
   
  The Ssl::FTPSSL Perl module should be at the location specified by PERL5LIB environment
variable.
   
  The tar file contains the following directories and files:
   
  + /Ssl
    +FTPSSL.pm
  + /t
   + /conf
     + /ftp.conf.in
   + /ftp
     + /ftp_imp_ssl
       + aa_setup.t
       + abor_retr.t
       + abor__stor.t
       + accesstransfer.t
       + anon_limitlogin.t
       + anon_login.t
       + append.t
       + dele.t
       + help.t 
       + homeDir.t
       + limitlogin.t
       + list.t
       + maxloginattempt.t
       + mdtm.t
       + mkd.t
       + nlst.t
       + noop.t
       + pasvRange.t
       + pwd.t
       + rename.t
       + rest.t
       + retr.t
       + rmd.t
       + size.t
       + stor.t
       + syst.t
       + timeouts.t
       + type.t 
     + /ftp_exp_ssl
       + aa_setup.t
       + abor_retr.t
       + abor__stor.t
       + accesstransfer.t
       + anon_limitlogin.t
       + anon_login.t
       + append.t
       + dele.t
       + help.t 
       + homeDir.t
       + limitlogin.t
       + list.t
       + maxloginattempt.t
       + mdtm.t
       + mkd.t
       + nlst.t
       + noop.t
       + pasvRange.t
       + pwd.t
       + rename.t
       + rest.t
       + retr.t
       + rmd.t
       + size.t
       + stor.t
       + syst.t
       + timeouts.t
       + type.t 
   
  
  Please review it and provide your feedback.
   
  I am trying to extend these scripts to use the PORT command, but having some difficulties:
   
  I faced problems while creating a new SSL enabled socket to open a data channel. The accept
command at the server end does not break.
   
  Similar problems were seen when testing manually using OpenSSL.
  Following are the procedures followed while trying to use PORT Command.
  1)    Started the server using the following command:
       openssl s_server –accept 9000 –cert /path/to/cert/ -key /path/to/key 
     
     After the server starts, the following is seen in the shell:
       Using default temp DH parameters
       ACCEPT
   
  2)    In the other shell, started the ssl client using:
          openssl s_client –connect localhost:9000
     
  3)    After logging in and giving the following command:
        PORT 127, 0,0,1,35,40
     The ACCEPT function does not break until the timeout occurs.   
  Can anyone help me with this?
  Any help would be greatly appreciated.
   
  Thanks.
   
  Regards,
  Zubin

		
---------------------------------
Relax. Yahoo! Mail virus scanning helps detect nasty viruses!
Mime
View raw message