시스템 시작시 자동 시작


15

시작 autossh시 시작하여 사용자가 로그인하기 전에 ssh 터널을 시작하고 설정하는 방법이 있습니까? 터미널로 우분투를 부팅하고 autossh시작할 때 프로세스가 자동으로 시작되어 ssh에 들어갈 수 있기를 원합니다 .

에 명령을 추가하고 스크립트 /etc/rc.local를 만들려고했습니다 /etc/init/*.conf. 이들 중 어느 것도 작동하지 않는 것 같습니다.


우분투의 버전은 무엇입니까?
George Udosen

@ 조지 16.04 LTS.
ptf

답변:


20

systemd이것을 사용하여 수행 할 수 있습니다 ( 액세스를 autossh위해 작성된 샘플 mysql).

  1. 사용 systemd 파일을 작성 nano하거나 vim또는 선택의 적절한 에디터 :

    sudo vim /etc/systemd/system/autossh-mysql-tunnel.service 
    
  2. 다음 내용을 추가하십시오.

    [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
    
  3. 새로 고침 systemd:

    sudo systemctl daemon-reload
    
  4. Autossh서비스를 시작하십시오 :

    sudo systemctl start autossh-mysql-tunnel.service
    
  5. 에서 활성화 boot:

    sudo systemctl enable autossh-mysql-tunnel.service
    
  6. 다음을 통해 상태를 확인하십시오.

    sudo systemctl status autossh-mysql-tunnel
    

노트

그러나 systemd 및 AutoSSH에 대해 유의해야 할 중요한 사항이 있습니다. -f (백그라운드 사용)는 이미 암시 AUTOSSH_GATETIME=0하지만에서 -f지원하지 않습니다 systemd.

따라서 systemd당신 의 경우를 사용해야합니다AUTOSSH_GATETIME

출처


감사! 나는 이것을 시도하고 있지만 sudo service reverse-ssh-tunnel.service status달리면을 얻는다 Loaded: not-found (Reason: No such file or directory). 이것을 지금 연구 :)
ptf

제발 sudo systemctl status reverse-ssh-tunnel하지sudo service reverse-ssh-tunnel.service status
조지 Udosen

2
난 당신 말은 믿을autossh -i /home/<user>/.ssh/id_rsa -R 22222:localhost:22 <user>@<remote_host>
조지 Udosen에게

2
나는 -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no또한 추가해야 했다. 어쩌면 나는 그들 중 하나만 필요할 수도 있고 개별적으로 테스트하지는 않았습니다. 이것을 여기에서 발견하십시오 : stackoverflow.com/a/24689061/1211119 . 그러나 tty1 로그인 화면 (터미널로 부팅)을 볼 때 서비스가 아직 터널을 만들지 않았습니다. 로그인하면 서비스가 시작됩니다.
ptf

2
때로는 다른 사용자 컨텍스트에서 실행하려고합니다. 이렇게하려면 : systemd 파일 User=username[Service]섹션에 추가 하십시오.
friederbluemle
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.