#+TITLE: #+AUTHOR: Bob Mottram #+EMAIL: bob@freedombone.net #+KEYWORDS: freedombone, debian, social, fediverse, instance, pleroma, gnusocial, postactiv #+DESCRIPTION: Social Instance #+OPTIONS: ^:nil toc:nil #+HTML_HEAD: #+attr_html: :width 80% :height 10% :align center [[file:images/logo.png]] * Social Instance A social instance image allows you to easily set up a fediverse server, which federates using the OStatus or ActivityPub protocol. You will need: * An old laptop, capable of booting from USB * A USB drive, preferably Sandisk and 16GB or larger * An ethernet patch cable * A domain name of your own * A dynamic DNS account * Ability to alter settings on your internet router The installation process is the same as usual, with the only difference being that on initial setup it will go straight to the domain setup details for your instance. In summary: * Copy the image to the USB drive Substitute *sdX* with the device name for your USB drive. #+begin_src bash sudo apt-get install xz-utils nodejs npm install -g dat dat clone dat://231b24dbeef3c3f7b115b9c7cd02e416b382df0a1050ef66f94b988fc8dae92e/ cd 231b24dbeef3c3f7b115b9c7cd02e416b382df0a1050ef66f94b988fc8dae92e gpg --verify freedombone-pleroma-amd64.img.xz.sig unxz freedombone-pleroma-amd64.img.xz sudo dd if=/dev/zero of=/dev/sdX bs=32M count=8 sudo dd bs=32M if=freedombone-pleroma-amd64.img of=/dev/sdX conv=fdatasync,sync,noerror #+end_src Also note that if the laptop has a removable SSD drive it's possible to copy the image directly to that if you have enough equipment. * Connect the laptop to your internet router Plug the USB drive into the laptop and connect it to your internet router with the ethernet cable. #+attr_html: :width 100% :align center [[file:images/laptop_router.jpg]] * Boot the laptop from the USB drive You may need to alter the BIOS settings to get this to work reliably. #+attr_html: :width 100% :align center [[file:images/bios_boot_usb.jpg]] * Forward ports 80 (HTTP) and 443 (HTTPS) from your internet router to the laptop Log into your internet router using a non-Tor browser (usually it's on an address like 192.168.1.1 or 192.168.1.254). Often port forwarding settings are together with firewall settings. #+attr_html: :width 100% :align center [[file:images/port_forwarding.png]] * From another machine ssh into the laptop #+begin_src bash ssh fbone@freedombone.local -p 2222 #+END_SRC Or alternatively you can log in directly on the laptop. The initial username is *fbone* and the password is *freedombone*. You should make sure you write down or copy the new password when it is shown. * Follow the setup procedure Enter your user details, domain name and dynamic DNS settings. * When installation is complete Navigate to your domain and register a new user. #+attr_html: :width 100% :align center [[file:images/pleroma_register.jpg]] More details about setting up and using Pleroma [[./app_pleroma.html][can be found here]]. #+attr_html: :width 50% :align center [[file:images/tusky.jpg]]