Qual é a maneira preferida de usar números de porta baixos no linux?

1

Resumindo: Eu quero que o Glassfish ouça a porta 80 para que você não tenha que especificar a porta ao digitar o URL, mas o linux não permite usar números de porta baixos sem rootfish root e running, pois root é um risco de segurança.

Qual é a melhor maneira de contornar isso? Fazendo algum tipo de exceção para que o glassfish sozinho possa ouvi-la, usando algum outro programa para encaminhar solicitações da porta 80 para alguma outra porta? Talvez haja alguma maneira de dar permissão a glassfish apenas para usar qualquer porta sem realmente dar root?

    
por leinaD_natipaC 02.03.2015 / 12:58

3 respostas

1

What is the best way to get around this?

O que é dado no glassfish em si.

Direto de linux-service.template :

# Example commands that demonstrate how to run GlassFish on the "special" ports < 1024
#
# iptables -t nat -A PREROUTING -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8080
# iptables -t nat -A PREROUTING -p udp -m udp --dport 80 -j REDIRECT --to-ports 8080

Sim, seria bom se o glassfish pudesse receber um descritor de arquivos de escuta para que pudesse ser executado sob algo como s6-tcpserver ou ativado por soquete pelo systemd. Não é projetado para operar em qualquer coisa assim, no entanto.

Leitura adicional

por 02.03.2015 / 18:39
0

Você poderia usar uma cópia do bash ...
O que quero dizer é que você poderia fazer uma versão separada do bash em um dos seus diretórios $PATH e chamá-lo bash1 ou algo assim.
Então o que você poderia fazer é dar permissões diferentes para que você pudesse rodar glassfish com bash1 ao invés de bash.
Isso significaria que tyat bash permaneceria inalterado e você teria sua própria versão de permissões separadas do bash para instâncias como glassfish . A única desvantagem é que isso significaria que você teria que regulamentar isso apenas para certos programas e usuários ou todo o sistema poderia ser solapado ...

    
por 02.03.2015 / 13:28
0

Embora não seja tão usado quanto antes, o 'chroot' é uma ferramenta que melhora a segurança de processos que devem ser executados com privilégios de root. É preciso um esforço extra, pois você está criando uma pasta / virtual com todos os arquivos que seu aplicativo precisa, incluindo bibliotecas (compilado o programa estaticamente vinculado) Dessa forma, se algum processo quebrar sua segurança, ele estará em um sandbox limitado. Obviamente você tira todos os programas de suporte desnecessários, como editores e ferramentas de rede.

Um dos métodos preferidos de executar bind / named usa isso, então isso pode ser um bom guia sobre como configurar isso.

Verifique o link para obter mais detalhes.

    
por 02.03.2015 / 15:41

Tags