2023-01-17 04:53:46 +01:00
|
|
|
|
# Server configuration
|
2016-07-12 22:43:00 +02:00
|
|
|
|
|
2020-08-11 01:47:54 +02:00
|
|
|
|
Once you've got Zulip set up, you'll likely want to configure it the
|
2017-07-28 03:51:22 +02:00
|
|
|
|
way you like.
|
|
|
|
|
|
|
|
|
|
## Making changes
|
|
|
|
|
|
|
|
|
|
Most configuration can be done by a realm administrator, on the web.
|
|
|
|
|
For those settings, see [the documentation for realm
|
|
|
|
|
administrators][realm-admin-docs].
|
2017-06-08 22:28:51 +02:00
|
|
|
|
|
2020-06-08 23:04:39 +02:00
|
|
|
|
[realm-admin-docs]: https://zulip.com/help/getting-your-organization-started-with-zulip
|
2017-05-16 22:28:15 +02:00
|
|
|
|
|
2017-07-28 03:51:22 +02:00
|
|
|
|
This page discusses additional configuration that a system
|
2021-08-20 21:53:28 +02:00
|
|
|
|
administrator can do. To change any of the following settings, edit
|
2017-07-28 03:51:22 +02:00
|
|
|
|
the `/etc/zulip/settings.py` file on your Zulip server, and then
|
|
|
|
|
restart the server with the following command:
|
2021-08-20 22:54:08 +02:00
|
|
|
|
|
2021-08-20 07:09:04 +02:00
|
|
|
|
```bash
|
2018-11-30 21:08:25 +01:00
|
|
|
|
su zulip -c '/home/zulip/deployments/current/scripts/restart-server'
|
2017-07-28 03:51:22 +02:00
|
|
|
|
```
|
|
|
|
|
|
2021-04-22 00:04:09 +02:00
|
|
|
|
Zulip has dozens of settings documented in the comments in
|
|
|
|
|
`/etc/zulip/settings.py`; you can review [the latest version of the
|
|
|
|
|
settings.py template][settings-py-template], and if you've upgraded
|
2022-01-20 14:02:17 +01:00
|
|
|
|
from an old version of Zulip, we recommend [carefully updating your
|
2021-04-22 00:04:09 +02:00
|
|
|
|
`/etc/zulip/settings.py`][update-settings-docs] to fold in the inline
|
|
|
|
|
comment documentation for new configuration settings after upgrading
|
|
|
|
|
to each new major release.
|
|
|
|
|
|
2023-01-17 04:33:42 +01:00
|
|
|
|
[update-settings-docs]: upgrade.md#updating-settingspy-inline-documentation
|
2021-09-01 00:15:31 +02:00
|
|
|
|
[settings-py-template]: https://github.com/zulip/zulip/blob/main/zproject/prod_settings_template.py
|
2021-04-22 00:04:09 +02:00
|
|
|
|
|
2023-01-17 04:53:46 +01:00
|
|
|
|
Since Zulip’s settings file is a Python script, there are a number of
|
|
|
|
|
other things that one can configure that are documented in
|
|
|
|
|
[System and deployment configuration](deployment.md#system-and-deployment-configuration).
|
|
|
|
|
Otherwise, ask in [the Zulip development community](https://zulip.com/development-community/)
|
|
|
|
|
if there’s something you’d like to do but can’t figure out how to.
|
2021-04-22 00:04:09 +02:00
|
|
|
|
|
2017-07-28 03:51:22 +02:00
|
|
|
|
## Specific settings
|
2017-06-09 05:59:07 +02:00
|
|
|
|
|
2020-08-11 01:47:54 +02:00
|
|
|
|
### Domain and email settings
|
2017-10-28 02:46:31 +02:00
|
|
|
|
|
|
|
|
|
`EXTERNAL_HOST`: the user-accessible domain name for your Zulip
|
|
|
|
|
installation (i.e., what users will type in their web browser). This
|
|
|
|
|
should of course match the DNS name you configured to point to your
|
2021-08-20 21:53:28 +02:00
|
|
|
|
server and for which you configured SSL certificates. If you passed
|
2017-10-28 02:46:31 +02:00
|
|
|
|
`--hostname` to the installer, this will be prefilled with that value.
|
2017-06-09 05:59:07 +02:00
|
|
|
|
|
2017-10-28 02:46:31 +02:00
|
|
|
|
`ZULIP_ADMINISTRATOR`: the email address of the person or team
|
|
|
|
|
maintaining this installation and who will get support and error
|
2021-08-20 21:53:28 +02:00
|
|
|
|
emails. If you passed `--email` to the installer, this will be
|
2017-10-28 02:46:31 +02:00
|
|
|
|
prefilled with that value.
|
|
|
|
|
|
2020-08-11 01:47:54 +02:00
|
|
|
|
### Authentication backends
|
2017-06-09 05:59:07 +02:00
|
|
|
|
|
2017-10-28 02:46:31 +02:00
|
|
|
|
`AUTHENTICATION_BACKENDS`: Zulip supports a wide range of popular
|
|
|
|
|
options for authenticating users to your server, including Google
|
2020-10-23 02:43:28 +02:00
|
|
|
|
auth, GitHub auth, LDAP, SAML, REMOTE_USER, and more.
|
2017-10-28 02:46:31 +02:00
|
|
|
|
|
|
|
|
|
If you want an additional or different authentication backend, you
|
|
|
|
|
will need to uncomment one or more and then do any additional
|
|
|
|
|
configuration required for that backend as documented in the
|
|
|
|
|
`settings.py` file. See the
|
2022-02-24 00:17:21 +01:00
|
|
|
|
[section on authentication](authentication-methods.md) for more
|
2017-10-28 02:46:31 +02:00
|
|
|
|
detail on the available authentication backends and how to configure
|
|
|
|
|
them.
|
2017-06-09 05:59:07 +02:00
|
|
|
|
|
2017-07-28 03:51:22 +02:00
|
|
|
|
### Mobile and desktop apps
|
2017-05-16 22:28:15 +02:00
|
|
|
|
|
2020-12-02 17:43:07 +01:00
|
|
|
|
The Zulip apps expect to be talking to servers with a properly
|
2017-05-16 22:28:15 +02:00
|
|
|
|
signed SSL certificate, in most cases and will not accept a
|
2021-08-20 21:53:28 +02:00
|
|
|
|
self-signed certificate. You should get a proper SSL certificate
|
2017-05-16 22:28:15 +02:00
|
|
|
|
before testing the apps.
|
|
|
|
|
|
|
|
|
|
Because of how Google and Apple have architected the security model of
|
|
|
|
|
their push notification protocols, the Zulip mobile apps for
|
|
|
|
|
[iOS](https://itunes.apple.com/us/app/zulip/id1203036395) and
|
2017-10-28 21:49:12 +02:00
|
|
|
|
[Android](https://play.google.com/store/apps/details?id=com.zulipmobile)
|
2021-08-20 21:53:28 +02:00
|
|
|
|
can only receive push notifications from a single Zulip server. We
|
2017-05-16 22:28:15 +02:00
|
|
|
|
have configured that server to be `push.zulipchat.com`, and offer a
|
2019-09-30 19:37:56 +02:00
|
|
|
|
[push notification forwarding service](mobile-push-notifications.md) that
|
2017-05-16 22:28:15 +02:00
|
|
|
|
forwards push notifications through our servers to mobile devices.
|
|
|
|
|
Read the linked documentation for instructions on how to register for
|
|
|
|
|
and configure this service.
|
|
|
|
|
|
2017-09-05 10:14:02 +02:00
|
|
|
|
### Terms of Service and Privacy policy
|
2017-04-10 12:55:43 +02:00
|
|
|
|
|
|
|
|
|
Zulip allows you to configure your server's Terms of Service and
|
2021-11-03 21:36:54 +01:00
|
|
|
|
Privacy Policy pages (`/terms` and `/privacy`, respectively).
|
|
|
|
|
|
|
|
|
|
You can configure this using the `POLICIES_DIRECTORY` setting. We
|
|
|
|
|
recommend using `/etc/zulip/policies`, so that your policies are
|
|
|
|
|
naturally backed up with the server's other configuration. Just place
|
|
|
|
|
Markdown files named `terms.md` and `privacy.md` in that directory,
|
|
|
|
|
and set `TERMS_OF_SERVICE_VERSION` to `1.0` to enable this feature.
|
|
|
|
|
|
|
|
|
|
You can place additional files in this directory to document
|
|
|
|
|
additional policies; if you do so, you may want to:
|
|
|
|
|
|
|
|
|
|
- Create a Markdown file `sidebar_index.md` listing the pages in your
|
|
|
|
|
policies site; this generates the policies site navigation.
|
|
|
|
|
- Create a Markdown file `missing.md` with custom content for 404s in
|
|
|
|
|
this directory.
|
|
|
|
|
|
|
|
|
|
Please make clear in these pages what organization is hosting your
|
|
|
|
|
Zulip server, so that nobody could be confused that your policies are
|
|
|
|
|
the policies for Zulip Cloud.
|
2017-04-10 12:55:43 +02:00
|
|
|
|
|
2017-07-28 03:51:22 +02:00
|
|
|
|
### Miscellaneous server settings
|
2016-08-09 23:31:22 +02:00
|
|
|
|
|
2017-08-16 02:16:29 +02:00
|
|
|
|
Some popular settings in `/etc/zulip/settings.py` include:
|
2021-08-20 22:54:08 +02:00
|
|
|
|
|
2021-08-20 21:45:39 +02:00
|
|
|
|
- The Twitter integration, which provides pretty inline previews of
|
2017-08-16 02:16:29 +02:00
|
|
|
|
tweets.
|
2022-02-24 00:17:21 +01:00
|
|
|
|
- The [email gateway](email-gateway.md), which lets
|
2019-07-05 17:33:48 +02:00
|
|
|
|
users send emails into Zulip.
|
2022-02-24 00:17:21 +01:00
|
|
|
|
- The [Video call integrations](video-calls.md).
|
2017-08-16 02:16:29 +02:00
|
|
|
|
|
2017-05-16 22:28:15 +02:00
|
|
|
|
## Zulip announcement list
|
2016-08-09 23:31:22 +02:00
|
|
|
|
|
2022-01-20 00:34:24 +01:00
|
|
|
|
Subscribe to the [Zulip announcements email
|
|
|
|
|
list](https://groups.google.com/g/zulip-announce) for server administrators, if
|
|
|
|
|
you have not done so already. This extremely low-traffic list is for important
|
|
|
|
|
announcements, including [new releases](../overview/release-lifecycle.md) and
|
|
|
|
|
security issues.
|
2016-07-12 22:43:00 +02:00
|
|
|
|
|
2017-02-03 21:56:33 +01:00
|
|
|
|
## Enjoy your Zulip installation!
|
2016-08-09 23:31:22 +02:00
|
|
|
|
|
2017-02-03 21:56:33 +01:00
|
|
|
|
If you discover things that you wish had been documented, please
|
|
|
|
|
contribute documentation suggestions either via a GitHub issue or pull
|
|
|
|
|
request; we love even small contributions, and we'd love to make the
|
|
|
|
|
Zulip documentation cover everything anyone might want to know about
|
|
|
|
|
running Zulip in production.
|
2016-07-12 22:43:00 +02:00
|
|
|
|
|
2022-02-24 00:17:21 +01:00
|
|
|
|
Next: [Backups, export and import](export-and-import.md) and
|
2023-01-17 04:33:42 +01:00
|
|
|
|
[upgrading](upgrade.md) Zulip in production.
|