Ricerca nel sito web

Come installare i social media decentralizzati della diaspora su Debian 10


Su questa pagina

  1. Passaggio 1 - Installa le dipendenze dei pacchetti
  2. Passaggio 2 - Crea un nuovo utente PostgreSQL per Diaspora
  3. Passaggio 3 - Crea un nuovo utente
  4. Passaggio 4 - Installa RVM e Ruby
  5. Passaggio 5 - Scarica e configura Diaspora
  6. Passaggio 6 - Imposta Diaspora come servizio
  7. Passaggio 7 - Genera SSL Letsencrypt
  8. Passaggio 8 - Crea un nuovo utente e scarica Diaspora
  9. Passaggio 9 - Test

Diaspora è un social network open source, attento alla privacy e distribuito. Consiste in un gruppo di nodi distribuiti e di proprietà indipendenti che interagiscono per creare la rete. Diaspora è un social network incentrato su tre filosofie, decentralizzazione, libertà e privacy.

In questo tutorial, ti mostreremo come installare il social network distribuito Diaspora su Debian Buster 10. Installeremo Diaspora con il server web Nginx e il server database PostgreSQL. Inoltre, proteggeremo l'installazione di Diaspora utilizzando SSL Letsencrypt.

Prerequisiti

  • Debian Buster 10
  • Minimo 2 GB di RAM
  • Privilegi di root

Che cosa faremo?

  • Installa le dipendenze dei pacchetti
  • Crea nuovo utente PostgreSQL per Diaspora
  • Crea nuovo utente
  • Installa Ruby con RVM (Ruby Version Manager)
  • Installa e configura il social network decentralizzato della diaspora
  • Imposta Diaspora come servizio Systemd
  • Imposta Nginx come proxy inverso per la diaspora
  • Prova

Passaggio 1: installazione delle dipendenze dei pacchetti

Innanzitutto, installeremo alcune dipendenze dei pacchetti per la nostra installazione di Diaspora, inclusi il server Web PostgreSQL, Redis e Nginx.

Installa le dipendenze dei pacchetti usando il comando apt di seguito.

sudo apt-get install build-essential cmake gnupg2 libssl-dev libcurl4-openssl-dev libxml2-dev libxslt-dev imagemagick ghostscript curl libmagickwand-dev git libpq-dev redis-server nodejs postgresql

Una volta completata l'installazione, avvia i servizi PostgreSQL, Nginx e Redis, quindi aggiungi tutto all'avvio del sistema.

systemctl start redis-server
systemctl enable redis-server

systemctl start postgresql
systemctl enable postgresql

Di conseguenza, alcune dipendenze dei pacchetti per l'installazione di Diaspora sono state installate su Debian Buster 10.

Passaggio 2: creazione di un nuovo utente PostgreSQL per Diaspora

In questo passaggio, cambieremo la password per l'utente postgres predefinito e creeremo un nuovo utente PostgreSQL per Diaspora.

Accedi alla shell PostgreSQL utilizzando il comando psql di seguito.

sudo -i -u postgres psql

Modificare la password per l'utente predefinito postgres utilizzando la query seguente.

\password postgres

Ora digita la tua nuova password e ripeti, e la password per l'utente predefinito postgres è stata configurata.

Successivamente, crea un nuovo utente diaspora con il privilegio CREATEDB per la creazione di un database utilizzando la query PostgreSQL riportata di seguito.

CREATE USER diaspora WITH CREATEDB PASSWORD 'yourpassword';

Digita EXIT per uscire dalla shell PostgreSQL.

Di conseguenza, è stato creato il nuovo utente PostgreSQL per Diaspora.

Passaggio 3: crea un nuovo utente

Dopo aver creato l'utente del database PostgreSQL, creeremo un nuovo utente di sistema denominato diaspora e lo aggiungeremo al gruppo sudo.

Crea un nuovo utente chiamato diaspora e imposta la password utilizzando il seguente comando.

adduser --disabled-login Diaspora
passwd diaspora

Ora aggiungi l'utente diaspora al gruppo sudo.

usermod -a -G sudo diaspora

Di conseguenza, l'utente della diaspora sarà in grado di eseguire il comando sudo per ottenere i privilegi di root.

Passo 4 - Installa RVM e Ruby

Prima di proseguire, accedi all'utente diaspora utilizzando il comando seguente.

su - diaspora

Successivamente, installeremo RVM (Ruby Version Manager) e installeremo Ruby 2.6 per la diaspora degli utenti.

Aggiungi la chiave GPGP per i pacchetti RVM utilizzando il comando seguente.

gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

