Notes de version de Solaris 9 12/02

Bug lié à la sécurité de Sun ONE Application Server

Le serveur d'applications démarre toutes les instances en tant que superutilisateur, autorisant l'accès aux utilisateurs non superutilisateurs en tant que superutilisateurs (4780076)

Plusieurs problèmes sont liés au démarrage du serveur d'applications lorsque Sun ONE Application Server est installé comme partie intégrante de l'installation de Solaris.

Lors de l'installation de Sun ONE Application Server, le script /etc/init.d/appserv et les liens symboliques vers les scripts S84appserv et K05appserv dans les répertoires /etc/rc*.d/ sont installés. Ces scripts provoquent le démarrage et l'arrêt automatiques des instances de serveur d'applications et de serveur d'administration, définies comme faisant partie de l'opération d'installation du serveur d'applications, au démarrage et à l'arrêt du système Solaris.

Le script /etc/init.d/appserv contient la section de code suivante :

case "$1" in
'start')
    /usr/sbin/asadmin start-appserv
    ;;
'stop')
    /usr/sbin/asadmin stop-appserv
    ;;

L'exécution de la commande asadmin start-appserv provoque le démarrage de l'instance de serveur d'administration et de toutes les instances de serveur d'applications, définies dans tous les domaines d'administration, au démarrage du système Solaris. Le script de démarrage de chaque instance de serveur d'applications et de serveur d'administration est exécuté en tant que superutilisateur, étant donné que les scripts de démarrage et d'arrêt du système sont eux-mêmes exécutés en tant que superutilisateur. Le script de démarrage au niveau de l'instance est appelé startserv et se trouve dans le répertoire instance-dir/bin/startserv . Les scripts startserv peuvent être modifiés par l'utilisateur non superutilisateur dans le cadre de l'exécution de commandes en tant que superutilisateur, étant donné que les instances peuvent appartenir à des utilisateurs autres que les superutilisateurs.

Si une instance utilise le port réseau privilégié, son script startserv doit être exécuté en tant que superutilisateur. Cependant, run as user est normalement défini dans la configuration de l'instance, afin de forcer l'instance à s'exécuter en tant qu'utilisateur spécifié après son démarrage par le superutilisateur.

Solution : choisissez l'une des solutions proposées ci-dessous, en fonction de votre environnement.

Considérations de démarrage : lorsque vous modifiez les scripts de démarrage de l'environnement d'exploitation Solaris de façon à ce qu'ils démarrent automatiquement des domaines d'administration de serveur d'applications spécifiques ou des instances de serveur d'applications spécifiques, prenez en compte ce qui est indiqué ci-dessous.

Reportez-vous au Sun ONE Application Server 7 Administrator's Guide pour de plus amples informations sur les commandes startup et shutdown disponibles par l'intermédiaire de l'interface de la ligne de commande asadmin.