Ubuntu Server, Debian, Raspberry Pi e Orange Pi · amd64, arm64 e armhf · v3.0.2-5
Transforma um computador que fica ligado em casa —um VPS, um Ubuntu Server, um Raspberry Pi ou um Orange Pi— no teu servidor VPN. Não precisa de ecrã: instala-se e gere-se a partir do terminal, também por SSH, com o comando mivpn.
A primeira linha adiciona a chave com que assinamos os pacotes, a segunda o repositório e as duas últimas instalam o MiVPN Server. Só se faz uma vez: depois, as atualizações chegam com as do resto do sistema.
curl -fsSL https://mivpn.net/apt/mivpn.gpg | sudo tee /usr/share/keyrings/mivpn.gpg >/dev/null
echo "deb [signed-by=/usr/share/keyrings/mivpn.gpg] https://mivpn.net/apt stable main" | sudo tee /etc/apt/sources.list.d/mivpn.list
sudo apt update
sudo apt install mivpn-server
Transfere o pacote da tua arquitetura:
amd64PCs, servidores e VPS Intel/AMD arm64Raspberry Pi e Orange Pi com sistema de 64 bits armhfRaspberry Pi com sistema de 32 bitsNão sabes a tua arquitetura? Executa dpkg --print-architecture
E instala-o a partir da pasta onde o transferiste:
sudo apt install ./mivpn-server_*.deb
Escreve o email da tua conta mivpn.net; vai pedir a palavra-passe. A palavra-passe só serve para entrar desta vez: não fica guardada no computador.
sudo mivpn setup -e tu@exemplo.com
Arranca o servidor VPN e o agente que o mantém em contacto com a mivpn.net, e deixa os dois no arranque do sistema: depois de um reinício ou de um corte de luz, o servidor volta sozinho.
sudo mivpn enable
mivpn status mostra o mesmo que a app de ambiente de trabalho. Assim se vê um servidor a funcionar:
$ sudo mivpn status
MiVPN Server raspberrypi (aarch64)
Cuenta tu@correo.com · servidor "Casa"
Servicios tunel activo · upnp activo · notify activo · arranque con el sistema: si
Servidor en marcha
mivpn.net conectado (estado y ordenes)
Red Ethernet 1000 Mbps
Puerto UDP 51820 · abierto en el router
IP publica 203.0.113.25 · local 192.168.1.40
Clientes 1 de 2 conectados
movil conectado 10.8.0.2 ahora
portatil desconectado 10.8.0.3 hace 2 h
Tudo se faz com o comando mivpn. Os que mexem no servidor precisam de sudo.
sudo mivpn setup -e …Associa o computador à tua conta e deixa o servidor preparado.
Quando: da primeira vez, ou para transferir para aqui um servidor que funcionava noutro computador.
sudo mivpn enableArranca o servidor e faz com que arranque sozinho sempre que o computador é ligado.
Quando: logo a seguir ao setup.
sudo mivpn disableO servidor deixa de arrancar ao ligar o computador. Se estiver a funcionar, continua até o parares.
Quando: se preferires decidir tu quando o ligar.
sudo mivpn statusComo está tudo: servidor, ligação à mivpn.net, rede, porta, IP e clientes.
Quando: sempre que quiseres saber se o servidor está a funcionar.
sudo mivpn logs -fO registo do servidor, em direto. Sem -f, as últimas linhas.
Quando: se algo não funciona e queres ver o que se passa.
sudo mivpn stopPara o servidor por completo: o servidor VPN, o agente e o relay.
Quando: se não quiseres que ninguém se ligue durante algum tempo.
sudo mivpn startVolta a arrancar um servidor parado.
Quando: depois do stop.
sudo mivpn restartPara e volta a arrancar o servidor.
Quando: se mudaste alguma coisa na rede ou no router.
sudo mivpn unlinkDesassocia o computador da tua conta e deixa-o limpo: para o servidor, liberta a porta do router e do relay, e apaga credenciais e clientes. Pede a tua palavra-passe.
Quando: quando este computador deixar de ser o teu servidor, antes de desinstalar ou de o vender.
mivpn --versionA versão do MiVPN Server instalada.
mivpn status -hA ajuda de qualquer comando: troca status pelo que quiseres.
-e, --emailO email da tua conta mivpn.net.
--password-stdinLê a palavra-passe da entrada padrão, para scripts.
--replaceTransfere o servidor para aqui a partir de outro computador sem perguntar.
-y, --yesNão pede confirmações.
--port 51820Porta UDP do servidor. Se não a indicares, 51820.
--no-relayNão verifica a rede nem ativa o relay.
Para instalar em vários computadores ou a partir de um script (Ansible, cloud-init…), passa a palavra-passe pela entrada padrão e salta as confirmações:
printf '%s\n' "$MIVPN_PASSWORD" | sudo mivpn setup -e tu@exemplo.com --password-stdin -y
sudo mivpn enable
Instala o MiVPN Server no computador novo e associa-o com --replace. O computador antigo deixa de servir sozinho assim que a mivpn.net o avisa. Os teus clientes terão de transferir a configuração de novo; a app da MiVPN fá-lo sozinha.
sudo mivpn setup -e tu@exemplo.com --replace
sudo mivpn enable
As versões novas chegam pelo repositório, como o resto do sistema. Ao atualizar, o servidor reinicia sozinho com a versão nova.
sudo apt update && sudo apt upgrade
Primeiro desassocia o computador da tua conta; depois, desinstala o pacote.
sudo mivpn unlink
sudo apt remove mivpn-server
Ao desinstalar, tudo é parado e são apagadas as credenciais, os clientes e o servidor WireGuard criado pela MiVPN. Se saltares o unlink, o computador continuará a constar na tua conta até transferires o servidor para outro.
As chaves e o estado do servidor só podem ser lidos pelo administrador. Usa sudo mivpn status.
O teu router não abre portas automaticamente. Ativa o UPnP nas definições e executa sudo mivpn restart. Se a tua ligação não aceitar entradas (CGNAT), precisas de um plano com relay: o servidor sai pelo relay da MiVPN sem mexer no router.
O agente não chega à mivpn.net. Verifica se o computador tem Internet e vê o que se passa com sudo mivpn logs -f.
O teu servidor MiVPN já está a funcionar noutro computador. Transfere-o para este com sudo mivpn setup -e … --replace, ou desassocia primeiro o outro com sudo mivpn unlink.
Ao mudar de computador mudam as chaves do servidor: cada cliente tem de transferir a configuração de novo a partir da mivpn.net ou da app da MiVPN.
Não: um computador só pode ser servidor uma vez. O mivpn-server e o mivpn-server-desktop excluem-se; o apt remove um se instalares o outro.