verbinding maken met een secure ftp, krijg een error

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Superman

Superman

29/05/2006 19:44:00
Quote Anchor link
Ik heb een FTP server die alleen maar Explicit SSL verbinding accepteert. Dit werkt allemaal perfect via FlashFXP (vaste client op de pc)

Nu wil ik het via een webbased client doen, hiervoor gebruik ik net2ftp (http://www.net2ftp.com)

Deze werkt geweldig met een nonsecure verbinding. Maar nu wil ik deze gebruiken voor SSL, het wordt ondersteund want er is een checkbox aanwezig en wordt ook aangegeven zolang je PHP open SSL ondersteund kan net2ftp het ook.

Net2ftp maakt gebruik van de ftp_ssl_connect functie
http://nl2.php.net/nl/ftp_ssl_connect

Ik heb PHP 5.1.4 met OpenSSL support.

Als ik wil inloggen krijg ik de volgende errormelding:

Quote:
Warning: ftp_login() [function.ftp-login]: SSL/TLS handshake failed in xxxxxx\filesystem.inc.php on line 56

Warning: ftp_login() [function.ftp-login]: AUTH command ok; starting SSL connection. in xxxxxx\filesystem.inc.php on line 56


De verbinding tussen webbrowser (client) en PHP (server) gaat gewoon over poort 80 nonsecure. Het is alleen de verbinding tussen PHP en FTP via SSL.

Het gaat om een windows 2003 server.

Om in de source van net2ftp te gaan werken is een beetje onhandig, dus hier een basic ftp script waarmee ik dezelfde errors krijg.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
$ftp_server
= "192.168.1.250";
$ftp_port = "44005";
$ftp_user_name = "d";
$ftp_user_pass = "d";

// set up basic ssl connection
$conn_id = ftp_ssl_connect($ftp_server, $ftp_port);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

ftp_pasv($conn_id, true);

echo ftp_pwd($conn_id);

// close the ssl connection
ftp_close($conn_id);
?>


En met de volgende code kan ik de public key (die met het ftp programma aangemaakt is) uitlezen.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
echo "Source: $source";
$fp=fopen("/path/to/certificate.crt","r");
$pub_key=fread($fp,8192);
fclose($fp);
openssl_get_publickey($pub_key);
/*
 * NOTE:  Here you use the $pub_key value (converted, I guess)
 */

openssl_public_encrypt($source,$crypttext,$pub_key);
echo "String crypted: $crypttext";
?>


Wat moet ik doen om er voor te zorgen dat de public key via php in verbinding komt met de private key van de ftp programma.

Want onder FLASHfxp (windows client) werkt het perfect.
 
PHP hulp

PHP hulp

20/04/2024 16:12:56
 
Terence Hersbach

Terence Hersbach

29/05/2006 20:10:00
Quote Anchor link
Ik heb zelf weinig verstand van dingen over ftp, maar het volgende ip adres 192.168.1.250 is waarschijnlijk je interne adres (tot de router dus).

Je moet even op http://www.whatismyip.com kijken wat je echte ip adres is en de poorten in je router opengooien.
 
Superman

Superman

29/05/2006 21:22:00
Quote Anchor link
Zoals opgemerkt kan worden in mijn tekst werkt de verbinding gewoon, omdat dit een test omgeving binnen mijn eigen netwerk is. En mijn server binnen mijn eigen netwerk heeft ip 192.168.1.250
 
Superman

Superman

30/05/2006 11:57:00
Quote Anchor link
Quote:
PHP Warning: PHP Startup: Unable to load dynamic library 'c:\\php\\ext\\php_mcrypt.dll' - The specified module could not be found.\r\n in Unknown on line 0


Kan dit er iets mee te maken hebben, vond dit in error.log van apache. Of gebruikt SSL geen mcrypt om de verbinding op te zetten?
 
Erik Rijk

Erik Rijk

30/05/2006 14:17:00
Quote Anchor link
Hij kan de library niet vinden.
verwijst je extension_dir naar de juiste locatie?
 
M Ypma

M Ypma

30/05/2006 16:37:00
Quote Anchor link
Superman:
Zoals opgemerkt kan worden in mijn tekst werkt de verbinding gewoon, omdat dit een test omgeving binnen mijn eigen netwerk is. En mijn server binnen mijn eigen netwerk heeft ip 192.168.1.250

ja maar je probleem is er omdat je bij net2ftp.com met je locale IP probeert te ftpen?
Of het nu dus gaat om een test omgeveing of niet...via net2ftp heb je je externe IP nodig
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.