Simulando o SSH via WEB

Ao invés de se ter a porta 22 aberta no servidor Linux para disponibilizar o SSH, podemos tê-lo rodando via WEB. Neste artigo explicarei como programar um script em PHP para isso, daí fica a critério de cada um modificá-lo da forma que quiser.

[ Hits: 66.629 ]

Por: Eduardo Assis em 21/01/2004 | Blog: http://www.proredes.com.br


Configuração



Antes de tudo, tenho que alterar o arquivo /etc/sudoers para permitir que o usuário "www" tenha permissão para executar os comandos de manipulação de usuários.

Altere as permissões do /etc/sudoers para 600:

# chmod 600 /etc/sudoers

e adicione a seguinte linha à ele:

www ALL=NOPASSWD: ALL

Nesse caso deixei o usuário fazer tudo, caso contrário, não seria possível criar o SSH via WEB.

Salve, saia e restaure a permissão deste arquivo para 440:

# chmod 440 /etc/sudoers

    Próxima página

Páginas do artigo
   1. Configuração
   2. Programando o script
   3. Executando o comando
Outros artigos deste autor

Carregando scripts ao se logar no Samba

Shell script com PHP

Configurando um servidor de e-mail para pequenas redes

Explorando o NFS do mrluk

Servidor seguro com Bridge, Snort e Guardian

Leitura recomendada

Lighttpd + SQLite + PHP

Formulário "Fale Conosco" em HTML/PHP autenticado no SMTP Server

Boleto Bancário em PHP ou ASP

Ambiente LAMP no Debian

Podcast Generator - Guia de instalação e primeiro acesso

  
Comentários
[1] Comentário enviado por ragen em 21/01/2004 - 19:53h

if ($autorizado=="sim") ?

E se alguem simular uma sessão com a var $autorizado valendo "sim" como fica?

Não consegui entender...

[2] Comentário enviado por jllucca em 05/04/2005 - 15:55h

Olá,

no CVS do apache estão testando funções que serão capazes de requisitar o ssh. Acho que se funcionar será uma excelente alterantiva. :)

Mas, isso não tira a excelente idéia deste autor :D

[]'s
PS: Edit pra corrigir o que tinha dito...

[3] Comentário enviado por zero_bala em 25/10/2005 - 10:33h

ragen, se alguém fizer isso, então ele terá acesso. No php.ini tem uma diretiva chamada register_globals. Se ela estiver ON vc poderá "burlar" o sistema via query string.

http://localhost/index.php?autorizado=sim

Uma boa alternativa é usar .htaccess do Apache.

[4] Comentário enviado por scorpionbr em 28/03/2006 - 19:29h

Oi tenho um script de configuração que roda via shell para configurar servidor samba, squid, fw, e estou querendo fazer via web + php, como faria para ter uma base, tipo um exemplo, tenho um arquivo tipo fw.ini, que no modo shell configuro o que quero, nas regras, como faço para editar este arquivo via Web?

tem alguma dica sobre isto? a minha maior dúvida são os parâmetros, para editar, e depois que editar, quero fazer tipo um check box para selecionar o serviço para parar e iniciar. é muito complicado???

[5] Comentário enviado por fmascarenhas em 25/01/2007 - 11:47h

Concordo com o amigo zero_bala que utilizar .htaccess seria uma solução interessante, particularmente além da autenticação de usuário colocaria uma limitação para permitir acesso apenas para determinado IP.


AuthName "Meu servidor - Área restrita"
AuthType Basic
AuthUserFile /var/www/.htpasswd

require valid-user

Order deny,allow
Deny from all
Allow from xxx.xxx.xxx.xxx

[6] Comentário enviado por *simon em 26/03/2007 - 10:17h

Como simularia um tail -f com esse script.
Tpw tentei fazer isso e deu certo, porém agora nao consigo quebrar as linhas .

<meta http-equiv="refresh" content="1" />

<?
$comandos=shell_exec("sudo tail /var/log/apache2/access.log");
echo "<font face='verdana' size='2'>$comandos</font>";


?>

[7] Comentário enviado por chagalrpg em 11/09/2007 - 20:03h

Olá para todos, gostaria de usar o comando abaixo em qualquer estação de uma rede, isso via PHP do servidor.

O comando é: "dcop kdesktop KScreensaverIface lock".
Tentei várias maneiras de executá-lo, até mesmo localhost, mas não tive sucesso.
Alguém tem alguma idéia de como fazê-lo?

Se alguém puder ajudar, por favor, me mande e-mail.
evandro.chagal@gmail.com

Valeu!!

[8] Comentário enviado por comfaa em 28/10/2008 - 13:04h

muito legal !!!

[9] Comentário enviado por Journeyman em 24/04/2009 - 21:43h

Aqui um sisteminha pronto em perl pra mesma finalidade:

http://www.rohitab.com/cgiscripts/cgitelnet.html

Não desmerecendo o teu artigo qu ta excelente, mas normalmente os provedores cuidam muito a segurança do php, mas acabam esquecendo de cgi, perl , etc

Poucas chances do php funcionar em provedor.. mais garantido em cgi =D

Abraços.

[10] Comentário enviado por BlackMarik em 06/06/2009 - 19:02h

Também concordo com o zero_bala e com o fmascarenhas

Ter muita seguranca nesse tipo de pagina é muito mais que nescessario.

[11] Comentário enviado por clickbr em 18/08/2009 - 20:31h

Só entrei aqui agora pra agradecer o Journeyman. Realmente o cgitelnet é ótimo. Faltou um editor de texto vi. Mais os links de upload e download, é mais eficiente que um FTP, é só upar os arquivos do site compactado e depois descompactar dentro do host. Pontos pra vc, fazia tempo que procurava algo assim.

[12] Comentário enviado por vida486 em 14/06/2010 - 16:22h

Boa Tarde, Quem puder ma ajudar a configurar o Simulador SSH via web fico muito grato
meu contato e almeidamentz@gmail.com
desde ja abrigado


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts