« Services/Remote/VNC/TigerVNC » : différence entre les versions
Aucun résumé des modifications |
|||
| (Une version intermédiaire par le même utilisateur non affichée) | |||
| Ligne 1 : | Ligne 1 : | ||
[[Fichier:LogoTigerVNC.svg|200px|right]] | |||
== Installation == | == Installation == | ||
| Ligne 45 : | Ligne 46 : | ||
systemctl enable vncserver@:1.service | systemctl enable vncserver@:1.service | ||
</syntaxhighlight> | </syntaxhighlight> | ||
{{Admon/tip|Rechargement de systemd après modification|Une fois le fichier enregistrer, il faut, à chaque modification du fichier <path>/etc/systemd/system/vncserver@:1.service</path>, recharger systemd | |||
<syntaxhighlight lang="bash"> | |||
systemctl --system daemon-reload | |||
</syntaxhighlight>}} | |||
== Mise en place des Mots de passe VNC == | == Mise en place des Mots de passe VNC == | ||
| Ligne 68 : | Ligne 73 : | ||
=== Firewall === | === Firewall === | ||
Il faudra répeter l'opération autant de fois qu'il y a de serveurs VNC déclarés, en modifiant, bien sur, le port correspondant au serveur. | |||
==== Pour les anciennes versions d'<app>iptables</app> ==== | ==== Pour les anciennes versions d'<app>iptables</app> ==== | ||
Dernière version du 5 septembre 2013 à 08:32
Installation
yum install tigervnc-server
Configuration
La configuration dépend du système de démarrage utilisé par la distribution.
Chaque serveur VNC sera associé à un numéro de port VNC ( le port VNC 1 est le port système 5901, le port VNC 2 est le port système 5902, etc... )
On va maintenant ajouter l'utilisateur didier au service sur le port VNC 1 et spécifier la résolution d'écran à 1280 x 1024, puis on va configurer son démarrage automatique. Le démarrage du service, c'est pour plus tard. En effet le service ne peut démarrer sans avoir au préalable ajouter un mot de passe VNC pour chaque utilisateur ( en fait, si, mais il n'est pas utilisable, ce qui revient au même ... ).
Avec le classique SysVinit
Il suffit de rajouter les deux lignes suivantes au fichier <path>/etc/sysconfig/vncservers</path> pour chaque utilisateur
VNCSERVERS="1:didier" VNCSERVERARGS[1]="-geometry 1280x1024 -depth 16"
On active le démarrage automatique
chkconfig --level 2345 vncserver on
Avec Systemd
Ici, il y aura autant de fichiers de configuration que d'utilisateur. Le fichier copié comporte le numéro de port VNC dans son nom (après l'arobase).
cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
On modifie donc le fichier fichier <path>/etc/systemd/system/vncserver@:1.service</path> que nous venons de copier.
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=forking
ExecStart=/sbin/runuser -l didier -c "/usr/bin/vncserver %i -geometry 1280x1024"
ExecStop=/sbin/runuser -l didier -c "/usr/bin/vncserver -kill %i"
[Install]
WantedBy=multi-user.target
On active le démarrage automatique, à répéter autant de fois qu'il y a d'utilisateurs configurés
systemctl enable vncserver@:1.service
Mise en place des Mots de passe VNC
Pour chaque utilisateur, il faudra spécifier un mot de passe en se logguant avec son compte
su - didier
vncpasswd
Démarrage du service
En tant qu'utilisateur root
Avec le classique SysVinit
service vncserver start
Avec Systemd
Ici, il faudra lancer la commande autant de fois qu'il y a d'utilisateurs configurés
systemctl start vncserver@:1.service
Sécurité
Firewall
Il faudra répeter l'opération autant de fois qu'il y a de serveurs VNC déclarés, en modifiant, bien sur, le port correspondant au serveur.
Pour les anciennes versions d'<app>iptables</app>
- Ajout de la règle à chaud
iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 5901 -j ACCEPT - Ajout au fichier <path>/etc/sysconfig/iptables</path> pour que la règle soit présente au prochain démarrage
-A INPUT -p tcp -m state --state NEW -m tcp --dport 5901 -j ACCEPT
Pour les nouvelles versions d'<app>iptables</app>
- Ajout de la règle à chaud
iptables -I INPUT -p tcp -m conntrack --ctstate NEW -m tcp --dport 5901 -j ACCEPT - Ajout au fichier <path>/etc/sysconfig/iptables</path> pour que la règle soit présente au prochain démarrage
-A INPUT -p tcp -m conntrack --ctstate NEW -m tcp --dport 5901 -j ACCEPT
SELinux
Si SELinux est activé, il faut autoriser explicitement le forward ssh
setsebool -P sshd_forward_ports 1