Como instalar um relé Nostr no Linux
Nostr é um protocolo inovador que cria uma plataforma de mídia social descentralizada, leve e flexível. Para fazer isso funcionar, a rede Nostr depende de retransmissões de nós simples para transportar mensagens criptografadas aos destinatários pretendidos. Aqui, orientamos você no processo de criação de um nó Nostr Relay usando Nostream no Ubuntu. Também mostramos como se conectar ao seu novo nó nos clientes Gossip e Amethyst.
Por que usar o Nostream?
Nostream é um relé nostr, escrito em Typescript. A principal vantagem de usar o nostream é que ele lhe dá controle sobre seus dados de mídia social. Semelhante ao Pleroma , hospedar seu próprio nó de retransmissão Nostr significa que você possui sua plataforma e dados à medida que os transmite pela rede.
Além disso, o Nostream oferece suporte a uma instalação totalmente Dockerizada. Isso significa que você pode implantá-lo facilmente em qualquer pilha de servidores existente.
Instalando o Nostream
Obtendo Docker e Docker Compose
Suposição: Este artigo pressupõe que você tenha um VPS com pelo menos 8 GB de RAM, bem como um nome de domínio com registro A e PTR apontando para o endereço IP do seu servidor. Também pressupõe que você já tenha uma conta Nostr com um par de chaves funcionando.
Para começar, busque a chave de assinatura do repositório de pacotes binários do projeto 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
Crie um novo arquivo de repositório para Docker dentro de “/etc/apt/sources.list.d”:
sudo nano /etc/apt/sources.list.d/docker.list
Cole o seguinte bloco de código dentro do seu novo arquivo de repositório e salve-o:
deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable
Atualize e atualize seu sistema Ubuntu executando o seguinte comando:
sudo apt update && sudo apt upgrade
Instale o binário do Docker junto com seu plugin Docker Compose e dependências:
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin nginx git nodejs npm
Por último, adicione seu usuário atual ao grupo de sistemas Docker:
sudo usermod -aG docker ramces
Obtendo e instalando nostream
Busque o repositório git para nostream e entre na pasta do repositório:
git clone https://github.com/Cameri/nostream.git && cd. /nostream
Execute o script de inicialização nostream para construir e implantar o daemon do servidor nostream como um contêiner Docker em seu sistema:
./scripts/start
Espere até que o contêiner nostream Docker imprima o logotipo “nostream” e pressione Ctrl+ C.
Abra o arquivo de configuração da sua instância nostream usando seu editor de texto favorito:
nano. /.nostr/settings.yaml
Substitua o valor da variável relay_url: and name: pelo nome de domínio da sua instância.
Substitua o valor da variável pubkey: pela chave pública de sua conta Nostr primária.
Altere o endereço de e-mail na variável contact: por um endereço funcional que você está usando atualmente.
Abra o arquivo “docker-compose.yml” da sua instância:
nano. /docker-compose.yml
Role até a categoria “ambiente:” e substitua o valor da variável de ambiente “SECRET:” por uma sequência aleatória de caracteres.
Por último, reinicie sua instância nostream:
./scripts/start
Acessando o Nostream publicamente
Para poder acessar nostream em seu nome de domínio, precisamos criar um proxy reverso Nginx para rotear o tráfego para a instância do Docker.
Crie um novo arquivo de configuração de site para sua instância nostream:
sudo nano /etc/nginx/sites-available/nostream
Cole o seguinte bloco de código dentro do novo arquivo de configuração do site:
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;
}}
Crie um link simbólico para o seu novo arquivo de configuração do site dentro de “/etc/nginx/sites-enabled/”:
sudo ln -s /etc/nginx/sites-available/nostream /etc/nginx/sites-enabled
Teste as configurações do seu Nginx:
sudo nginx -t
Se tudo estiver bem, aplique as novas configurações reiniciando o daemon do servidor Nginx:
sudo systemctl restart nginx
Nostream seguro com certificado SSL
Certifique-se de que o pacote snap principal esteja sendo executado em seu VPS:
sudo snap install core
Instale o pacote snap certbot da Electronic Frontier Foundation (EFF):
sudo snap install certbot --classic
Registre a instalação do seu certbot no EFF executando o seguinte comando:
sudo certbot register --agree-tos -m you@your-email.invalid
Solicite um novo certificado SSL para seu proxy reverso nostream:
sudo certbot --nginx -d nostr.myvpsserver.top
Teste se o seu novo relé nostream está funcionando abrindo um navegador da web e navegando até seu endereço da web.
Vinculando nostream ao cliente Gossip Nostr
Para vincular seu novo relé nostream ao Gossip, clique na categoria “Relés” na barra lateral esquerda do programa.
Clique no botão Adicionar Relé na categoria “Relés”.
Isso abrirá uma pequena caixa de texto onde você pode escrever o endereço da sua instância nostream. Forneça o endereço do seu novo relé junto com o cabeçalho do protocolo WebSocket “wss://”.
Clique em “Verificar”, seguido de “Configurar” para configurar seu novo relé.
O Gossip irá então carregar uma página de configurações onde você pode determinar como seu novo relé se comportará com seu cliente. Para enviar e receber mensagens da sua instância, alterne as opções “Ler” e “Escrever” na página de configurações.
Alterne as opções “Caixa de entrada”, “Caixa de saída” e “Anunciar” para se comunicar com outros relés.
Teste se o seu relé está funcionando corretamente enviando uma nova nota Nostr.
Vinculando nostream ao cliente Amethyst Nostr
Além do Gossip, você também pode vincular sua nova instância nostream a outros clientes Nostr, como Amethyst. Para fazer isso, clique no ícone do usuário no canto superior esquerdo do aplicativo.
Clique na opção “Relés” na barra lateral pop-up.
Selecione a caixa de texto “Adicionar um Relé” e digite o endereço do seu novo relé sem o cabeçalho do protocolo.
Clique em “Adicionar” para aplicar sua nova instância nostream ao seu cliente.
Teste se sua nova instância está retransmitindo mensagens corretamente enviando um exemplo de nota Nostr.
Hospedar uma retransmissão Nostr é apenas uma maneira de retomar o controle de sua vida digital. Além de sua própria plataforma de mídia social, você também pode servir uma plataforma de escritório em nuvem usando ownCloud , bem como hospedar seu próprio site de hospedagem de vídeo através do Peertube .
Crédito da imagem: Paulina Chmolowska via Unsplash . Todas as alterações e capturas de tela de Ramces Red.
Deixe um comentário