Pular para o conteúdo

Executar um script remotamente via ssh

Dica publicada em PHP / Rede
Gustavo Hendrigo Marcon hendrigo
Hits: 23.100 Categoria: PHP Subcategoria: Rede
  • Indicar
  • Impressora
  • Denunciar

Executar um script remotamente via ssh

Em um servidor proxy autenticado eu estava precisando fazer que através de uma página em PHP pudesse bloquear e desbloquear o acesso a internet nos laboratórios de informática de onde trabalho.

Tenho um servidor web em outra máquina e para que não fosse preciso instalar o apache no servidor proxy, fiz uma página de controle no servidor web executando um shell script no servidor proxy.

Primeiramente fiz o servidor web autenticar via ssh sem senha no servidor proxy. Usei este artigo:
Você tem que fazer isso com o usuário que está executando o apache. Se quiser alterar o usuário que executa o apache faça o seguinte:

# vim /etc/apache2/apache2.conf

Altere as linhas:

#User www-data
#Group www-data

Para:

User [usuário]
Group [grupo_do_usuário]

Cuidado com as permissões, após isso suas páginas web neste servidor terão que ser alteradas para este usuário.

Na página de controle PHP, o comando para execução remota é:

<?php
shell_exec('/ssh user@ip.do.servidor.proxy "sh /home/user/laboratorios/bloqueia.sh"');
e
shell_exec('/ssh user@ip.do.servidor.proxy "sh /home/user/laboratorios/desbloqueia.sh"');
?>

Usei GNU/Linux Debian 4.0.

Site para montar regras de iptables

Comandos úteis no Linux

Resolvendo problema de NO_PUBKEY no Debian 4 para o Xenserver 5

Comos usuários leigos podem configurar seu proxy autenticado

Exportando lista de MSN

php-meter: Medidor que mostra o consumo de banda no link de internet

[Resolvido] Monitoramento CACTI com SPINE

Usando um script PHP como inclusão do lado servidor

jQuery + PHP = Monitor de status

#1 Comentário enviado por mvenzi em 04/12/2008 - 16:02h
gostei mas aqui no meu trabalho os usuários tem senha.

Contribuir com comentário

Entre na sua conta para comentar.