Ora installa RVM (Ruby Version Manager) usando il seguente comando.

curl -sSL https://get.rvm.io | bash -s stable

Digita la tua password per l'utente diaspora e premi Invio.

Una volta completata l'installazione, carica lo script rvm sul tuo server.

source /home/diaspora/.rvm/scripts/rvm

Di conseguenza, puoi eseguire il comando rvm per installare Ruby.

Installa Ruby 2.6 usando il comando rvm qui sotto.

rvm install 2.6

Una volta completata l'installazione, controlla la tua versione di Ruby.

ruby -v

Di seguito il risultato che otterrai.

Di conseguenza, l'installazione di RVM e Ruby sotto l'utente diaspora è stata completata.

Passaggio 5: scarica e configura Diaspora

Prima di proseguire, assicurati di aver effettuato l'accesso con l'utente diaspora.

Scarica il codice sorgente di Diaspora usando il comando git ed entraci.

git clone -b master https://github.com/diaspora/diaspora.git
cd diaspora

Ora copia l'esempio della configurazione del database database.yml e la configurazione della diaspora diaspora.yml.

cp config/database.yml.example config/database.yml
cp config/diaspora.yml.example config/diaspora.yml

Successivamente, modifica la configurazione del database database.yml utilizzando l'editor vim.

vim config/database.yml

Nella sezione del database PostgreSQL, modifica il nome utente e la password dettagliati con i tuoi dati.

postgresql: &postgresql
  adapter: postgresql
  host: "localhost"
  port: 5432
  username: "diaspora"
  password: "yourpassword"
  encoding: unicode

Salva e chiudi.

Successivamente, modifica la configurazione diaspora diaspora.yml.

vim config/diaspora.yml

Modifica la configurazione come di seguito e assicurati che il nome di dominio sia il tuo.

configuration: ## Section
...
  environment: ## Section
...
    url: "https://pod.hakase-labs.to/"
    certificate_authorities: '/etc/ssl/certs/ca-certificates.crt'
    require_ssl: true
...
  server: ## Section
    rails_environment: 'production'
...

Salva e chiudi.

Successivamente, installa le librerie gem e ruby necessarie per Diaspora utilizzando i seguenti comandi.

gem install bundler
script/configure_bundler
bin/bundle install --full-index

Successivamente, esegui la migrazione del database per Diaspora.

RAILS_ENV=production bundle exec rake db:create db:migrate

Una volta che tutto è stato completato, compila tutta la pipeline di risorse di Rails utilizzando il seguente comando.

RAILS_ENV=production bin/rake assets:precompile

E l'installazione di Diaspora è stata completata.

Passaggio 6: configurare Diaspora come servizio

Dopo aver installato Diaspora, configureremo Diaspora come servizio di sistema.

Ora vai alla directory /etc/systemd/system e crea un nuovo file di servizio delle unità di raggruppamento diaspora.target usando l'editor vim.

cd /etc/systemd/system/
vim diaspora.target

Incolla la seguente configurazione al suo interno.

[Unit]
Description=Diaspora social network
Wants=postgresql.service
Wants=redis-server.service
After=redis-server.service
After=postgresql.service

[Install]
WantedBy=multi-user.target

Salva e chiudi.

Successivamente, crea un nuovo file di servizio per la diaspora denominato diaspora-web.service utilizzando l'editor vim.

vim diaspora-web.service

Incolla la seguente configurazione al suo interno.

[Unit]
Description=Diaspora social network (unicorn)
PartOf=diaspora.target
StopWhenUnneeded=true

[Service]
User=diaspora
Environment=RAILS_ENV=production
WorkingDirectory=/home/diaspora/diaspora
ExecStart=/bin/bash -lc "bin/bundle exec unicorn -c config/unicorn.rb -E production"
Restart=always

[Install]
WantedBy=diaspora.target

Salva e chiudi.

Successivamente, crea un nuovo file di servizio diaspora-sidekiq.service per il servizio di monitoraggio utilizzando il comando vim di seguito.

vim diaspora-sidekiq.service

Incolla la seguente configurazione.

[Unit]
Description=Diaspora social network (sidekiq)
PartOf=diaspora.target
StopWhenUnneeded=true

[Service]
User=diaspora
Environment=RAILS_ENV=production
WorkingDirectory=/home/diaspora/diaspora
ExecStart=/bin/bash -lc "bin/bundle exec sidekiq"
Restart=always

[Install]
WantedBy=diaspora.target

Salva e chiudi.

Ora ricarica il gestore systemd e aggiungi tutti i servizi diaspora all'avvio del sistema.

