Как подключиться к IMAP через SSH с помощью PHP - PullRequest
0 голосов
/ 30 марта 2019

Учитывая PHP 7.2, расширение php ssh2 и Ubuntu 18.04.1 LTS. Я хочу общаться с сервером IMAP через сервер SSH.

Прямое соединение:

$stream = fsockopen('ssl://imap.gmail.com', 993);

for($i = 0; $i<=5; $i++){
    var_dump(fgets($stream));
    sleep(2);
}

Результат:

"* OK Gimap ready for requests from 178.150.167.73 u11mb208610367lfc
"

Соединение через ssh:

$ssh_conn = ssh2_connect($sshIp, $sshPort);
if ($ssh_conn && ssh2_auth_password($ssh_conn, $sshUsername, $sshPassword)) {
    $stream = ssh2_tunnel($ssh_conn, 'imap.gmail.com', 993);

    for ($i = 0; $i <= 5; $i++) {
        var_dump(fgets($stream));
        sleep(2);
    }

}

Выход:

bool(false)
bool(false)
bool(false)
bool(false)
bool(false)
bool(false)

Ssh сервер 100% работает. Я попробовал это с другими инструментами, включая дополнительное расширение php для imap через ssh. Но мне нужно использовать именно этот прямой путь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...