Inicie o autossh na inicialização do sistema

7

Existe alguma maneira de iniciar autossh na inicialização, para que ele inicie e configure o túnel ssh antes que um usuário tenha efetuado login? Eu inicializo o Ubuntu no terminal e gostaria que o processo autossh fosse iniciado automaticamente na inicialização para que eu pudesse ssh in.

Eu tentei adicionar o comando a /etc/rc.local , bem como criar um script /etc/init/*.conf . Nada disso parece funcionar.

    
por ptf 19.08.2017 / 17:39

1 resposta

8

Usando systemd , isso pode ser feito (amostra autossh criada para mysql access):

  1. Crie um arquivo systemd usando nano ou vim ou editor apropriado de escolha:

    sudo vim /etc/systemd/system/autossh-mysql-tunnel.service 
    
  2. Adicione o seguinte conteúdo:

    [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 [email protected] -p 1022
    
    [Install]
    WantedBy=multi-user.target
    
  3. Recarregue systemd :

    sudo systemctl daemon-reload
    
  4. Inicie o Autossh service:

    sudo systemctl start autossh-mysql-tunnel.service
    
  5. Ativar em boot :

    sudo systemctl enable autossh-mysql-tunnel.service
    
  6. Verifique o status com:

    sudo systemctl status autossh-mysql-tunnel
    

Nota:

  

No entanto, há uma observação importante sobre systemd e AutoSSH: -f (uso de segundo plano) já implica AUTOSSH_GATETIME=0 , mas -f não é suportado por systemd .

Portanto, no caso de systemd , você precisa usar AUTOSSH_GATETIME

Fonte:

link

link

    
por George Udosen 19.08.2017 / 20:33