
Я использую SCP для резервного копирования файлов с моего VPS в облаке на мой ПК. В ранней версии скрипта резервного копирования есть одна единственная команда SCP для резервного копирования всего из корня сервера. Это работает безупречно..
Однако по мере роста сервера это начинает становиться большим, поэтому я изменяю скрипт для запуска команд SCP в определенных каталогах (около дюжины). И теперь некоторые отдельные команды SCP выдают ошибку "connections denied". Но следующая команда SCP в скрипте работает... Я добавил 5-секундную задержку между каждой командой SCP на случай, если где-то будет какое-то ограничение, но этого недостаточно.
Что может быть причиной этого? Что я могу проверить?
netstat
на сервере после запуска скрипта отображается несколько SSH-подключений с моего IP (включая, конечно, выдаваемые соединения, netstat
но это будет только одно из них?).
Если это имеет значение, то на сервере установлена ОС Ubuntu Server 16.04, а на моем ПК — Ubuntu 14.04.
решение1
Скорее всего, ваш VPS-провайдер (или ваш собственный сервер) ограничивает скорость ssh-подключений. После превышения лимита скорости ваше подключение отклоняется.
[обновлять]
Если это ограничение на стороне вашего VPS-провайдера, вы можете обойти его, установив ssh-туннель (т. е. ssh -L 2222:localhost:22 user@vps
) к вашему серверу на время выполнения вашего скрипта, а затем выполняя scp-запросы исключительно через этот туннель (т. е. через localhost:2222
туннель, который я предоставил).