From 9dd6408f628978d6baee58750d56afb55262ae45 Mon Sep 17 00:00:00 2001 From: joaopgs4 Date: Sun, 17 Nov 2024 14:19:27 -0300 Subject: [PATCH] fedora script add --- README.md | 5 ++-- run.sh => script-debian.sh | 0 script-fedora.sh | 54 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 57 insertions(+), 2 deletions(-) rename run.sh => script-debian.sh (100%) create mode 100755 script-fedora.sh diff --git a/README.md b/README.md index 99e853e..54df711 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,7 @@ Este script automatiza o processo de instalação e configuração do WireGuard, Antes de usar o script, certifique-se de que: - Você está usando uma distribuição Linux baseada em Debian (como Ubuntu) com o gerenciador de pacotes `apt`. +- Ou uma destribuição red-hat sob o gerenciador de pacotes dnf (como a fedora). - Você tem privilégios de superusuário (root) ou acesso ao comando `sudo`. - O arquivo de configuração do WireGuard (`wg-conf-1.conf`) está localizado na mesma pasta que o script. @@ -20,7 +21,7 @@ Antes de usar o script, certifique-se de que: Antes de executar o script pela primeira vez, você precisa dar permissão de execução. Execute o seguinte comando no terminal: ```bash - chmod +x run.sh + chmod +x script-debian.sh ``` 3. **Execute o script** @@ -28,7 +29,7 @@ Antes de usar o script, certifique-se de que: Execute o script com o seguinte comando: ```bash - bash ./run.sh + bash ./script-debian.sh ``` Durante a execução, o script irá: diff --git a/run.sh b/script-debian.sh similarity index 100% rename from run.sh rename to script-debian.sh diff --git a/script-fedora.sh b/script-fedora.sh new file mode 100755 index 0000000..76adc7f --- /dev/null +++ b/script-fedora.sh @@ -0,0 +1,54 @@ +#!/bin/bash + +# Obtém o diretório do script atual +SCRIPT_DIR=$(dirname "$(realpath "$0")") + +echo "Iniciando a instalação do WireGuard..." +# Instala o WireGuard +sudo dnf install -y wireguard-tools +echo "WireGuard instalado com sucesso." + +# Cria o diretório /etc/wireguard se ele não existir +if [ ! -d /etc/wireguard ]; then + echo "Diretório /etc/wireguard não encontrado. Criando o diretório..." + sudo mkdir -p /etc/wireguard + echo "Diretório /etc/wireguard criado." +else + echo "Diretório /etc/wireguard já existe." +fi + +# Verifica se o arquivo já existe e tenta realizar wg-quick down +if [ -f /etc/wireguard/wg-conf-1.conf ]; then + echo "Arquivo wg-conf-1.conf encontrado em /etc/wireguard." + echo "Tentando derrubar a interface wg-conf-1..." + sudo wg-quick down wg-conf-1 2>/dev/null + if [ $? -eq 0 ]; then + echo "Interface wg-conf-1 derrubada com sucesso." + else + echo "Falha ao derrubar a interface wg-conf-1 ou ela já está inativa." + fi + echo "Removendo o arquivo wg-conf-1.conf existente..." + sudo rm /etc/wireguard/wg-conf-1.conf + echo "Arquivo existente removido." +else + echo "Arquivo wg-conf-1.conf não encontrado em /etc/wireguard. Pronto para mover o novo arquivo." +fi + +# Move o arquivo do diretório do script para /etc/wireguard +echo "Movendo wg-conf-1.conf do diretório do script ($SCRIPT_DIR) para /etc/wireguard..." +sudo mv "$SCRIPT_DIR/wg-conf-1.conf" /etc/wireguard +echo "Arquivo movido com sucesso." + +# Sobe a interface WireGuard +echo "Subindo a interface WireGuard..." +sudo wg-quick up wg-conf-1 +if [ $? -eq 0 ]; then + echo "Interface WireGuard subida com sucesso." +else + echo "Falha ao subir a interface WireGuard. Verifique o arquivo de configuração." + exit 1 +fi + +# Mostra o status do WireGuard +echo "Exibindo o status do WireGuard:" +sudo wg show