Eu tenho um aplicativo php que se conecta a outro aplicativo chamado Solr (mecanismo de busca de banco de dados). Posso, através deste aplicativo php, adicionar/remover documentos (registros) do índice Solr.
No entanto, a segurança do Solr é baixa e qualquer pessoa com o número da porta correto pode acessar o Solr e remover documentos (registros).
Eu me pergunto, é possível permitir SOMENTE que meu próprio aplicativo php tenha acesso ao Solr de alguma forma? De preferência via Iptables. Estou pensando que só posso permitir o IP dos meus próprios servidores para essa porta, e isso resolveria meu problema, porque PHP é um código do lado do servidor. Mas eu não tenho certeza.
Sobre o aplicativo Php:
O site é um site de classificados, e quando o usuário deseja adicionar ou remover classificados, o faz através de um aplicativo php, que é este. O aplicativo possui uma função que se conecta ao solr e atualiza o banco de dados (índice).
Agradeço respostas detalhadas...
Obrigado
Responder1
Você não pode fazer isso com o iptables. Sua melhor aposta é usar algo no solr
Responder2
Não, você não pode controlar qual aplicativo se conecta a uma porta específica, mesmo na máquina local (você pode fazer isso com permissões de arquivo e soquetes de domínio Unix - mas não em uma rede).
Sim, você deve restringir o acesso à rede na porta SOLR a uma lista branca específica. E se houver máquinas conectadas de fora da LAN local, considere usar IPSEC ou VPN e restringir o acesso a isso.
Alternativamente, para acesso remoto, você pode considerar proibir TODOS os acessos à porta SOLR, exceto para o host local em execuçãotúnelem ambas as extremidades e exigir a validação do certificado do cliente - e executar sua própria CA de óleo de cobra, se necessário.
HTH
C.