sudo systemctl daemon-reload
sudo systemctl enable diaspora.target diaspora-sidekiq.service diaspora-web.service

Quindi avviare il servizio Diaspora utilizzando il comando seguente.

systemctl start diaspora.target

Diaspora.target avvierà automaticamente altri servizi diaspora-web.service e diaspora-sidekiq.service.

Controlla i servizi diaspora usando il seguente comando.

systemctl status diaspora-web
systemctl status diaspora-sidekiq

Di seguito il risultato che otterrai.

Di conseguenza, Diaspora è ora attivo e funzionante come servizio di sistema. E finalmente la configurazione della Diaspora è stata completata.

Passo 7 - Genera SSL Letsencrypt

Per questo tutorial, proteggeremo la nostra installazione di Diaspora utilizzando SSL Letsencrypt. in questo passaggio, installeremo lo strumento certbot e genereremo SSL Letsencrypt per l'installazione del nostro dominio Diaspora.

Installa Certbot utilizzando il comando apt di seguito.

sudo apt install certbot

Una volta completata tutta l'installazione, genera SSL Letsencrypt per il tuo nome di dominio Diaspora utilizzando il comando certbot di seguito.

certbot certonly --rsa-key-size 2048 --standalone --agree-tos --no-eff-email --email  -d pod.hakase-labs.to

Ora il tuo certificato sarà disponibile nella directory /etc/letsencrypt/live/yourdomain.com/.

Passaggio 8: crea un nuovo utente e scarica Diaspora

In questo passaggio, installeremo e configureremo il server Web Nginx come proxy inverso per Diaspora.

Installa Nginx usando il comando apt di seguito.

sudo apt install nginx

Una volta completata l'installazione, vai alla directory /etc/nginx/sites-available e crea una nuova diaspora di configurazione dell'host virtuale utilizzando l'editor vim.

cd /etc/nginx/sites-available/
vim diaspora

Cambia il nome di dominio e il percorso di SSL Letsencrypt con il tuo, quindi incollalo.

upstream diaspora_server {
 server unix:/home/diaspora/diaspora/tmp/diaspora.sock;
}

server {
  listen 80;
  listen [::]:80;
  server_name pod.hakase-labs.to;
  return 301 https://pod.hakase-labs.to$request_uri;

  access_log /dev/null;
  error_log /dev/null;
}

server {
  listen 443 ssl http2;
  listen [::]:443 ssl http2;
  server_name pod.hakase-labs.to;

  access_log /var/log/nginx/dspr-access.log;
  error_log /var/log/nginx/dspr-error.log;

  ssl_certificate /etc/letsencrypt/live/pod.hakase-labs.to/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/live/pod.hakase-labs.to/privkey.pem;

  ssl_protocols TLSv1.2;
  ssl_ciphers EECDH+CHACHA20:EECDH+AESGCM:EECDH+AES;
  ssl_ecdh_curve X25519:P-521:P-384:P-256;
  ssl_prefer_server_ciphers on;
  ssl_session_cache shared:SSL:10m;

  root /home/diaspora/diaspora/public;

  client_max_body_size 5M;
  client_body_buffer_size 256K;

  try_files $uri @diaspora;

  location /assets/ {
    expires max;
    add_header Cache-Control public;
  }

  location @diaspora {
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto https;
    proxy_set_header Host $http_host;
    proxy_redirect off;
    proxy_pass http://diaspora_server;
  }
}

Salva e chiudi.

Ora attiva la configurazione Diaspora e testa la configurazione Nginx.

ln -s /etc/nginx/sites-available/diaspora /etc/nginx/sites-enabled/
nginx -t

Assicurati che non ci siano errori, quindi riavvia il servizio Nginx e aggiungilo all'avvio del sistema.

systemctl restart nginx
systemctl enable nginx

Di conseguenza, la configurazione dei server Web Nginx come proxy inverso per Diaspora è stata completata.

Passaggio 9: test

Apri il tuo browser web e digita il tuo nome di dominio Diaspora nella barra degli indirizzi.

E otterrai la home page predefinita di Diaspora come di seguito.

Fare clic sul collegamento nella sezione Crea un account.

Ora digita il tuo indirizzo email, nome utente e password per il primo account Diaspora, quindi fai clic su Crea account.

Carica la tua immagine del profilo ecc., quindi fai clic su Fantastico! Portami al pulsante della diaspora.

E otterrai la dashboard di Diaspora come di seguito.

Come si può vedere, l'installazione di Diaspora con Nginx Reverse Proxy su Debian Buster 10 è stata completata con successo.