2013-12-16 3 views
12

Ich habe einen Computer hinter ForeFront TMG 7.0 und öffentlichen Remote-FTP-Server. TMG-Client ist installiert. Windows-Firewall ist deaktiviert. Antivirus: McAfee Virus Scan Enterprise (8.8) + AntySpyware Enterprize (8.8) + Keine Addons. Antivirus wurde ein- und ausgeschaltet.Forefront TMG vs Java und PHP (ftp)

Es kann keine Verbindung zum Server über Java und PHP hergestellt werden. Filezilla, explorer.exe und Go-geschriebene Programm verbindet ohne Probleme.

Für Java erhalte ich ConnectionRefused Fehler:

java.net.ConnectException: Connection refused: connect 
    at java.net.DualStackPlainSocketImpl.connect0(Native Method) 
    at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source) 
    at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source) 
    at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source) 
    at java.net.AbstractPlainSocketImpl.connect(Unknown Source) 
    at java.net.PlainSocketImpl.connect(Unknown Source) 
    at java.net.SocksSocketImpl.connect(Unknown Source) 
    at java.net.Socket.connect(Unknown Source) 
    at org.apache.commons.net.SocketClient.connect(SocketClient.java:182) 
    at org.apache.commons.net.SocketClient.connect(SocketClient.java:203) 

Egal, wie ich über Java zu verbinden bin versucht:

  • Apache FTP-Client (aktiv/passiv - lokale/remote/beide)
  • Apache FTPS Client (alle varians aktiv | passiv)
  • Sauron FTP-Client (gleiche)
  • Sockel Socke et = neuer Socket (Host, 21);

Sometimes es trows Verbindung Timeout nach 5 Minuten warten. Und der Fehler ist Timeout Ausnahme. Alle Variablen werden mit direkter Verbindung, globalem Proxy, FTP-Proxy, HTTP-Proxy und allen Kombinationen davon getestet. Alle Varianten werden sowohl nach IP als auch nach Hostname getestet.

Php-Codebeispiel, das nicht verbinden:

<?php 

    $host = "ftphost"; 
    $connect = ftp_connect($host,21); 
    if(!$connect) 
    { 
    echo("Error: $host"); 
    exit; 
    } 
    else 
    { 
    echo("Cheers: $host"); 
    } 

?> 

Aber FileZilla verbindet, ohne ein Problem. Der Explorer verbindet sich ohne Probleme. Go-geschriebene Programm verbindet ohne Probleme.

Irgendwelche Ideen, was kann Java und PHP blockieren? Wie kann ich die Richtlinie oder die Programmeinstellungen herausfinden, die JRE und Apache blockieren?

+0

Irgendwelche Ideen, was Java und PHP blockieren kann? Firewalls und viele andere Dinge (Ihr Betriebssystem, das Netzwerk, der Server, ... gewähren keinen Zugriff auf nicht vertrauenswürdige Software). Auch falsche Konfiguration wie nicht mit dem System-Proxy. Vergleiche z.B. [Wireshark] (http://www.wireshark.org/) – zapl

+0

hatte einige Probleme mit Tmg in der Vergangenheit, finden Sie heraus, dass es einige URLs per IP blockieren kann, aber nicht auf PC-Name, oder umgekehrt. Versuchen Sie, damit zu spielen – secario

+0

Dies ist nicht Site-Blockierung, weil FileZilla und andere normalerweise verbindet. – Globber

Antwort

0

Sie können versuchen, Problem mit PHP-Skripten wie unten zu debuggen;

<?php 
$host = "xx.xx.xx.xx"; 
$ftpUser = "annonymous"; 
$ftpPass = null; 
$checkPort = @fsockopen($host, 21, $errno, $errstr, 10); 
if($checkPort!==false){ 
    echo "can able to connect ftp server"; 
    $conn_id = ftp_connect($host); 
    if($conn_id!==false){ 
    echo "\n Ftp server available and connected trying to logged in"; 
     $loginStatus = ftp_login($conn_id, $ftpUser, $ftpPass); 
     if($loginStatus!==false){ 
      echo "\n Connected to ftp"; 
     } else { 
      echo "\n Please check credentials"; 
     } 
    } 
} else { 
    echo "server can't reach to ftp server"; 
} 
?>