Назад | Перейти на главную страницу

AutoSSH иногда запускает: «канал 2: открытие не удалось: административно запрещено: открытие не удалось» до перезапуска туннеля.

Я запускаю сценарий autossh, используя выскочку для туннелирования ssh / перенаправления портов в мою базу данных postgresql. Это выглядит так:

# Remote server role: database-master
# Remote hostname:    srv-08.aa.com
# Local/remote port:  5432

# autossh startup Script http://www.async.fi/2013/07/autossh-with-ubuntu-upstart/

description "autossh tunnel for role database-master to srv-08.aa.com:5432"

start on (local-filesystems and net-device-up IFACE=eth0)
stop on runlevel [016]

respawn
respawn limit 5 60 # respawn max 5 times in 60 seconds

exec autossh \
  -M 0 \
  -N \
  -L 5432:localhost:5432 \
  -o "ServerAliveInterval=60" \
  -o "ServerAliveCountMax=3" \
  -o "BatchMode=yes" \
  -i /home/the_user/.ssh/id_rsa \
  the_user@srv-08.aa.com

В целом переадресация работает хорошо. Однако иногда, например, когда удаленный сервер перезапустил службу postgresql, случается, что туннель становится бесполезным (не может подключиться через него) и в /var/log/upstart/autossh-master-db-tunnel.log Я вижу следующую ошибку:

channel 2: open failed: administratively prohibited: open failed
channel 2: open failed: administratively prohibited: open failed
channel 2: open failed: administratively prohibited: open failed
channel 2: open failed: administratively prohibited: open failed
channel 2: open failed: administratively prohibited: open failed
channel 2: open failed: administratively prohibited: open failed

Это продолжается, пока я не сделаю sudo restart autossh-master-db-tunnel потом все снова работает.

Что не так, и как это исправить? Или вначале поумнее?