Instantly share code, notes, and snippets.

Embed
What would you like to do?
Nginx configuration for SSH tunnel
upstream tunnel {
server 127.0.0.1:3000;
}
server {
listen 80;
server_name dev.codeplane.com br.dev.codeplane.com;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_pass http://tunnel;
}
}
ssh -vnNT -R 3000:localhost:3000 deploy@codeplane.com
@duanzhanling

This comment has been minimized.

duanzhanling commented Aug 18, 2015

very good

@IvanAlekseevichPopov

This comment has been minimized.

IvanAlekseevichPopov commented May 2, 2017

Awesome!

@ryanzyy

This comment has been minimized.

ryanzyy commented Sep 7, 2017

Thanks for sharing!

@myxomatom

This comment has been minimized.

myxomatom commented Dec 8, 2017

Interesting, thank you

@Trane9991

This comment has been minimized.

Trane9991 commented Mar 6, 2018

Nginx >1.9 has streams support so you can simply use:

stream {
    server {
        listen           nginx-server:2222;
        proxy_pass my-ssh-server:22;
    }
}
@bochen2014

This comment has been minimized.

bochen2014 commented Apr 9, 2018

I am not very sure what this is for. If it’s just to expose localhost:3000 via codeplane.com, what is Nguni for? Isn’t codeplane.com:3000 already opened after you run ssh -R 3000:localhost:3000 deploy@codeplane.com?

If it’s to ssh over https , then Nginx can’t pass tcp traffic. Unless ver >1.9

————————————
Got it now. Thanks for sharing

@Turingu

This comment has been minimized.

Turingu commented May 4, 2018

very good thank you!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment