Есть ли любой способ запуститься autossh
на запуске, так, чтобы это запустилось и создало туннель ssh, прежде чем даже вошел в систему пользователь? Я загружаю Ubuntu к терминалу, и я хотел бы это autossh
процесс запускается автоматически на запуске, таким образом, я могу ssh в.
Я попытался добавить команду к /etc/rc.local
, а также создать a /etc/init/*.conf
сценарий. Ни один из них, кажется, не работает.
Используя systemd
это может быть сделано (образец autossh
созданный для mysql
доступ):
Создайте systemd использование файла nano
или vim
или соответствующий предпочтительный редактор:
sudo vim /etc/systemd/system/autossh-mysql-tunnel.service
Добавьте следующее содержание:
[Unit]
Description=AutoSSH tunnel service everythingcli MySQL on local port 5000
After=network.target
[Service]
Environment="AUTOSSH_GATETIME=0"
ExecStart=/usr/bin/autossh -M 0 -o "ServerAliveInterval 30" -o "ServerAliveCountMax 3" -NL 5000:localhost:3306 cytopia@everythingcli.org -p 1022
[Install]
WantedBy=multi-user.target
Перезагрузка systemd
:
sudo systemctl daemon-reload
Запустите Autossh
сервис:
sudo systemctl start autossh-mysql-tunnel.service
Включите в boot
:
sudo systemctl enable autossh-mysql-tunnel.service
Проверьте состояние с:
sudo systemctl status autossh-mysql-tunnel
Существует однако важная вещь отметить о systemd и AutoSSH:-f (фоновое использование) уже подразумевает
AUTOSSH_GATETIME=0
, однако-f
не поддерживаетсяsystemd
.
Таким образом в случае systemd
необходимо использовать AUTOSSH_GATETIME