Firewall do Windows 7 com itens de linha binários do Java SE:

0

Quando eu estava na janela Programas Permitidos no firewall, notei não um, mas dois itens de linha identificados como "binário Java (TM) Platform SE".

Um deles foi marcado apenas como Início / Trabalho (Particular) e o outro foi verificado apenas em Público.

Minha primeira pergunta foi por que um desses é verificado em público? Por que um deles precisa ser acessível publicamente? Eu não estava realmente pensando sobre as conseqüências de excluí-lo, mas acabei excluindo o item de linha que havia sido verificado para Público, pensando: Bem (a) eles parecem enganados (ambos são chamados de "Java (TM) Platform SE"). binário "), mas (b) um deles é definido como público, o que parece inseguro, então eu vou deletar esse completamente.

Agora estou pensando se os dois itens de linha devem estar lá. Uma das razões pelas quais estou me perguntando é que, quando olho para o [Detalhes] do único item de linha restante, vejo que ele aponta para C: \ arquivos de programas \ java \ jdk1.6.0_22 \ bin \ javaw.exe e agora Eu estou querendo saber se o outro item de linha apontou para algo diferente de javaw.exe.

Alguém mais vê uma configuração que possa esclarecer as coisas para mim? Obrigado por qualquer ajuda e conselhos.

ATUALIZAÇÃO: Eu apenas pensei nisso. O outro item de linha pode ter sido ajustado para Public porque é uma comunicação com o Oracle para atualizações (como aqueles avisos que aparecem a cada dois meses na bandeja do menu inferior direito dizendo que há uma nova versão do Java que você deseja instalar?) . Algum usuário do Windows 7 com Java SE pode me dizer se vê dois itens de linha dizendo "Java (TM) Platform SE binary" no painel Firwall Allowed Programs e me dizer qual é o outro .exe além do javaw.exe?

Obrigado novamente, tudo.

Depois de fazer mais alguns trabalhos baseados em Java, descobri que um item de linha extra binário SE é adicionado dinamicamente pelo SO na lista de Programas Permitidos sob algumas circunstâncias. O que eu tinha originalmente eliminado da lista foi re-adicionado (ambos são javaw.exe) e estou confiante de que as coisas são como deveriam ser agora.

    
por user33666 25.03.2011 / 19:00

1 resposta

1

No Windows, o JRE tem dois comandos para executar aplicativos Java: java.exe para console e javaw.exe para programas GUI. (Isso é necessário por causa da distinção "gráfico vs console" no Windows.) Eles funcionam exatamente da mesma maneira, mas se você executar a versão do console, java.exe , o Windows abrirá automaticamente uma janela de console para ele (se não funcionar) Já tenho um).

O motivo pelo qual você tem tanto a configuração do seu firewall é simples: dois programas baseados em Java solicitaram acesso, um dos quais estava usando o modo GUI e o outro não.

Uma desvantagem grande do bytecode e dos tempos de execução da linguagem interpretada é que todos eles aparecem para o SO como o mesmo processo. Todos os programas Java são executados como java.exe (ou javaw.exe ), todos os programas Python são executados como /usr/bin/python , todos os programas Perl são executados como perl.exe e assim por diante. (No Windows, uma exceção é o tempo de execução do Microsoft .NET, que usa o mesmo formato .exe e é capaz de reter a identidade do processo .)

Do ponto de vista do firewall, isso torna a filtragem baseada em aplicativos inútil, porque você não pode atribuir confiança a um aplicativo específico, mas apenas a todo o tempo de execução (e a todos os aplicativos que o executam).

No Windows XP, eu removi ambas entradas Java e as adicionei novamente como porta . Como o firewall do XP só lida com conexões de entrada, não tenho certeza se o mesmo funcionaria no Windows 7, mas você deve tentar. (Permitindo saída conexões para java.exe é, IMHO, tudo bem.)

    
por 25.03.2011 / 19:10