Mastodon/Setup: Difference between revisions

From neuromatch
No edit summary
No edit summary
Line 48: Line 48:
- [ ] Install & Enable systemd services
- [ ] Install & Enable systemd services
</markdown>
</markdown>
=== Variations ===
* Using Node.js 18.12.1 rather than 16 as per docs
<syntaxhighlight lang="bash">
curl -fsSL https://deb.nodesource.com/setup_18.x | bash - && \
apt-get install -y nodejs
</syntaxhighlight>


== Configuration ==
== Configuration ==

Revision as of 01:08, 26 November 2022

In this case we are using glitch-soc to run a Mastodon server.

We will make:

  • One "default" instance at neuromatch.social
  • One Dev Instance at dev.neuromatch.social

We will be following the official Mastodon setup docs (except cloning our fork of glitch-soc instead of the base masto repo):

Prereqs

https://docs.joinmastodon.org/admin/prerequisites/

See also: Linode/Setup

  • Turn off password SSH access
  • Install fail2ban
  • Configure iptables to only allow SSH and HTTP/HTTPS

DNS

Set up the domain name!

  • Add an A record pointing at the linode's IP Address
  • Set up rDNS pointing back at the domain

Installation

https://docs.joinmastodon.org/admin/install/

  • Add apt repositories
  • Install apt packages
  • Make mastodon user
  • Install Ruby
  • Configure postgresql
  • Configure nginx (config below)
  • Get SSL Cert
  • Install & Enable systemd services

Variations

  • Using Node.js 18.12.1 rather than 16 as per docs
curl -fsSL https://deb.nodesource.com/setup_18.x | bash - && \
apt-get install -y nodejs

Configuration

nginx

Configure the email server

Create a SendGrid account, go to Settings > API Keys, and generate an API key.

Then set up the config like this:

SMTP_SERVER=smtp.sendgrid.net
SMTP_PORT=587
SMTP_LOGIN=apikey
SMTP_PASSWORD=<your-api-key>
SMTP_FROM_ADDRESS=youremail@gmail.com

(for SMTP_LOGIN literally just use "apikey")