Jak zainstalować przekaźnik Nostr w systemie Linux

Jak zainstalować przekaźnik Nostr w systemie Linux

Nostr to innowacyjny protokół, który tworzy zdecentralizowaną platformę mediów społecznościowych, która jest zarówno lekka, jak i elastyczna. Aby to zadziałało, sieć Nostr opiera się na prostych przekaźnikach węzłowych, które przesyłają zaszyfrowane wiadomości do zamierzonych odbiorców. Tutaj przeprowadzimy Cię przez proces tworzenia węzła Nostr Relay przy użyciu Nostream na Ubuntu. Pokażemy Ci również, jak połączyć się z nowym węzłem zarówno na klientach Gossip, jak i Amethyst.

Dlaczego warto używać Nostream?

Nostream to przekaźnik nostr, napisany maszynopisem. Główną zaletą korzystania z nostream jest to, że zapewnia kontrolę nad danymi w mediach społecznościowych. Podobnie jak w przypadku Pleromy , hostowanie własnego węzła przekaźnikowego Nostr oznacza, że ​​jesteś właścicielem swojej platformy i danych podczas transmisji ich w sieci.

Ponadto Nostream obsługuje instalację w pełni zdokowaną. Oznacza to, że można go łatwo wdrożyć na dowolnym istniejącym stosie serwerów.

Instalacja Nostreama

Uzyskiwanie Dockera i Docker Compose

Założenie: W tym artykule założono, że masz VPS z co najmniej 8 GB pamięci RAM oraz nazwę domeny z rekordem A i PTR wskazującym adres IP Twojego serwera. Zakłada również, że masz już konto Nostr z działającą parą kluczy.

Aby rozpocząć, pobierz klucz podpisujący dla repozytorium pakietów binarnych projektu Docker:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

Utwórz nowy plik repozytorium dla Dockera w pliku „/etc/apt/sources.list.d”:

sudo nano /etc/apt/sources.list.d/docker.list

Wklej następujący blok kodu do nowego pliku repozytorium i zapisz go:

deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable

Zaktualizuj i uaktualnij system Ubuntu, uruchamiając następujące polecenie:

sudo apt update && sudo apt upgrade

Zainstaluj plik binarny Docker wraz z wtyczką Docker Compose i zależnościami:

sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin nginx git nodejs npm

Na koniec dodaj bieżącego użytkownika do grupy systemu Docker:

sudo usermod -aG docker ramces

Pozyskiwanie i instalacja nostream

Pobierz repozytorium git dla nostream i wejdź do folderu repozytorium:

git clone https://github.com/Cameri/nostream.git && cd. /nostream

Uruchom skrypt startowy nostream, aby zbudować i wdrożyć demona serwera nostream jako kontener Docker w systemie:

./scripts/start

Poczekaj, aż kontener Docker nostream wydrukuje logo „nostream”, a następnie naciśnij Ctrl+ C.

Terminal pokazujący, że nostream działa pomyślnie po raz pierwszy.

Otwórz plik konfiguracyjny dla swojej instancji nostream, korzystając z ulubionego edytora tekstu:

nano. /.nostr/settings.yaml

Zastąp wartość zmiennych Relay_url: i name: nazwą domeny swojej instancji.

Terminal podświetlający adres nostream instancji.

Zastąp wartość zmiennej pubkey: kluczem publicznym głównego konta Nostr.

Terminal podświetlający klucz publiczny Nostr administratora instancji.

Zmień adres e-mail w kontakcie : zmienny na działający, którego aktualnie używasz.

Terminal podświetlający adres e-mail administratora instancji.

Otwórz plik „docker-compose.yml” swojej instancji:

nano. /docker-compose.yml

Przewiń do kategorii „środowisko:”, a następnie zamień wartość zmiennej środowiskowej „SECRET:” na losowy ciąg znaków.

Terminal podświetlający główny losowy sekret instancji.

Na koniec zrestartuj instancję nostream:

./scripts/start

Dostęp publiczny do Nostream

Aby móc uzyskać dostęp do nostream w Twojej nazwie domeny, musimy utworzyć odwrotne proxy Nginx , aby kierować ruch do instancji Docker.

Utwórz nowy plik konfiguracyjny witryny dla swojej instancji nostream:

sudo nano /etc/nginx/sites-available/nostream

Wklej następujący blok kodu do pliku konfiguracyjnego nowej witryny:

