Nginx setup
-
I am looking at setting up Ngnix in my home lab. Not sure how to do it yet, and not good with Linux, so wondering if there is anything I should look for or know, or any tips to make it easy :-).
I have port 80 blocked by ISP, but will be passing all via 443. Anyone know a way to have either GoDaddy or no-ip force 80 to 443 when resolving host name?
-
@smartkid808 said in Nginx setup:
I have port 80 blocked by ISP, but will be passing all via 443. Anyone know a way to have either GoDaddy or no-ip force 80 to 443 when resolving host name?
Can't be done because DNS will only resolve the host name to ip address.
But if you have a proxy server in front of your own server and the proxy will answer on port 80 it will work. Then it could redirect to https. Look at Cloudflare for example.
-
@Pete-S said in Nginx setup:
Can't be done because DNS will only resolve the host name to ip address.
That's what I figured, but was hoping for some magical unicorn. lol.
-
@smartkid808 said in Nginx setup:
Anyone know a way to have either GoDaddy or no-ip force 80 to 443 when resolving host name?
Not possible. But as long as links are https you have nothing to worry about and I think all browser default to https now when not specified.
-
@Pete-S said in Nginx setup:
@smartkid808 said in Nginx setup:
I have port 80 blocked by ISP, but will be passing all via 443. Anyone know a way to have either GoDaddy or no-ip force 80 to 443 when resolving host name?
Can't be done because DNS will only resolve the host name to ip address.
But if you have a proxy server in front of your own server and the proxy will answer on port 80 it will work. Then it could redirect to https. Look at Cloudflare for example.
But, generally that proxy would be Nginx But yes, Cloudflare does this when you turn on their proxy option. We use this a lot and it makes this stuff super easy.
-
@scottalanmiller said in Nginx setup:
Not possible. But as long as links are https you have nothing to worry about and I think all browser default to https now when not specified.
Thats cool.. Did not know that. That would prob work. It's really only going to be me 99% of the time accessing stuff.
Is it pretty easy for a newb to setup nginx?
-
@smartkid808 said in Nginx setup:
Is it pretty easy for a newb to setup nginx?
Depends, if you are copying configs, yes. If you are trying to customize, no. It's a solid "medium" on the difficulty level. Not hard, for sure, but it's not a set and forget kind of thing. There are multiple settings and lots of ways to break it. Once you have a working config, copying it to do again is pretty easy.
-
But a good skill to have, Nginx reverse proxies are crazy useful.
-
@scottalanmiller said in Nginx setup:
Depends, if you are copying configs, yes. If you are trying to customize, no. It's a solid "medium" on the difficulty level. Not hard, for sure, but it's not a set and forget kind of thing. There are multiple settings and lots of ways to break it. Once you have a working config, copying it to do again is pretty easy.
Copying configs? I'll have to look more into it.. Interesting. Kind of scary on the "medium level" lol
-
@scottalanmiller said in Nginx setup:
I think all browser default to https now when not specified.
I think not. I'm not even sure Chrome does it.
But 99.9% of all sites redirect http to https so for normal users it's invisible. Also search engines default to showing https results.
-
-
@scottalanmiller said in Nginx setup:
But a good skill to have, Nginx reverse proxies are crazy useful.
I prefer nginx over everything else when it comes to reverse proxies. There are special purpose proxies like Traefik, but nginx is the ultimate general purpose swiss army knife.
-
@thwr said in Nginx setup:
I prefer nginx over everything else when it comes to reverse proxies. There are special purpose proxies like Traefik, but nginx is the ultimate general purpose swiss army knife.
Nice. That's what I gathered from what I read. Now to work on getting it setup. Tried once a while ago and gave up. Now to try again ^_^
-
@smartkid808 said in Nginx setup:
@thwr said in Nginx setup:
I prefer nginx over everything else when it comes to reverse proxies. There are special purpose proxies like Traefik, but nginx is the ultimate general purpose swiss army knife.
Nice. That's what I gathered from what I read. Now to work on getting it setup. Tried once a while ago and gave up. Now to try again ^_^
You could do something like this:
- Install lighttpd (or something else), create a simple static page, let it listen to some random port (10080, 55555, ...). This will be your "backend server"
- Install nginx, let it listen to port 8080 (or something else), let it connect to Lighttpd's port as a reverse proxy.
Next step would be to use nginx as terminating SSL proxy, which means that you can connect to nginx using SSL, but nginx uses an unecrypted connection to the backend webserver (lighttpd). A more advanced configuration would use SSL on the backend server too.
I guess that you can't use Let's Encrypt certificates for your tests, because your ISP blocks port 80. Let's encrypt verifies sites by connecting to port 80. However, you may use DNS validation, but that's an advanced topic.
-
@smartkid808 said in Nginx setup:
@thwr said in Nginx setup:
I prefer nginx over everything else when it comes to reverse proxies. There are special purpose proxies like Traefik, but nginx is the ultimate general purpose swiss army knife.
Nice. That's what I gathered from what I read. Now to work on getting it setup. Tried once a while ago and gave up. Now to try again ^_^
https://www.mangolassi.it/topic/16651/install-nginx-as-a-reverse-proxy-on-fedora-27
-
@JaredBusch said in Nginx setup:
@smartkid808 said in Nginx setup:
@thwr said in Nginx setup:
I prefer nginx over everything else when it comes to reverse proxies. There are special purpose proxies like Traefik, but nginx is the ultimate general purpose swiss army knife.
Nice. That's what I gathered from what I read. Now to work on getting it setup. Tried once a while ago and gave up. Now to try again ^_^
https://www.mangolassi.it/topic/16651/install-nginx-as-a-reverse-proxy-on-fedora-27
@JaredBusch said in Nginx setup:
@smartkid808 said in Nginx setup:
@thwr said in Nginx setup:
I prefer nginx over everything else when it comes to reverse proxies. There are special purpose proxies like Traefik, but nginx is the ultimate general purpose swiss army knife.
Nice. That's what I gathered from what I read. Now to work on getting it setup. Tried once a while ago and gave up. Now to try again ^_^
https://www.mangolassi.it/topic/16651/install-nginx-as-a-reverse-proxy-on-fedora-27
Thanks Jared, I'll take a look at that.. I'll follow your CentOS7 steps in the link. Hopefully I can figure out the conf file. Looks confusing. My brain hasn't been really working lately. lol