Configure sua própria rede privada com o OpenVPN
O Vultr oferece uma incrível conectividade de rede privada para servidores executando no mesmo local. Mas às vezes você quer dois servidores em países diferentes
O IRC é popular entre desenvolvedores e usuários de software de código aberto. Uma das desvantagens do IRC é que, quando você não está on-line, pode perder conversas importantes ou menções ao seu apelido. Com o Quassel e um pequeno VPS, você pode ter persistência no IRC, completa com uma interface da Web baseada na Web e um backlog pesquisável.
Vou assumir que você já sabe como criar um VPS no painel de controle do Vultr.
Primeiro, você precisará fazer login no painel de controle do Vultr e criar um VPS totalmente novo. Neste exemplo, eu configurei um VPS Debian 9, US $ 2,50 / mês. Você pode escolher qualquer tamanho, mas o objetivo é o menor custo possível. Você precisará dar um nome a ele, como quassel.example.net
e certificar-se de ter um registro DNS A configurado.
Como essas instruções estão focadas no Debian, você terá que modificá-las um pouco, se planeja usar uma distribuição Linux diferente, como Ubuntu ou CentOS.
Depois que o seu VPS estiver em execução, você precisará instalar alguns pacotes para fazer o básico.
Você precisará instalar o Quassel-Core, PostgreSQL, Apache e PHP, juntamente com mais algumas bibliotecas para conversar com o servidor SQL.
apt-get install quassel-core postgresql libqt5sql5-psql apache2 php php-pgsql
Você também precisará do Node.js. A parte da web do seu servidor de nuvem pessoal do IRC requer Nó. Instruções completas para instalar podem ser encontradas aqui , mas estas são as únicas duas linhas necessárias:
# curl -sL https://deb.nodesource.com/setup_8.x | bash -
# apt-get install -y nodejs
Em seguida, você precisará criar um banco de dados para o núcleo do Quassel. Mude para o usuário do Postgres e execute psql
.
# su - postgres
$ psql
Quando estiver no prompt do PostgreSQL, você precisará criar um usuário para o Quassel e seu banco de dados:
CREATE USER quassel ENCRYPTED PASSWORD 'somepassword';
CREATE DATABASE quassel WITH OWNER quassel ENCODING 'UTF8';
Agora que o básico está configurado, você pode iniciar o cliente Quassel e conectar-se ao seu núcleo.
Ao iniciar o cliente Quassel na sua máquina local, você verá uma caixa de diálogo de conexão. Digite o endereço IP ou o nome do host do seu VPS e o número da porta (padrão: 4242) e selecione SSL. Se você tiver um servidor proxy, poderá inserir os detalhes do proxy na caixa de diálogo.
Durante a primeira conexão, você será guiado por outro assistente para configurar o núcleo. Digite seu primeiro nome de usuário e senha do Quasselcore. O primeiro usuário será o administrador. Em seguida, selecione o back-end do banco de dados PostgreSQL e forneça o nome de usuário e a senha do banco de dados Quassel, conforme definido na etapa anterior.
Depois de configurar o básico do seu núcleo, agora você pode configurar a parte da web. Isso permite que você se conecte ao seu núcleo a partir de qualquer navegador da web. Nós vamos usar o Quassel-Webserver .
Crie um usuário para o serviço da web:
# useradd -d /opt/quassel-webserver -M -r quassel-webserver
Agora, puxe o servidor da web Quassel e altere a propriedade para o usuário criado anteriormente:
# git clone https://github.com/magne4000/quassel-webserver.git /opt/quassel-webserver
# chown -R quassel-webserver:quasselweb-server /opt/quassel-webserver
Você precisa "instalar" o aplicativo Node.js.
# su - quassel-webserver
$ npm install --production
Copie o settings.js
para settings-user.js
e alterar as host
, forcedefault
e prefixpath
valores:
host: 'localhost',
forcedefault: 'true',
prefixpath: '/app'
Enquanto estiver no /opt/quassel-webserver
caminho como root, você pode instalar o arquivo de serviço para o Systemd.
# cp scripts/quassel-webserver.service /lib/systemd/system/quassel-webserver.service
Você precisará editar /lib/systemd/system/quassel-webserver.service
e alterar a ExecStart
linha:
ExecStart=/usr/bin/node /opt/quassel-webserver/app.js -l 127.0.0.1 -m http
Agora você pode ativar e iniciar o servidor da web Quassel:
systemctl enable quassel-webserver.service
systemctl start quassel-webserver.service
Você pode verificar se o servidor da web está executando executando systemctl status quassel-webserver.service
. Se você vir Active: active (running)
, está tudo pronto!
Em seguida, vamos configurar o Apache.
Você precisará ativar alguns módulos para iniciar, como proxy_http
, proxy_wstunnel
e rewrite
.
# a2enmod proxy_http proxy_wstunnel rewrite
Crie um novo arquivo de configuração para o Quassel:
# nano /etc/apache2/sites-available/quassel.conf
<VirtualHost *:80>
ServerName quassel.example.net
ServerAdmin [email protected]
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
# Enable Rewrite
RewriteEngine on
# Redirect to /app by default
RedirectMatch ^/$ /app
# Quassel Webserver
RewriteRule /app/p/socket(.*) ws://127.0.0.1:64080/app/p/socket$1 [P,L]
ProxyPass /app http://127.0.0.1:64080/app
</VirtualHost>
E ative seu site:
a2ensite quassel
Reinicie o Apache para aplicar as alterações:
systemctl restart apache2
Se tudo deu certo, agora você pode navegar para sua quassel-webserver
instância em http://quassel.example.net
.
Em seguida, vamos configurar uma pesquisa de pendências . Isso exigirá modificações no quassel-core
banco de dados. Primeiro, vamos começar com a clonagem do código fonte:
# git clone https://github.com/justjanne/quassel-rest-search.git /opt/quassel-rest-search
Uma vez clonado, renomeie o arquivo qrs_config.default.php
para qrs_config.php
e editar o arquivo. Você precisará definir seu banco de dados db_name
, db_user
, db_path
e path_prefix
. Ele deve terminar parecido com isto:
<?php
define('db_host', 'localhost');
define('db_port', 5432);
define('db_name', 'quassel');
//Only change this if you know what you are doing
define('db_connector', null);
define('db_user', 'quassel');
define('db_pass', 'somepassword');
define('backend', 'pgsql-smart');
define('path_prefix', '/search');
Em seguida, modificamos o banco de dados a ser usado por quassel-rest-search
:
Alterne para o postgres
usuário e execute psql
:
# su - postgres
$ psql quassel
Primeiro, adicione uma nova coluna à tabela de pendências:
ALTER TABLE backlog ADD COLUMN tsv tsvector;
Segundo, adicione os dois novos índices:
CREATE INDEX backlog_tsv_idx
ON backlog
USING gin(tsv);
CREATE INDEX backlog_tsv_filtered_idx
ON backlog
USING gin(tsv)
WHERE (type & 23559) > 0;
Terceiro, configure um gatilho para preencher a coluna tsv:
CREATE TRIGGER tsvectorupdate
BEFORE INSERT OR UPDATE
ON backlog
FOR EACH ROW
EXECUTE PROCEDURE tsvector_update_trigger('tsv', 'pg_catalog.english', 'message');
Quarto, preencha a tsv
coluna " ":
UPDATE backlog SET messageid = messageid;
Agora você pode atualizar a configuração do Apache que criamos anteriormente e adicionar:
# Quassel Search
Alias /search /opt/quassel-rest-search
<Directory /opt/quassel-rest-search>
Require all granted
</Directory>
Reinicie o Apache:
systemctl restart apache2
Se tudo correu bem, você pode navegar para http://quassel.example.net/search
e verá uma tela de login.
Agora pode ser um bom momento para proteger seu servidor da web usando o Let's Encrypt. Detalhes sobre como instalar e configurar o Let's Encrypt podem ser encontrados no site da EFF ou aqui nos documentos da Vultr .
Caso esteja preocupado com a falta de memória RAM, convém ativar a troca no seu VPS. Por favor, siga este tutorial de troca do Linux .
O Vultr oferece uma incrível conectividade de rede privada para servidores executando no mesmo local. Mas às vezes você quer dois servidores em países diferentes
Usando um sistema diferente? O Couch CMS é um sistema de gerenciamento de conteúdo (CMS) simples e flexível, gratuito e de código aberto que permite que os web designers
Usar um usuário sudo para acessar um servidor e executar comandos no nível raiz é uma prática muito comum entre o Linux e o Unix Systems Administrator. O uso de um sud
Este artigo ensinará como configurar uma prisão chroot no Debian. Presumo que você esteja usando o Debian 7.x. Se você estiver executando o Debian 6 ou 8, isso pode funcionar, mas
Introdução Uma maneira fácil de configurar um servidor VPN no Debian é com o PiVPN. PiVPN é um instalador e wrapper para o OpenVPN. Ele cria comandos simples para você t
Usando um sistema diferente? Introdução O Kanboard é um programa de software de gerenciamento de projetos gratuito e de código aberto, projetado para facilitar e visualizar
Usando um sistema diferente? Neos é uma plataforma de aplicativos de conteúdo com um CMS e uma estrutura de aplicativos em seu núcleo. Este guia mostra como instalar
Introdução O Cacti é uma ferramenta de monitoramento e gráfico de código aberto totalmente baseada em dados RRD. Através do Cacti, você pode monitorar quase qualquer tipo de dispositivo
Java é uma linguagem de programação independente de plataforma / máquina virtual. Neste tutorial, instalaremos a implementação OpenJDK do Java 8 em um Debian
O Git é um sistema de controle de versão (VCS) que permite o rastreamento de alterações no código. Neste tutorial, mostraremos a instalação de um servidor HTTP (S) Git, um
Introdução O MyCLI é um cliente de linha de comando para MySQL e MariaDB que permite concluir automaticamente e ajuda na sintaxe de seus comandos SQL. MyCL
Introdução O MySQL possui um ótimo recurso conhecido como views. As visualizações são consultas armazenadas. Pense neles como um alias para uma consulta longa. Neste guia,
Usando um sistema diferente? O Matomo (anteriormente Piwik) é uma plataforma de análise de código aberto, uma alternativa aberta ao Google Analytics. Fonte Matomo está hospedado o
Munin é uma ferramenta de monitoramento para pesquisar processos e recursos em sua máquina e apresenta as informações em gráficos através de uma interface da web. Use o seguinte
Usando um sistema diferente? O NodeBB é um fórum baseado no Node.js. Ele utiliza soquetes da web para interações instantâneas e notificações em tempo real. Código fonte do NodeBB i
O Samba é uma solução de código aberto que permite aos usuários configurar compartilhamentos de arquivos e impressão rápidos e seguros. Neste artigo, abordarei como configurar a sagacidade do Samba
Introdução Neste tutorial, abordaremos o processo de adicionar um intervalo / sub-rede IP inteiro a um servidor Linux executando o CentOS, Debian ou Ubuntu. O processo
Usando um sistema diferente? O Plesk é um painel de controle proprietário de host da web que permite que os usuários administrem seus sites pessoais e / ou clientes, bancos de dados
Usando um sistema diferente? O Koel é um aplicativo simples de transmissão de áudio pessoal baseado na Web, escrito em Vue no lado do cliente e Laravel no lado do servidor. Koe
Usando um sistema diferente? O Ghost é uma plataforma de blog de código aberto que vem ganhando popularidade entre desenvolvedores e usuários comuns desde a sua 201
Os ataques de ransomware estão aumentando, mas a IA pode ajudar a lidar com os vírus de computador mais recentes? AI é a resposta? Leia aqui para saber se é AI boone ou bane
ReactOS, um sistema operacional de código aberto e gratuito está aqui com a versão mais recente. Será que ela pode atender às necessidades dos usuários modernos do Windows e derrubar a Microsoft? Vamos descobrir mais sobre esse estilo antigo, mas uma experiência de sistema operacional mais recente.
O Whatsapp finalmente lançou o aplicativo Desktop para usuários de Mac e Windows. Agora você pode acessar o Whatsapp do Windows ou Mac facilmente. Disponível para Windows 8+ e Mac OS 10.9+
Leia isto para saber como a Inteligência Artificial está se tornando popular entre as empresas de pequena escala e como está aumentando as probabilidades de fazê-las crescer e dar vantagem a seus concorrentes.
Recentemente, a Apple lançou o macOS Catalina 10.15.4, uma atualização suplementar para corrigir problemas, mas parece que a atualização está causando mais problemas, levando ao bloqueio de máquinas mac. Leia este artigo para saber mais
13 Ferramentas de Extração de Dados Comerciais de Big Data
Nosso computador armazena todos os dados de uma maneira organizada conhecida como sistema de arquivos Journaling. É um método eficiente que permite ao computador pesquisar e exibir arquivos assim que você clicar em search.https: //wethegeek.com/? P = 94116 & preview = true
À medida que a ciência evolui em um ritmo rápido, assumindo muitos de nossos esforços, os riscos de nos sujeitarmos a uma singularidade inexplicável também aumentam. Leia, o que a singularidade pode significar para nós.
Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1
A IA na área da saúde deu grandes saltos nas últimas décadas. Portanto, o futuro da IA na área da saúde ainda está crescendo dia a dia.