Comment activer Java dans Firefox : 3 méthodes pour exécuter du contenu Java hérité
Les applets Java ne sont plus pris en charge par aucun navigateur web moderne, y compris Mozilla Firefox. Mozilla a définitivement abandonné la prise en charge des plugins NPAPI — l’architecture qui rendait les applets Java possibles — à partir de Firefox 52 en 2017. Si vous avez besoin d’exécuter une application web Java héritée aujourd’hui, vous ne pouvez pas simplement activer un paramètre dans une version actuelle de Firefox ; vous devez utiliser l’une des trois solutions de contournement délibérées, chacune présentant des compromis distincts en matière de sécurité et d’exploitation.
Ce guide couvre toutes les méthodes viables avec des détails techniques précis, y compris les risques que la plupart des tutoriels omettent.
Pourquoi Java ne fonctionne plus dans Firefox moderne
Comprendre la cause profonde évite de perdre du temps en dépannage inutile. Les applets Java dans les navigateurs dépendaient de NPAPI (Netscape Plugin Application Programming Interface), une architecture de plugins datant du milieu des années 1990. NPAPI accordait aux plugins un accès quasi illimité au système hôte, ce qui en faisait une surface d’attaque persistante pour les exploits d’exécution de code à distance.
La chronologie de la dépréciation s’est déroulée comme suit :
- 2015 : Google Chrome a complètement abandonné la prise en charge de NPAPI.
- 2016 : Mozilla a commencé à bloquer les plugins NPAPI par défaut dans Firefox.
- Mars 2017 : Firefox 52 est devenu la dernière version à prendre en charge NPAPI. Firefox ESR 52 a prolongé cette prise en charge jusqu’à mi-2018.
- 2018–présent : Toutes les versions de Firefox sont livrées sans aucune prise en charge de NPAPI. Aucune extension, aucun indicateur ni aucune modification
about:configne peut la restaurer dans une version moderne.
Oracle lui-même a déprécié le plugin Java pour navigateur dans JDK 9 (2017) et l’a entièrement supprimé dans JDK 11. Cela signifie que même si Firefox acceptait encore les plugins NPAPI, le plugin lui-même n’est plus inclus dans les distributions Java modernes.
L’implication pratique : toute méthode qui prétend « activer Java dans Firefox » sur une version actuelle est soit trompeuse, soit implique l’exécution d’un moteur de navigateur séparé et plus ancien en dessous.
Comparaison des trois méthodes
| Méthode | Risque de sécurité | Complexité | Coût | Idéal pour |
|---|---|---|---|---|
| — | — | — | — | — |
| Ancien Firefox ESR 52 | Élevé — CVE non corrigées | Faible | Gratuit | Accès ponctuel rapide sur une machine isolée |
| IE Tab / Émulateur de navigateur | Moyen — dépend de la version d’IE | Faible–Moyen | Gratuit / Niveaux payants | Accès occasionnel sur un poste de travail Windows géré |
| Machine virtuelle avec navigateur hérité | Faible — entièrement isolé | Élevé | Gratuit (VirtualBox) | Utilisation fréquente ou à long terme des applets Java |
Méthode 1 : Utiliser Firefox ESR 52 avec le plugin Java NPAPI
Firefox ESR (Extended Support Release) 52 était la dernière branche à inclure la prise en charge de NPAPI. L’installer avec un JRE compatible vous offre un environnement d’applets Java fonctionnel, bien qu’il présente une exposition sécuritaire sérieuse.
Étape 1 : Télécharger Firefox ESR 52
L’archive FTP officielle de Mozilla héberge toutes les versions historiques. Accédez à :
https://ftp.mozilla.org/pub/firefox/releases/52.9.0esr/Sélectionnez le sous-répertoire correspondant à votre système d’exploitation (win32, win64, linux-x86_64, mac) et votre langue. Téléchargez l’installateur directement — évitez les sites miroirs tiers, qui peuvent inclure des adwares ou des binaires altérés.
Étape 2 : Installer Firefox ESR 52 dans un profil isolé
N’installez pas cette version par-dessus votre Firefox actuel. Sur Windows, utilisez un chemin d’installation personnalisé tel que C:FirefoxESR52. Sur Linux, extrayez l’archive tarball dans un répertoire séparé :
tar -xjf firefox-52.9.0esr.tar.bz2 -C ~/firefox-esr52/Lancez-le avec un profil dédié pour éviter toute contamination croisée avec les données de votre navigateur principal :
~/firefox-esr52/firefox/firefox --profile ~/.mozilla/firefox-esr52-profile --no-remoteÉtape 3 : Désactiver les mises à jour automatiques
Après le premier lancement, accédez à Options > Général > Mises à jour de Firefox et sélectionnez « Vérifier les mises à jour mais me laisser choisir de les installer. » Mieux encore, bloquez le service de mise à jour de Firefox au niveau réseau ou via une entrée dans le fichier hosts si ce navigateur doit être utilisé de manière continue.
Étape 4 : Installer un environnement d’exécution Java compatible
JRE 8 Update 161 d’Oracle était la dernière version à inclure le plugin NPAPI pour navigateur avant qu’Oracle ne le supprime discrètement dans les versions 8u ultérieures. Téléchargez JRE 8u161 depuis les archives d’Oracle (nécessite un compte Oracle gratuit) ou depuis une distribution OpenJDK de confiance qui inclut encore le plugin.
Vérifiez que le fichier du plugin existe après l’installation. Sur Windows, recherchez :
C:Program FilesJavajre1.8.0_161binplugin2npjp2.dllSur Linux :
find /usr/lib/jvm/ -name "libnpjp2.so"Étape 5 : Activer Java dans Firefox ESR 52
- Ouvrez Firefox ESR 52 et tapez
about:addonsdans la barre d’adresse. - Cliquez sur Plugins dans la barre latérale gauche.
- Localisez Java(TM) Platform SE (ou similaire).
- Définissez le menu déroulant sur Toujours activer.
Si le plugin n’apparaît pas, Firefox ne trouve pas le répertoire du plugin. Définissez manuellement le chemin du plugin en créant ou en modifiant le fichier pluginreg.dat, ou en définissant la variable d’environnement MOZ_PLUGIN_PATH avant le lancement :
export MOZ_PLUGIN_PATH=/usr/lib/jvm/jre1.8.0_161/lib/amd64/
~/firefox-esr52/firefox/firefox --no-remoteAvertissement de sécurité critique
Firefox ESR 52 présente des centaines de CVE non corrigées accumulées depuis 2018. Ne l’utilisez jamais comme navigateur à usage général. Ne stockez jamais de mots de passe, de cookies ou de jetons de session dans celui-ci. Traitez-le comme un outil à usage unique pour une application interne spécifique, et exécutez-le sur une machine qui n’est pas exposée à l’internet ouvert dans la mesure du possible.
Méthode 2 : Utiliser une extension IE Tab ou un émulateur de navigateur basé sur Chromium
Cette méthode fonctionne en intégrant le moteur de rendu d’Internet Explorer (Trident) ou de l’ancien Edge dans un onglet de navigateur. Étant donné qu’IE prenait nativement en charge Java via ActiveX/NPAPI sur Windows, cette approche peut exécuter des applets Java sans modifier votre installation principale de Firefox.
Clarification importante sur la prise en charge des navigateurs
L’extension IE Tab est officiellement prise en charge sur Google Chrome et les navigateurs basés sur Chromium (Edge, Brave, Vivaldi). Un portage pour Firefox existe mais n’est pas officiellement maintenu et présente des fonctionnalités limitées. Pour que cette méthode fonctionne de manière fiable, utilisez Chrome ou Microsoft Edge avec l’extension IE Tab.
Si votre flux de travail est centré sur Firefox, cette méthode nécessite une installation parallèle de Chrome pour les tâches spécifiques à Java — un compromis raisonnable pour les utilisateurs qui ne peuvent pas utiliser une VM complète.
Étape 1 : Installer IE Tab sur Chrome
Installez IE Tab depuis le Chrome Web Store. L’extension nécessite l’installation d’un petit composant hôte de messagerie natif sur Windows, qu’elle vous invite à télécharger lors de la première utilisation. C’est ce composant qui invoque réellement le moteur IE.
Cette méthode fonctionne uniquement sur Windows. Le moteur de rendu IE (Trident/mshtml.dll) n’existe pas sur macOS ou Linux.
Étape 2 : Configurer Java dans Internet Explorer
Avant d’utiliser IE Tab, assurez-vous que Java est correctement configuré dans IE lui-même :
- Ouvrez Internet Explorer (toujours présent sur Windows 10 en tant qu’application héritée).
- Accédez à Outils > Options Internet > Sécurité.
- Sélectionnez la zone Internet ou Sites de confiance et cliquez sur Personnaliser le niveau.
- Faites défiler jusqu’à Script des applets Java et définissez-le sur Activer.
- Assurez-vous que le plugin Java est répertorié et activé sous Outils > Gérer les modules complémentaires > Barres d’outils et extensions.
Étape 3 : Charger le site Java via IE Tab
- Accédez à l’URL cible dans Chrome.
- Cliquez sur l’icône IE Tab dans la barre d’outils (ou faites un clic droit et sélectionnez Ouvrir dans IE Tab).
- La page se recharge dans le moteur IE intégré dans l’onglet Chrome.
- Les applets Java devraient s’initialiser comme ils le feraient dans une session IE autonome.
Limitations et cas particuliers
- Mise en garde Windows 11 : Microsoft a supprimé Internet Explorer de Windows 11 en tant qu’application autonome. Le moteur
mshtml.dllsous-jacent existe toujours pour la compatibilité héritée, mais son comportement avec les plugins Java est incohérent. Testez soigneusement avant de vous y fier dans un environnement Windows 11. - Invites de sécurité Java : Les boîtes de dialogue de sécurité Java d’IE peuvent apparaître derrière la fenêtre Chrome. Utilisez Alt-tab pour les trouver si l’applet semble se bloquer.
- ActiveX vs. NPAPI : IE utilise ActiveX pour Java, pas NPAPI. Le plugin Java pour IE est un composant séparé (
jp2iexp.dll) du plugin NPAPI de Firefox. Assurez-vous que le bon plugin est installé.
Méthode 3 : Machine virtuelle avec un navigateur hérité
Une machine virtuelle offre l’isolation la plus forte et est l’approche recommandée pour tout environnement où l’accès aux applets Java est une exigence opérationnelle récurrente. Le navigateur hérité et sa surface d’attaque sont entièrement contenus dans les limites de la VM.
Étape 1 : Choisir et installer un logiciel de virtualisation
VirtualBox (gratuit, open-source, multiplateforme) et VMware Workstation Player (gratuit pour usage personnel) sont les deux principales options.
# Install VirtualBox on Ubuntu/Debian
sudo apt update && sudo apt install virtualbox virtualbox-ext-pack -yPour les hôtes Windows, téléchargez l’installateur VirtualBox depuis virtualbox.org et exécutez-le avec les paramètres par défaut.
Étape 2 : Créer la machine virtuelle
Pour la compatibilité des applets Java, Windows 7 32 bits ou Windows 7 64 bits dans la VM offre l’environnement le plus fiable. Windows 7 dispose d’une prise en charge native d’IE 11 et d’une large compatibilité avec les plugins Java. Alternativement, une distribution Linux légère avec Firefox ESR 52 fonctionne bien et nécessite moins d’espace de stockage.
Allocation de ressources VM recommandée pour ce cas d’utilisation :
- RAM : 2 Go minimum (4 Go recommandé pour Windows 7)
- Disque : 40 Go alloués dynamiquement
- CPU : 2 cœurs virtuels
- Réseau : NAT (restreint l’accès réseau de la VM aux connexions sortantes uniquement via l’hôte)
Étape 3 : Installer le navigateur hérité et le JRE dans la VM
Suivez les mêmes étapes que la Méthode 1, mais exécutez-les entièrement dans la VM. L’avantage clé : même si un applet Java malveillant exploite une vulnérabilité dans le navigateur ou le JRE, les dommages sont contenus dans le snapshot de la VM. Vous pouvez revenir à un snapshot propre en quelques secondes.
La discipline de snapshot est essentielle. Prenez un snapshot propre immédiatement après avoir configuré le navigateur et le JRE, avant de charger tout contenu externe. Nommez-le clairement :
Snapshot: Clean Java Environment - [date]Étape 4 : Configurer la mise en réseau de la VM selon le principe du moindre privilège
Si l’application Java n’a besoin de communiquer qu’avec un serveur interne spécifique ou une plage d’IP, configurez l’adaptateur réseau de la VM pour utiliser la mise en réseau Hôte uniquement et configurez une route statique sur l’hôte. Cela empêche la VM d’atteindre l’internet au sens large :
# On the host, add a route so the VM can only reach the target server
# Example: VM is on 192.168.56.0/24, target server is 10.0.0.50
sudo ip route add 10.0.0.50/32 via 192.168.56.1Étape 5 : Accéder au contenu Java
Lancez la VM, ouvrez le navigateur hérité et accédez à l’application Java. Pour les applications fréquemment consultées, créez un raccourci bureau ou un script de démarrage sur l’hôte qui lance la VM et ouvre le navigateur vers l’URL cible automatiquement en utilisant les fonctionnalités --startvm et de contrôle des invités de VirtualBox.
Pourquoi cette méthode est architecturalement supérieure
L’exécution de logiciels obsolètes dans une VM est une pratique standard dans les environnements d’entreprise pour maintenir l’accès aux applications métier héritées. La VM agit comme une frontière de sécurité : le système d’exploitation hôte, votre navigateur principal et toutes les autres applications restent non affectés, quoi qu’il se passe dans la VM. C’est le même principe utilisé dans les produits d’isolation de navigateur et les architectures SASE (secure access service edge).
Si vous exécutez des applications Java côté serveur plutôt que des applets de navigateur — par exemple, une application web Java sur un VPS — le problème du plugin de navigateur n’est pas pertinent. Les frameworks web Java modernes (Spring Boot, Quarkus, Micronaut) s’exécutent entièrement côté serveur. Un environnement d’Hébergement VPS correctement configuré gère ces applications sans aucune dépendance aux plugins de navigateur.
Alternatives aux applets Java à considérer
Si vous avez une quelconque influence sur l’application nécessitant Java, migrer en dehors des applets est la solution correcte à long terme. L’écosystème des plugins de navigateur a évolué de manière décisive.
Technologies de remplacement par cas d’utilisation :
- Interface utilisateur interactive / visualisation de données : JavaScript avec Canvas API, WebGL, D3.js ou Three.js
- Communication en temps réel : WebSockets, WebRTC
- Calcul haute performance dans le navigateur : WebAssembly (WASM) — peut exécuter du C, C++ et Rust compilés à une vitesse quasi native
- Livraison d’applications de type bureau : Progressive Web Apps (PWAs) ou applications de bureau basées sur Electron
- Logique Java côté serveur : Exposez-la comme une API REST ou GraphQL consommée par un frontend moderne
Pour les organisations exécutant des applications serveur Java nécessitant un hébergement fiable, un Serveur Dédié fournit les ressources brutes et l’accès root complet nécessaires pour exécuter des serveurs d’applications Java (Tomcat, WildFly, GlassFish) à grande échelle sans contention de ressources.
Si votre application Java héritée est hébergée sur le web et que vous avez besoin d’une connexion sécurisée vers celle-ci, associer votre hébergement à un Certificat SSL valide garantit un transport chiffré même pour les piles d’applications plus anciennes.
Matrice de décision pratique
Utilisez cette liste de contrôle pour sélectionner la bonne méthode selon votre situation :
Utilisez la Méthode 1 (Firefox ESR 52) si :
- Vous avez besoin d’un accès ponctuel ou très peu fréquent
- Vous êtes sur une machine sans connectivité internet ou avec des règles de pare-feu strictes
- Vous ne pouvez pas installer de logiciel de virtualisation en raison de contraintes matérielles ou de politique
Utilisez la Méthode 2 (IE Tab / Émulateur IE) si :
- Vous êtes sur Windows 10 avec IE encore disponible
- L’application Java est un outil d’entreprise interne sur un réseau de confiance
- Vous avez besoin de la configuration la plus simple possible avec un minimum de surcharge
Utilisez la Méthode 3 (Machine virtuelle) si :
- Vous avez besoin d’un accès régulier et continu au contenu des applets Java
- La sécurité et l’isolation sont des exigences organisationnelles
- Vous souhaitez la possibilité de prendre des snapshots et de revenir en arrière dans l’environnement
- Plusieurs utilisateurs ont besoin du même environnement Java (exportez et distribuez l’image VM)
Envisagez de migrer complètement en dehors des applets Java si :
- Vous contrôlez ou pouvez influencer le développement de l’application
- L’application est destinée aux clients ou exposée à internet
- La fonctionnalité Java peut être répliquée avec WebAssembly ou un framework JavaScript moderne
Pour les équipes gérant plusieurs propriétés web ou environnements clients, les Panneaux de contrôle VPS peuvent simplifier l’administration des applications Java côté serveur sans nécessiter un accès en ligne de commande direct pour chaque opération.
Si votre cas d’utilisation implique l’hébergement d’une application web qui dépendait auparavant des applets Java pour la gestion de fichiers ou les fonctionnalités de messagerie, les solutions modernes d’Hébergement Email et d’Hébergement Web Mutualisé gèrent ces flux de travail nativement via des interfaces web ne nécessitant aucun plugin de navigateur.
FAQ
Puis-je réactiver Java dans la version actuelle de Firefox en modifiant les paramètres about:config ?
Non. Il n’existe aucun indicateur about:config, aucune préférence cachée ni aucune extension qui restaure la prise en charge des plugins NPAPI dans Firefox 53 ou version ultérieure. Le sous-système NPAPI a été entièrement supprimé du code source, pas seulement désactivé. La seule façon d’exécuter des applets Java dans un navigateur de marque Firefox est d’utiliser une version archivée de Firefox ESR 52 ou antérieure.
Quelle version de JRE est compatible avec le plugin Java NPAPI de Firefox ?
JRE 8 Update 161 (8u161) est la dernière version largement disponible qui inclut le plugin NPAPI (npjp2.dll sur Windows, libnpjp2.so sur Linux). Les versions 8u ultérieures ont discrètement supprimé le plugin. JRE 9, 11 et toutes les versions LTS ultérieures n’incluent aucun plugin de navigateur.
Est-il sûr d’exécuter Firefox ESR 52 sur une machine connectée à internet ?
Non. Firefox ESR 52 n’a pas reçu de correctifs de sécurité depuis mi-2018 et est vulnérable à des centaines d’exploits documentés. Si vous devez l’utiliser, faites-le sur une machine derrière un pare-feu strict, sans navigation générale, et idéalement avec un accès réseau restreint uniquement au serveur spécifique sur lequel l’application Java s’exécute.
La méthode IE Tab fonctionne-t-elle sur macOS ou Linux ?
Non. IE Tab repose sur le moteur de rendu Windows Internet Explorer (mshtml.dll), qui n’existe que sur Windows. Sur macOS et Linux, l’extension ne s’installe pas ou revient à un moteur de navigateur standard qui ne prend pas en charge Java. Pour les systèmes non-Windows, la Méthode 1 ou la Méthode 3 sont les seules options viables.
Quelle est la différence entre un applet Java et une application Java Web Start ?
Un applet Java s’exécute intégré dans une page de navigateur via le plugin NPAPI. Java Web Start (JNLP) lance une application Java autonome depuis un lien de navigateur sans l’intégrer dans la page — il utilise le lanceur javaws. Java Web Start a également été déprécié dans JDK 9 et supprimé dans JDK 11, mais OpenWebStart (une réimplémentation open-source) peut encore exécuter des applications JNLP sur des systèmes modernes sans aucune dépendance aux plugins de navigateur, ce qui en fait une voie plus viable que les applets pour la livraison d’applications Java héritées.
