+ Responder ao Tópico



  1. #1
    gnrage
    Visitante

    Padrão Solicitar informações de um programa em outro servidor

    Boa tarde...

    Sou iniciante em linux, e gostaria de saber se há alguma maneira de um servidor executar um programa que está instalado em outro servidor, o qual irá retornar uma string de texto contendo a informação desejada.
    Pesquisei vários locais e fóruns mas ainda não encontrei uma forma de resolver esse problema.
    Trata-se de uma aplicação para web em multi-camadas: um servidor web, um servidor de aplicação e um servidor de banco de dados. O servidor de aplicação possui um programa que acessa o banco de dados e retorna certos valores.
    Estou desenvolvendo uma consulta via web, a qual deverá devolver as mesmas informações. Para evitar que haja inconsistência ou versões diferentes entre os servidores, gostaria que o servidor web disparasse algum comando com parâmetros para o servidor de aplicação, o qual executaria esse programa e retornaria essas informações.
    Tentei o SSH mas não foi suficiente.

    Desde já agradeço pela colaboração.

  2. #2

  3. #3

    Padrão

    então...
    Que tipo de dados o seu servidor de aplicação retorna?
    texto, blobs ou o que?
    Qual linguagem você pretende usar no servidor web?
    Dependendo do tipo e do nível de segurança que você deseje implementar voce faria um "wrapper" em torno desta aplicação, de forma que ela passe a receber as requisições via rede. Assim você teria 3 opções:
    1 - usar shell script+inetd, que eu considero a opção menos segura
    2 - Instalar um servidor web no servidor de aplicação e usar uma linguagem de script (python, php) para executar chamadas exec nesse binário e retonar resultados como xml para ser usado pelo servidor web, que também pode ser facilmente exploitável (procure por "shell injection")
    3 - utilizar bibliotecas de acesso ssh+login por meio de chaves no servidor para que o servidor web acesse o servidor aplicação remotamente por meio de conexão encriptada como boa parte das linguagens web possuem acesso ssh nativo a performance pode ser melhorada. Ainda assim existem aspectos de segurança relacionados a code injection no servidor web, tornando o servidor aplicação menos vulnerável (exceto quando utilizando o servidor web como meio pra ataque)

    Então, pra responder exatamente sua pergunta é necessário um pouco mais de informação sobre a aplicação e a estrutura que você tem ai.

  4. #4
    gnrage
    Visitante

    Padrão

    Olá...
    A linguagem pra web que estou usando é o PHP, e a aplicação retornará texto. Eu posso configurar para ser simplesmente uma string de texto ou posso devolver o resultado através de um arquivo .txt.
    O que eu preciso é através do comando exec do PHP chamar esse programa no servidor de aplicação e passar alguns parâmetros
    tipo: exec ("ssh:192.168.0.2: programa parametro_1 parametro_2");,
    e poder usar o texto que o programa vai retornar na página em PHP.