ssh2_scp_recv упорно заявлял что ему не удаётся скопировать файл, когда работал с микротиком (даже если это первый и единственный запрос в этом соединении), при том, что с Ubuntu при тех же параметрах работал (менял только IP). Так как ssh2_sftp заработал сразу — не стал возиться.
Как я понял, эта библиотека писана под php4, при попытке её использовать в требуемом окружении (ubuntu server, php5.3) получил уйму ошибок на неверные параметры к функциям в коде самой библиотеки. Так как сроки поджимали — отказался от неё не разбираясь, хотя по описанию она мне понравилась.
Может я не так понял статью и задумку автора, но не проще ли было сделать бэкндом shell/perl-скрипт, который бы делал легко и со свистом всю «черную» работу, а бэкэнд обращался бы к нему через shell_exec(), скажем?
В таком случае мы избавляемся от зависимости таймаута http/браузера/php.
SSH2 в php5 + Mikrotik RouterOS, подводные камни