zulip/puppet/zulip_ops/files
Alex Vandiver b982222e03 camo: Replace with go-camo implementation.
The upstream of the `camo` repository[1] has been unmaintained for
several years, and is now archived by the owner.  Additionally, it has
a number of limitations:
 - It is installed as a sysinit service, which does not run under
   Docker
 - It does not prevent access to internal IPs, like 127.0.0.1
 - It does not respect standard `HTTP_proxy` environment variables,
   making it unable to use Smokescreen to prevent the prior flaw
 - It occasionally just crashes, and thus must have a cron job to
   restart it.

Swap camo out for the drop-in replacement go-camo[2], which has the
same external API, requiring not changes to Django code, but is more
maintained.  Additionally, it resolves all of the above complaints.

go-camo is not configured to use Smokescreen as a proxy, because its
own private-IP filtering prevents using a proxy which lies within that
IP space.  It is also unclear if the addition of Smokescreen would
provide any additional protection over the existing IP address
restrictions in go-camo.

go-camo has a subset of the security headers that our nginx reverse
proxy sets, and which camo set; provide the missing headers with `-H`
to ensure that go-camo, if exposed from behind some other non-nginx
load-balancer, still provides the necessary security headers.

Fixes #18351 by moving to supervisor.
Fixes zulip/docker-zulip#298 also by moving to supervisor.

[1] https://github.com/atmos/camo
[2] https://github.com/cactus/go-camo
2021-11-19 15:58:26 -08:00
..
apache puppet: Move nagios to behind teleport. 2021-06-02 18:38:38 -07:00
apt/apt.conf.d puppet: Set APT::Periodic::Unattended-Upgrade in apt config. 2021-02-12 08:59:19 -08:00
builder
certs
cron.d camo: Replace with go-camo implementation. 2021-11-19 15:58:26 -08:00
grafana puppet: Add grafana server. 2021-06-08 22:21:00 -07:00
iptables puppet: Configure ip6tables in parallel to ipv4. 2021-08-24 16:05:46 -07:00
munin puppet: Configure munin and nagios under apache with puppet. 2020-07-13 13:23:11 -07:00
munin-plugins munin: Update to use NAGIOS_BOT_HOST. 2021-01-27 12:07:09 -08:00
nagios3 nagios: Remove broken check_email_deliverer_* checks and related code. 2021-08-03 16:07:13 -07:00
nagios_plugins/zulip_zephyr_mirror python: Normalize quotes with Black. 2021-02-12 13:11:19 -08:00
nginx/sites-available nginx: Consistently listen on IPv6 and with HTTP/2. 2021-03-17 17:46:32 -07:00
postgresql puppet: Add a database teleport server. 2021-06-08 22:21:21 -07:00
prometheus puppet: Add grafana server. 2021-06-08 22:21:00 -07:00
supervisor/conf.d puppet: Increase prometheus storage, from the default 15d. 2021-08-24 23:40:43 -07:00
common-session
dot_emacs.el cleanup: Delete leading newlines. 2019-08-06 23:29:11 -07:00
sshd_config
teleport_node.yaml puppet: Add a teleport application server. 2021-06-02 18:38:38 -07:00
teleport_server.yaml puppet: Add a teleport server. 2021-06-02 18:38:38 -07:00
zephyr-clients.debathena
zulip-ec2-configure-interfaces python: Normalize quotes with Black. 2021-02-12 13:11:19 -08:00
zulip-ec2-configure-interfaces_if-up.d.sh shfmt: Reformat shell scripts with shfmt. 2020-10-15 15:16:00 -07:00