server {

server_name nostr.myvpsserver.top;


location / {
proxy_pass http://127.0.0.1:8008;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
}}

Utwórz dowiązanie symboliczne do pliku konfiguracyjnego nowej witryny w „/etc/nginx/sites-enabled/”:

sudo ln -s /etc/nginx/sites-available/nostream /etc/nginx/sites-enabled

Przetestuj ustawienia swojego Nginxa:

sudo nginx -t

Jeśli wszystko jest w porządku, zastosuj nowe ustawienia, ponownie uruchamiając demona serwera Nginx:

sudo systemctl restart nginx

Zabezpiecz Nostream certyfikatem SSL

Upewnij się, że na serwerze VPS działa podstawowy pakiet Snap:

sudo snap install core

Zainstaluj pakiet snap certbot z Electronic Frontier Foundation (EFF):

sudo snap install certbot --classic

Zarejestruj instalację certbota w EFF, uruchamiając następującą komendę:

sudo certbot register --agree-tos -m you@your-email.invalid

Poproś o nowy certyfikat SSL dla swojego zwrotnego proxy nostream:

sudo certbot --nginx -d nostr.myvpsserver.top

Sprawdź, czy Twój nowy przekaźnik nostream działa, otwierając przeglądarkę internetową i przechodząc do jej adresu internetowego.

Zrzut ekranu przedstawiający udaną instalację nostream.

Łączenie nostream z klientem Gossip Nostr

Aby połączyć swój nowy przekaźnik nostream z Gossip, kliknij kategorię „Przekaźniki” na lewym pasku bocznym programu.

Zrzut ekranu przedstawiający

Kliknij przycisk Dodaj przekaźnik w kategorii „Przekaźniki”.

Zrzut ekranu przedstawiający zawartość pliku

Spowoduje to wyświetlenie małego pola tekstowego, w którym możesz wpisać adres swojej instancji nostream. Podaj adres nowego przekaźnika wraz z nagłówkiem protokołu WebSocket „wss://”.

Zrzut ekranu pokazujący adres nowego przekaźnika nostream.

Kliknij „Sprawdź”, a następnie „Konfiguruj”, aby skonfigurować nowy przekaźnik.

Następnie Gossip załaduje stronę ustawień, na której możesz określić, jak Twój nowy przekaźnik będzie się zachowywał wobec Twojego klienta. Aby wysyłać i odbierać wiadomości ze swojej instancji, przełącz przełączniki „Odczyt” i „Zapis” na stronie ustawień.

Przełącz przełączniki „Skrzynka odbiorcza”, „Skrzynka nadawcza” i „Reklama”, aby komunikować się z innymi przekaźnikami.

Zrzut ekranu przedstawiający aktywne funkcje bieżącej instancji nostream.

Sprawdź, czy Twój przekaźnik działa prawidłowo, wysyłając nową notatkę Nostr.

Zrzut ekranu przedstawiający przykładową notatkę Nostr w Gossip.

Łączenie nostream z klientem Amethyst Nostr

Oprócz Gossip możesz także połączyć swoją nową instancję nostream z innymi klientami Nostr, takimi jak Amethyst. Aby to zrobić, kliknij ikonę użytkownika w lewym górnym rogu aplikacji.

Zrzut ekranu przedstawiający menu użytkownika w Amethyst.

Kliknij opcję „Przekaźniki” na wyskakującym pasku bocznym.

Zrzut ekranu przedstawiający

Wybierz pole tekstowe „Dodaj przekaźnik”, a następnie wpisz adres nowego przekaźnika bez nagłówka protokołu.

Zrzut ekranu przedstawiający monit dotyczący przekaźnika.

Kliknij „Dodaj”, aby zastosować nową instancję nostream do swojego klienta.

Sprawdź, czy Twoja nowa instancja prawidłowo przekazuje wiadomości, wysyłając przykładową notatkę Nostr.

Zrzut ekranu przedstawiający przykładową notatkę Nostr w Ametyst.

Hostowanie przekaźnika Nostr to tylko jeden ze sposobów odzyskania kontroli nad swoim cyfrowym życiem. Oprócz własnej platformy mediów społecznościowych możesz także obsługiwać platformę biurową w chmurze za pomocą ownCloud , a także hostować własną witrynę hostującą wideo za pośrednictwem Peertube .

Źródło zdjęcia: Paulina Chmolowska za pośrednictwem Unsplash . Wszystkie zmiany i zrzuty ekranu wykonał Ramces Red.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *