티스토리 뷰

AutoSSH

5001(원격지 서버) -> 80(로컬 서버)

  • 원격지 서버 작업

    계정생성 및 autossh 설정 후 확인.

sudo addgroup --gid 1100 tunnel
sudo adduser --gid 1100 tunnel
su -l tunnel
ssh localhost
(.ssh 디렉토리 만들기)
vi ~/.ssh/authorized_keys
pub값복사

telnet localhost 5001
확인
  • 로컬 서버 작업

    autossh 설치 및 터널링 설정.
sudo apt install -y autossh

ssh-keygen
키설정
ssh tunnel@xx.xx.xx
접속 확인

autossh -f -M 0 -o "ServerAliveInterval 30" -o "ServerAliveCountMax 3" -NR 5001:localhost:80 tunnel@xx.xx.xx
Autossh 설정

sudo nano /etc/rc.local
autossh -f -M 0 -o "ServerAliveInterval 30" -o "ServerAliveCountMax 3" -NR 5001:localhost:80 tunnel@xx.xx.xx &
sudo chmod +x /etc/rc.local
부팅 설정

원격용

sudo autossh -f -M 0 -i /home/pi/.ssh/site_rsa -o "ServerAliveInterval 30" -o "ServerAliveCountMax 3" -NR 20001:localhost:22 ubuntu@xx.xx.xx

ssh -p 5002 pi@localhost

ssh -p 5002 pi@localhost

Reverse Proxy

  • LightSail Server 작업

    /etc/nginx/sites-available/default

    server {
      listen 443 ssl;
      server_name xx.xx.xx;
      ssl_certificate /etc/letsencrypt/live/xx.xx.xx/fullchain.pem;
      ssl_certificate_key /etc/letsencrypt/live/xx.xx.xx/privkey.pem;
    
      location /gitlab {
          #rewrite ^/gitlab/(.*)$ /$1 break;
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header Host $host;
          #proxy_set_header Host localhost:5001;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
          proxy_pass http://127.0.0.1:5001;
          #proxy_pass http://xx.xx.xx/ /gitlab/;
          #proxy_redirect / /gitlab/;
          #proxy_redirect http://xx.xx.xx/ /gitlab/;
      }
      location /vue {
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header Host localhost;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
          proxy_pass http://127.0.0.1:8080;
      }
    }
  • 기존내용 삭제 후 입력

nginx -t
오류 확인
sudo service nginx restart
서비스 재시작
댓글