# Local installation internal use only

**URL:** https://meta.discourse.org/t/local-installation-internal-use-only/298651
**Category:** Self-hosting
**Created:** [March 9, 2024, 1:00am UTC](https://meta.discourse.org/t/local-installation-internal-use-only/298651 "2024-03-09T01:00:47Z")
**Posts on this page:** 12
**Page:** 1

<div class="post-metadata">

### Author: ![rayman](https://avatars.discourse-cdn.com/v4/letter/r/e495f1/32.png) [@rayman](https://meta.discourse.org/u/rayman)
#### Post date: [March 9, 2024, 1:00am UTC](https://meta.discourse.org/t/local-installation-internal-use-only/298651/1 "2024-03-09T01:00:47Z")

</div>

Hi all,

Quick question , is there a way I can use discourse internally , on my network only , not over the internet .

Say my domain at home is called testlabs.local , I want to be able for all users In this domain to be able to access discourse . I can access it via port 80 but when I register my account i set a username and password and then when I continue it hits me with a 404 nginx message , page is blank . Oddly , even though it errors out I still receive the email but when I click on link I get 404 error again .  
So can this be used internally like I want too ?  
Or is this only to be used externally ?

If so any guides to set this up internally because all I see is the cloud guide

In the yaml file I set up my smtp settings , I can receive it . I’m unclear on the smtp username and password field . I just comment those out , does that need to be setup ? If so , why do I still receive emails without that setup ?

I just don’t want to put an email password in there in plain text

---

<div class="post-metadata">

### Author: ![jericson](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jericson/32/116215_2.png) [@jericson](https://meta.discourse.org/u/jericson)
#### Post date: [March 9, 2024, 3:37am UTC](https://meta.discourse.org/t/local-installation-internal-use-only/298651/2 "2024-03-09T03:37:52Z")

</div>

Maybe set up a development environment:

- [Install Discourse for development using Docker](https://meta.discourse.org/t/install-discourse-for-development-using-docker/102009)
- If you use macOS, consider: [Install Discourse on macOS for development](https://meta.discourse.org/t/install-discourse-on-macos-for-development/15772)
- For Ubuntu or Debian: [Install Discourse on Ubuntu or Debian for Development](https://meta.discourse.org/t/install-discourse-on-ubuntu-or-debian-for-development/14727)

Any of these will let you use Discourse via [http://localhost:4200/](http://localhost:4200/) These options all use [MailHog](https://github.com/mailhog/MailHog) to test SMTP without actually sending mail.

**Update:** I re-read the question and see you want to let other people use it. I don’t know if this answer actually helps. ☹

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [March 9, 2024, 12:41pm UTC](https://meta.discourse.org/t/local-installation-internal-use-only/298651/3 "2024-03-09T12:41:38Z")

</div>

Discourse mostly won’t work without https, which is difficult to configure in a local network. You could ~~join~~ look at guides that involve a reverse proxy as a guide, but it’s not a supported setup.

---

<div class="post-metadata">

### Author: ![rayman](https://avatars.discourse-cdn.com/v4/letter/r/e495f1/32.png) [@rayman](https://meta.discourse.org/u/rayman)
#### Post date: [March 9, 2024, 7:10pm UTC](https://meta.discourse.org/t/local-installation-internal-use-only/298651/4 "2024-03-09T19:10:43Z")

</div>

Hi Jon,

Thank you for your answer, yes, I do want to let other people use it too. I just want to clarify these other people are part of my local network, all will be accessed in house, no public access to it.

---

<div class="post-metadata">

### Author: ![jericson](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jericson/32/116215_2.png) [@jericson](https://meta.discourse.org/u/jericson)
#### Post date: [March 9, 2024, 7:22pm UTC](https://meta.discourse.org/t/local-installation-internal-use-only/298651/5 "2024-03-09T19:22:10Z")

</div>

Would it work to enable `invite only` and `login required` to put Discourse in the internet, but restrict who can see it? Or maybe use `must approve users` (perhaps with `auto approve email domains`) to only allow users in your organization to join?

I guess the question is what problem are you solving for?

---

<div class="post-metadata">

### Author: ![rayman](https://avatars.discourse-cdn.com/v4/letter/r/e495f1/32.png) [@rayman](https://meta.discourse.org/u/rayman)
#### Post date: [March 9, 2024, 7:26pm UTC](https://meta.discourse.org/t/local-installation-internal-use-only/298651/6 "2024-03-09T19:26:47Z")

</div>

Hi Jay,

Thank You for your response. I currently set it up on a redhat distro internally in my domain, only for internal use. Will try playing around with it. What exactly do you mean when you say it wont work with out https? so it’s only designed to work externally, to be accessed via the public internet only?  
can you please elaborate more on the reverse proxy guide? i dont’ understand what you are saying by join at guides.

Thank You

---

<div class="post-metadata">

### Author: ![rayman](https://avatars.discourse-cdn.com/v4/letter/r/e495f1/32.png) [@rayman](https://meta.discourse.org/u/rayman)
#### Post date: [March 9, 2024, 7:28pm UTC](https://meta.discourse.org/t/local-installation-internal-use-only/298651/7 "2024-03-09T19:28:51Z")

</div>

Hi Jon,

Currently we are just resting the product, we want to use it as an internal forum for our company.  
For Developers and IT to post and be able to interact with each other. We want it only internal, no public access.  
This is the solution they are set on. I can’t control that

---

<div class="post-metadata">

### Author: ![jericson](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jericson/32/116215_2.png) [@jericson](https://meta.discourse.org/u/jericson)
#### Post date: [March 9, 2024, 7:34pm UTC](https://meta.discourse.org/t/local-installation-internal-use-only/298651/8 "2024-03-09T19:34:00Z")

</div>

> [@rayman](#):
>
> We want it only internal, no public access.

I think the `must approve users` setting effectively meets that requirement. Many “internal” tools (Slack, Google Suite, Microsoft Office 360, GitHub Enterprise, etc.) are hosted on the internet, but restricted to just the users the customer admin approves.

If putting it on an internal network is an IT requirement, they should also be able to help set up the networking for DIscourse.

---

<div class="post-metadata">

### Author: ![rayman](https://avatars.discourse-cdn.com/v4/letter/r/e495f1/32.png) [@rayman](https://meta.discourse.org/u/rayman)
#### Post date: [March 9, 2024, 7:39pm UTC](https://meta.discourse.org/t/local-installation-internal-use-only/298651/9 "2024-03-09T19:39:00Z")

</div>

I understand, I’m asking what is the process for it to work for internal access only? There is no setup guide for it, and users are saying it doesn’t work well without https.

I’ actually just set up a local network in my lab and will test it, but from previous test it did not work internally. Will try try again.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [March 9, 2024, 7:51pm UTC](https://meta.discourse.org/t/local-installation-internal-use-only/298651/10 "2024-03-09T19:51:06Z")

</div>

> [@rayman](#):
>
> What exactly do you mean when you say it wont work with out https?

I mean that a bunch of the front end code assumes that you’re using https. I mean that the [standard install](https://meta.discourse.org/t/142537?silent=true) assumes that your site can get a certificate from let’s encrypt.

> [@rayman](#):
>
> please elaborate more on the reverse proxy guide

Here’s one. For this to work, you’ll need to set up apache with a valid certificate and then have it reverse proxy Discourse.

[Set up Discourse on a server with existing Apache sites](https://meta.discourse.org/t/set-up-discourse-on-a-server-with-existing-apache-sites/30013)

> [@rayman](#):
>
> There is no setup guide for it, and users are saying it doesn’t work well without https.

It’s not a supported setup. If being behind a firewall/NAT is a requirement, then having someone who knows how to set up an internal reverse proxy with a valid certificate and can follow one of the guides like the one linked above is the cost of that requirement.

> [@Jagster](#):
>
> You have IT guys there. They can build certificate because they are using webservers anyway on your intranet. The only issue is to get a certificate that is approved by browsers.

That’s a nicer way of saying what I said.

---

<div class="post-metadata">

### Author: ![Jagster](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jagster/32/192154_2.png) [@Jagster](https://meta.discourse.org/u/Jagster)
#### Post date: [March 9, 2024, 8:04pm UTC](https://meta.discourse.org/t/local-installation-internal-use-only/298651/11 "2024-03-09T20:04:52Z")

</div>

You have IT guys there. They can build certificate because they are using webservers anyway on your intranet. The only issue is to get a certificate that is approved by browsers.

---

<div class="post-metadata">

### Author: ![rayman](https://avatars.discourse-cdn.com/v4/letter/r/e495f1/32.png) [@rayman](https://meta.discourse.org/u/rayman)
#### Post date: [March 9, 2024, 8:21pm UTC](https://meta.discourse.org/t/local-installation-internal-use-only/298651/12 "2024-03-09T20:21:08Z")

</div>

> [@pfaffman](#):
>
> internal reverse proxy with a valid certificat

thanks I will give it a try, looks like an outdated guide but I will try to connect the pieces.  
Thanks for the help.
