Acesse o Shell do FreeBSD via XMPP ;)
Dica útil para acessar remotamente locais onde você não possa disponibilizar o Shell ou fazer roteamentos.
Dependências
# cd /usr/ports/lang/ruby18 && make install clean
# cd /usr/ports/devel/ruby-gems && make install clean
Agora usando o Ruby Gem:
# gem install session
# gem install xmpp4r-simple
Crie um arquivo como este exemplo:
##############################
#!/usr/bin/env ruby
# https://gist.github.com/258561
# Jabber-SH — SH console via XMPP/Jabber (GTalk)
#
# Jabber-SH allows you to administrate a remote computer via a command line
# through a Jabber client. It’s like SSH via GoogleTalk! :)
# This is just a hack but it might be usefull sometime to run basic commands
# on a machine that is not accessible via ssh.
#
# Philippe Creux. pcreux/AT/gmail/DOT/com
# Jabber-SH connects to Jabber using the BOT_LOGIN and BOT_PASSWORD details.
BOT_LOGIN = "SEU-FREEBSD@DOMINIOXMPP.COM.BR" #Pode ser o IP ;)
BOT_PASSWORD = "SENHA-XMPP"
# Jabber-SH answers some random epigram via 'fortune' to any message sent to him.
# The user CLIENT_LOGIN logs into the console by sending the CLIENT_PASSPHRASE.
CLIENT_LOGIN = "SUA-CONTA@DOMINIOXMPP.COM.BR"
CLIENT_PASSPHRASE = "SENHA-PARA-LIBERAR-SHELL"
require 'rubygems'
require 'xmpp4r-simple'
require 'session'
puts "Connecting"
if messenger = Jabber::Simple.new(BOT_LOGIN, BOT_PASSWORD)
puts "Connected"
else
puts "Ooops - Can't connect"
end
@sh = nil
while true
messenger.received_messages do |msg|
puts "Received #{msg.body} from #{msg.from}"
if msg && msg.from.to_s.include?(CLIENT_LOGIN)
if msg.body == CLIENT_PASSPHRASE
if @sh == nil
@sh = Session::new
message = "Now logged in!"
else
@sh.close && @sh = nil
message = "Logged out..."
end
messenger.deliver(msg.from, message)
else
if @sh
stdout, stderr = @sh.execute(msg.body) if msg.body
messenger.deliver(msg.from, "\n" + stdout.chomp) unless stdout.empty?
messenger.deliver(msg.from, "\n" + stderr.chomp) unless stderr.empty?
messenger.deliver(msg.from, @sh.execute('pwd')[0].chomp + "$>")
else
messenger.deliver(msg.from, `fortune`)
end
end
end
end
sleep 1
end
##############################
Feito isso execute o arquivo:
# ruby exemplo.ruby (eu uso rc.local para inicializar serviços alternativos)
Connecting
Connected
Deverá ser a saida... ( OK ) Adicione o SEU-FREEBSD nos seus contatos, ou use o Roster ( eu fiz com Openfire ).
E converse.
Note: As "besteiras" serão redirecionadas para o fortune. ( Adicione o seu root ou usuário com sudo para aceitar o fortune -- profile -- :/usr/games )
Para habilitar o Shell ( bash , sh ) envie a sua SENHA-PARA-LIBERAR-SHELL
Que não precisa ser a sua senha XMPP.
Com isso, Aparecerá a mensagem:
Now logged in!
Mande bala nos seus comandos.
Dica:
Fortune Star Wars
http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CCIQFjAA&url=http%3A%2F%2Ffreecode.com%2Fprojects%2Ffortune-starwars&ei=e3cxT-vYBdCUtwf-m52sBw&usg=AFQjCNHhrez546rrx1rQizQK7Uz4BBDBMQ
Dica de Segurança:
Não aconselho usar em nada crítico, habilite um usuário no sudo para fazer a execução. trocar senhas do squid, coisas rotineiras.
Testes e Gambiarras :
Pode-se conectar de qualquer rede XMPP, eu usei o Openfire e Gtalk. deve funcionar com Facebook / novo MSN, não testei.
* Seguindo a referência abaixo - apt-get para Debian/Ubuntu.
Referências:
http://lethargicpanda.tumblr.com/post/12024497318/command-your-shell-via-xmpp-gtalk
https://gist.github.com/258561
terça-feira, 7 de fevereiro de 2012
segunda-feira, 6 de fevereiro de 2012
Mensagem: TrueCrypt is already running
Dica útil:
Eu necessitava acessar meu arquivo de senhas e material educacional e apareceu essa mensagem:
"TrueCrypt is already running" ( Ohhh FUCK!)
Isso ocorre quando o processo fica preso, "halt ou reboot" sem desmontar o volume criptografado.
Contornei assim:
$ rm -f ~/.TrueCrypt-lock-$USERNAME
e bom dia.
Eu necessitava acessar meu arquivo de senhas e material educacional e apareceu essa mensagem:
"TrueCrypt is already running" ( Ohhh FUCK!)
Isso ocorre quando o processo fica preso, "halt ou reboot" sem desmontar o volume criptografado.
Contornei assim:
$ rm -f ~/.TrueCrypt-lock-$USERNAME
e bom dia.
Assinar:
Postagens (Atom)