rc.mailMyIp - Informa seu IP externo para o Gmail
Publicado por /dev/movebo (última atualização em 09/10/2010)
[ Hits: 5.769 ]
Homepage: http://devmovebo.blogspot.com
Informa seu IP externo para o Gmail.
- Mantém os endereços sincronizados para acesso via SSH através de IP dinâmico.
- Requer msmtp configurado para o Gmail e um script para automatizar a leitura e acesso no SSH server.
- Mais detalhes em < http://bit.ly/deB0dO > ou < http://www.vivaolinux.com.br/artigo/Receba-seu-IP-externo-via-email-ou-ensine-o-bash-a-ler-e-enviar-... >
#!/bin/bash # #################################################### # rc.mailMyIp # (C) Copyleft 2010 /dev/movebo # movebo{no spam}ime.usp.br # Informa seu IP externo para o gmail # Mantém os endereços sincronizados para SSH # atraves de IP dinamico. #################################################### ############### # DEFINITIONS # ############### FILE=/tmp/.mailMyIP DATE=`date +"%F %H:%M:%S"` ADDRS="zeh@gmail.com" MSMTP=`which msmtp` PING=`which ping` SED=`which sed` PRINTF=`which printf` IFCONFIG=`which ifconfig` #################### # FUNCTIONS: BEGIN # #################### MSG() { BODY="Subject: NAVI has booted, check your IP\nDate: $DATE\n\nNAVI was booted at $DATE\nNAVI IP=$IP\n" echo "$BODY" > $FILE echo "$BODY" | $MSMTP -C /root/.msmtprc $ADDRS } mailMyIp() { if [ -f $FILE ]; then OLDIP=`cat $FILE | sed '/IP=/!d;s/.*=//g'` [ "$IP" != "$OLDIP" ] && MSG else MSG fi } OK() { echo -e "\{FONTE}33[60G[ \e[32;1mOK\e[0m ]" } FAIL() { echo -e "\{FONTE}33[60G[ \e[31;1mFAIL\e[0m ]" } GET_IP() { IP=`curl -s http://www.whatismyip.com/automation/n09230945.asp` echo -n $IP } TEST_INET() { ETH0=`$IFCONFIG eth0 | sed '/inet\ /!d;s/.*r://g;s/\..*$//g'` if [ $ETH0 -ne 192 ]; then echo "Network not available" exit -1 else printf "%b" "Testing your Internet Connection:" PING_COUNT=`$PING -l3 -w1 -c3 200.160.4.2 2> /dev/null | $SED '/rec/!d;s/.*ted,\ //g;s/\ .*//g'` fi } ################## # FUNCTIONS: END # ################## case "$1" in 'start') TEST_INET if [ $PING_COUNT -eq 0 ]; then FAIL else OK echo -n " Retrieving external IP: " GET_IP if [ -n "$IP" ]; then OK echo -en " Retrieving IP from gmail: " NAVI_IP=`$HOME/bin/naviip` if [ -n "$NAVI_IP" ]; then echo -n "$NAVI_IP" OK else FAIL fi if [ "$IP" != "$NAVI_IP" ]; then echo -en " Mailing the new IP to $ADDRS" MSG OK else echo " Nothing to do." fi else FAIL fi fi ;; 'check') TEST_INET > /dev/null if [ $PING_COUNT -ne 0 ]; then GET_IP >> /dev/null if [ -n "$IP" ]; then NAVI_IP=`/usr/local/bin/naviip` [ "$IP" != "$NAVI_IP" ] && MSG fi fi ;; *) echo "usage $0 {start|check}" esac
NetScan - o seu scanner de rede!
Configurando Adaptador USBSerial no Ubuntu usando udev
Nenhum comentário foi encontrado.
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (15)
Tenho dois Link's ( IP VÁLIDOS ), estou tentando fazer o failover... (0)
Pendrive não formata de jeito nenhum (4)