Quelle est la façon sûre d'autoriser Java 7 à s'exécuter sur SELinux

Version courte: Quel est le moyen le plus sûr de permettre à Java 7 de s'exécuter (avec?) SELinux?

Version longue:

Désolé d'avance si j'utilise une terminologie incorrecte. Je suis vraiment un développeur Java avec peu de connaissances Linux.

Je viens d'installer Java 7 sur CentOS version 5.3 (Final) qui a apparemment Security Enhanced Linux. Une fois l'installation terminée (que j'ai "installée" en décompressant le file tar.gz d'Oracle dans /usr/java/jdk/jdk1.7.0_25 ), j'ai lancé java -version et j'ai eu cette erreur:

 Error: dl failure on line 864 Error: failed /usr/java/jdk1.7.0_25/jre/lib/i386/server/libjvm.so, because /usr/java/jdk1.7.0_25/jre/lib/i386/server/libjvm.so: cannot restore segment prot after reloc: Permission denied` 

J'ai trouvé quelques articles indiquant que cela peut être dû à SELinux et essayer setenforce 0 et voir si le problème disparaît. J'ai couru cette command et Java a fonctionné. Mais ces mêmes articles disent que quitter setenforce 0 sur un hôte connecté à Internet est dangereux, et mon hôte est connecté à Internet.

Il y a d'autres articles qui suggèrent cette prochaine approche, mais qui disent aussi que cela peut être dangereux, donc je ne l'ai pas encore essayé.

 chcon -t textrel_shlib_t /usr/jre1.7.0_10/lib/i386/client/libjvm.so 

… dans la command ci-dessus le path à la fin de la command est remplacé par le path de mon JDK.

Ce que je ne peux pas find est quelque chose "officiel" (qui peut signifier beaucoup de choses) sur la façon d'exécuter Java 7 sur (avec?) SELinux en toute security. Est-ce que quelqu'un a des informations pour moi?

Edit: J'ai découvert un article faisant reference à l'édition de /etc/selinux/config . J'ai mis comme indiqué dans l'échantillon ci-dessous. Cela permet à Java de fonctionner mais je suppose que j'ai maintenant des trous de security.

 # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - SELinux is fully disabled. SELINUX=permissive # SELINUXTYPE= type of policy in use. Possible values are: # targeted - Only targeted network daemons are protected. # ssortingct - Full SELinux protection. SELINUXTYPE=targeted 

  1. Nettoyer l'installation actuelle

  2. Téléchargez le file RPM ( http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html )

     yum -y localinstall /path/to/downloaded-java.rpm 

le repos sera pris en charge.