Created
March 28, 2016 17:38
-
-
Save dforocha/629f46f6bd55b111b5ad to your computer and use it in GitHub Desktop.
Script criado para simplificar o acesso via ssh nos servidores da TOTVS
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# | |
# FUNCTION: | |
# Simplificar o acesso via SSH nos servidores da TOTVS | |
# Antes de acessar o servidor esse script tenta autenticar na VPN da TOTVS por isso atualize a variável VPN_CONNECTION_NAME com o nome da sua conexão de VPN | |
# AUTHOR: | |
# Diego Rocha | |
# CREATED: | |
# 28-03-2016 | |
# UPDATES: | |
# author - date | |
# - mudança 1 | |
# - mudança 2 | |
# - mudança 3 | |
function help() { | |
echo " | |
Esse script foi criado para conectar automaticamente nos servidores da Totvs de forma rápida e simples e se conecta automaticamente na VPN da Totvs. | |
Sintaxe: | |
gototvs <ambiente> <server> [\"comando\"] | |
Lista de Ambientes: | |
- hmg | |
- prod | |
- dev | |
Lista de Servidores: | |
- jerico | |
- jis | |
- doomsday | |
- sensu | |
- salt | |
- Postgre | |
Para melhor visualizar as opções use o argumento: -l ou list | |
Observações: | |
1. A Conexão de VPN da TOTVS já deve ter sido préviamente criada e salva | |
2. Setar a variável VPN_CONNECTION_NAME manualmente | |
" | |
} | |
function list() { | |
echo "Totvs server list: | |
# Jerico | |
hmg jerico | |
prod jerico | |
dev jerico | |
# jis | |
hmg jis | |
prod jis | |
dev jis | |
# doomsday | |
hmg doomsday | |
prod doomsday | |
dev doomsday | |
# sensu | |
hmg sensu | |
prod sensu | |
dev sensu | |
# salt | |
hmg salt | |
prod salt | |
dev salt | |
# Postgre | |
hmg Postgre | |
prod Postgre | |
dev Postgre | |
Para maiores informações use o help -> --help|-h | |
" | |
} | |
function validate() { | |
if [ "x$1" == "x" ] | |
then | |
list | |
echo "Digite um ambiente: " | |
read environment | |
else | |
environment=$1 | |
if [ "x$2" == "x" ] | |
then | |
list | |
echo "Digite um ambiente: " | |
read server | |
else | |
server=$2 | |
fi | |
fi | |
connect | |
} | |
function connect() { | |
# Colocar aqui o nome da sua conexao de vpn com a Totvs | |
VPN_CONNECTION_NAME="VPN_Totvs-Cloudficacao" | |
# Checar status da VPN | |
# Em caso de retorno, a VPN está ativa | |
VPN_STATUS="`nmcli con show --active id $VPN_CONNECTION_NAME`" | |
if [ "x$VPN_STATUS" == "x" ] | |
then | |
# Conectar na VPN | |
nmcli con up id $VPN_CONNECTION_NAME | |
fi | |
case $environment in | |
hmg) | |
case $server in | |
jerico) | |
ssh [email protected] "$3";; | |
jis) | |
ssh [email protected] "$3";; | |
doomsday) | |
ssh [email protected] "$3";; | |
sensu) | |
ssh [email protected] "$3";; | |
salt) | |
ssh [email protected] "$3";; | |
Postgre) | |
ssh [email protected] "$3";; | |
*) | |
echo server invalido ; list;; | |
esac;; | |
prod) | |
case $server in | |
jerico) | |
ssh [email protected] "$3";; | |
jis) | |
ssh [email protected] "$3";; | |
doomsday) | |
ssh [email protected] "$3";; | |
sensu) | |
ssh [email protected] "$3";; | |
salt) | |
ssh [email protected] "$3";; | |
Postgre) | |
ssh [email protected] "$3";; | |
*) | |
echo server invalido ; list;; | |
esac;; | |
dev) | |
case $server in | |
jerico) | |
ssh [email protected] "$3";; | |
jis) | |
ssh [email protected] "$3";; | |
doomsday) | |
ssh [email protected] "$3";; | |
sensu) | |
ssh [email protected] "$3";; | |
salt) | |
ssh [email protected] "$3";; | |
Postgre) | |
ssh [email protected] "$3";; | |
*) | |
echo server invalido ; list;; | |
esac;; | |
*) | |
echo Ambiente inválido ; list;; | |
esac | |
# Desconectar da VPN | |
nmcli con down id $VPN_CONNECTION_NAME | |
} | |
#Main Menu | |
case $1 in | |
'list' | '-l' ) | |
list ; exit ;; | |
'help' | '--help' | '-h' ) | |
help ; exit ;; | |
*) | |
validate $1 $2 $3 ;; | |
esac |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Script criado para simplificar o acesso via ssh nos servidores da TOTVS