fsockopen + SMTP + proxy

Discussion in 'PHP' started by telt, 4 Jan 2008.

  1. telt

    telt New Member

    Joined:
    4 Jan 2008
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    PHP:
    $host '78.214.217.106';
    $port '8181';
    $id=Base64_Encode("login:pass");
    $fp fsockopen($host$port);
    fputs($fp"CONNECT smtp.mail.ru:25 HTTP/1.1 \r\nProxy-Authorization: Basic $id\r\n\r\n");

    fclose ($fp);
    Люди кто знает куда впихивать команды релею? EHLO mail.ru\r\n AUTH LOGIN\r\n и тд. ? никак не разберусь.. помогите плиз с примером...
     
  2. C!klodoL

    C!klodoL Elder - Старейшина

    Joined:
    5 Jun 2007
    Messages:
    302
    Likes Received:
    208
    Reputations:
    4
    в сокет их впихивать, как работать с смтп http://www.stfw.ru/page.php?id=41 по моему чтобы работать с мэйл ру нужно сначала авторизоватся на pop
     
    1 person likes this.
  3. telt

    telt New Member

    Joined:
    4 Jan 2008
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    да не в smtp здесь дело, как работать с ним знаю.. проблема в том, как команду ему сунуть в этом примере, что я привел, первый раз сталкиваюсь с этим туннелем через прокси
     
  4. telt

    telt New Member

    Joined:
    4 Jan 2008
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    проблему решил, не в то место Connection: close ставил. вот пример если кому надо...
    PHP:
    $mailserver "smtp.newmail.ru";

          
    $user "login@nm.ru";

          
    $pass "12345";

          
    $mailto "mail@inbox.ru";


     
    $host '78.214.217.106'
    $port '8181'
    $id=Base64_Encode("login:pass");
    $fp fsockopen($host$port)
    or die (
    "ERROR: Could not connect to proxy server $host on port $port");

    fputs($fp"CONNECT $mailserver:25 HTTP/1.0 \r\n");
    fputs($fp"Proxy-Authorization: Basic $id\r\nConnection: close\r\n\r\n");  
    fputs($fp"EHLO nm.ru\r\n");
    fputs($fp"AUTH LOGIN\r\n");
    fputs($fpbase64_encode($user)."\r\n".base64_encode($pass)."\r\n");
    fputs($fp"MAIL FROM: $user\r\n");
    fputs($fp"RCPT TO: $mailto\r\n");
    fputs($fp"DATA\r\n");

    fputs($fp"Subject: bla\r\n");
    fputs($fp"From: Pupkin <login@nm.ru>\r\n\r\n");
    fputs($fp"text.\r\n\r\n");
    fputs($fp".\r\n");
    echo 
    fread($fp,1024)."<br>";
    fputs($fp"QUIT\r\n");  
     
    /*
     */
    fclose ($fp);
     
    #4 telt, 4 Jan 2008
    Last edited: 5 Jan 2008