Executando arquivos remotos com o ProFTPD
Ae galera, to precisando executar um arquivo remotamente através de uma conexao ftp com um server ProFTPD. Eu ja criei o arquivo e coloquei a permissao de execucao, mas o arquivo não executa, ele apenas abre (ler).
Tem como fazer isso em uma conexao ftp?!? Ou somente numa conexao ssh e telnet?!!?
Flw.
Executando arquivos remotos com o ProFTPD
Nao poderia ser http? dai usa php+sudo
Executando arquivos remotos com o ProFTPD
Nao Jim, eh o seguinte. Eh um server web. Dai o desenvolvedor coloca os arquivos para atualizacao da page. Atualmente eu tenho um script q roda em crond para fazer essa atualizacao.
Eu tava querendo colocar um script la, dai o desenvolvedor, apos colocar os arquivos, ele rodava o script, atualizando a page.
Entende?
Executando arquivos remotos com o ProFTPD
ele tem alguma shell no webserver?
pra falar a verdade... nem sei se dah pra rodar.. mas se tiver como, o kra tem q ter ao menos uma shell...
[]'s
Executando arquivos remotos com o ProFTPD
Ae dimiurgo, o usuario tem a shell bash.
Executando arquivos remotos com o ProFTPD
crie um serviço no inetd pro cara poder usar... é bem fácil e mais seguro que fornecer acesso ao bash do sistema...
crie o script com o que vc quer que seja executado (vou dar aqui um exemplo de como desligar o servidor de forma simples por usuários comuns...):
/usr/local/sbin/offserver
#!/bin/bash
shutdown -h now
dê permissão de execução pro arquivo:
chmod +x /usr/local/sbin/offserver
crie uma chamada pra ele no /etc/inetd.conf:
#My Customized Services
#Shutdown from network
offserver stream tcp wait root /usr/local/sbin/offserver
aponte no /etc/services qual porta o seu programa estará escutando:
#My Customized Services
offserver 6066/tcp #Shutdown from network
Feito isso, restarte os serviços do inetd:
/etc/rc.d/rc.inetd restart #isso serve pro slackware e seus descendentes...
/etc/init.d/inetd restart #isso serve pro debian e seus descendentes...
Pronto... agora já deve estar tudo funcionando ;)
Para acessar o seu programa basta estabelecer uma conexão com o teu servidor:
nc servidor 6066 #Isso vai funcionar pelo linux...
telnet servidor 6066 #Isso vai funcionar no prompt do dos...
Viu como é fácil?
Agora basta criar o teu script e por pra funcionar...
Dicas:
No /etc/inetd.conf use o usuário root somente se estritamente necessário...
Não deixe esta porta aberta pra fora do teu firewall e nem para quem não deve ter acesso ao serviço... bloqueie isso via iptables...
iptables -A INPUT -p tcp --dport 6066 -i 200.200.200.200 -j ACCEPT
iptables -A INPUT -p tcp --dport 6066 -i 192.168.168.5 -j ACCEPT
iptables -A INPUT -p tcp --dport 6066 -i 127.0.0.1 -j ACCEPT
iptables -A INPUT -p tcp --dport 6066 -i 0/0 -j DROP
Liberamos o acesso pros ip's 200.200.200.200 e 192.168.168.5 e bloqueamos pra todo o resto...
Crie também scripts e coloque eles como ícones no seu desktop para ficar mais fácil ainda de ser usado...
no linux:
/home/user/scripts/offserver
#!/bin/bash
nc servidor 6066
no windows:
c:/scripts/offserver.bat
telnet servidor 6066
[]'s e boa sorte...
Slice
Executando arquivos remotos com o ProFTPD
Ae Slice, eh uma boa o q disse. Mas num resolve meu problema pq eu preciso rodar esse script conectado ao serv por ftp. Outra coisa eh q n sei o ip de quem ira conectar ao serv pra rodar o script. Dai, abrir uma porta fica mau.
Mas se num tiver como executar um arquivo via ftp, vou ter q partir pra solucoes alternativas. Posso fazer um script com o cod para atualizacao das pags e fazer como vc falou.
Flw.
Executando arquivos remotos com o ProFTPD
Ae Slice, eh uma boa o q disse. Mas num resolve meu problema pq eu preciso rodar esse script conectado ao serv por ftp. Outra coisa eh q n sei o ip de quem ira conectar ao serv pra rodar o script. Dai, abrir uma porta fica mau.
Mas se num tiver como executar um arquivo via ftp, vou ter q partir pra solucoes alternativas. Posso fazer um script com o cod para atualizacao das pags e fazer como vc falou.
Flw.
Executando arquivos remotos com o ProFTPD
puro e simples :)
faça um script ou programa que leia quem é o usuário e a senha dele... se o usuário e a senha estiverem errados o programa aborta a execução... desta maneira vc pode deixar ele aberto com menores restrições... neste caso vc deve ficar bem atento a erros de programação, de modo à não deixar o teu server vulnerável... ou seja, teste bem o programa antes de por ele em produção...
[]'s
Slice
Executando arquivos remotos com o ProFTPD
hum... isso eu entendi, mas minha duvida eh como faço para conseguir executar o arquivo/script via ftp :roll:
Executando arquivos remotos com o ProFTPD
Citação:
Postado originalmente por Daniels
hum... isso eu entendi, mas minha duvida eh como faço para conseguir executar um arquivo via ftp :roll:
Daniels
FTP significa File Transfer Protocol (Protocolo de Transferência de Arquivos)... sendo assim, vc somente conseguirá transferir arquivos, não executálos... a melhor maneira realmente é vc criar um serviço como lhe falei à abrir outros acessos pra este user...
quanto menos recursos vc deixar disponível para usuários, menos vulnerável será o teu server... este é um típico caso que se vc der acesso shell pro user (como vc disse acima que ele tem), vc estará dando pra ele um 'canivete suíço', quando ele precisa somente descascar uma laranja...
Executando arquivos remotos com o ProFTPD
Citação:
Postado originalmente por slice
Citação:
Postado originalmente por Daniels
hum... isso eu entendi, mas minha duvida eh como faço para conseguir executar um arquivo via ftp :roll:
Daniels
FTP significa File Transfer Protocol (Protocolo de Transferência de Arquivos)... sendo assim, vc somente conseguirá transferir arquivos, não executálos... a melhor maneira realmente é vc criar um serviço como lhe falei à abrir outros acessos pra este user...
quanto menos recursos vc deixar disponível para usuários, menos vulnerável será o teu server... este é um típico caso que se vc der acesso shell pro user (como vc disse acima que ele tem), vc estará dando pra ele um 'canivete suíço', quando ele precisa somente descascar uma laranja...
pod crer...
Flw