26 janv. 2016

Prise en main à distance

Document datant de 2010 (j'étais encore en BTS)


OS concernés: Unix / Linux / Mac OS X / Windows

Prendre la main sur un ordinateur à distance est une tâche plutôt aisée.
En effet on distinguera deux sortes de prise en distance:
1- en ligne de commande
2- via l'interface graphique

I/ Se connecter à distance en ligne de commande
1.1) Telnet
Le service telnet n'est plus trop utilisé sur les distributions Unix/Linux récentes, cependant nous pouvons encore le rencontrer. Le problème étant que les données circulant via Telnet ne sont pas cryptée (à voir dans un autre article.)
Bien évidemment pour se connecter à Telnet il faudra que le service soit démarré sur l'ordinateur distant.
On peut noter que ce service peut être aussi activé dans un environnement Microsoft Windows pour accéder à un prompt DOS.

a) Depuis Unix/Linux/Mac OS X vers Unix/Linux/Mac OS X
Exemples de commandes à taper dans le shell (terminal):
telnet 192.168.3.4 (la cible à joindre est donc l'IP 192.168.3.4)
telnet pc209 (et là pc209)

b) Depuis Windows vers Unix/Linux/Mac OS X
On peut utiliser le prompt DOS (pour l'ouvrir: Démarrer > exectuer > cmd) avec les mêmes commandes cité dans "a)" ou via des logiciels tel que PuTTY ou Cygwin.

1.2/ SSH ( Secure SHell)
SSH est plus répendu que Telnet car il est sécurisé et dispose de commandes simplifiant la communication entre hôtes.

a) Depuis Unix/Linux/Mac OS X vers Unix/Linux/Mac OS X
Exemples de commandes à taper dans le shell (terminal) comme pour telnet:
ssh 192.168.3.4 (la cible à joindre est donc l'IP 192.168.3.4)
ssh pc209 (et là pc209)

b) Depuis Windows vers Unix/Linux/Mac OS X
Le prompt DOS n'offrant gère la commande SSH il faudra utilisé un logiciel tel que PuTTY (http://www.chiark.greenend.org.uk/~sgtatham/putty/) ou Cygwin (http://www.cygwin.com) pour se connecter en SSH sur un ordinateur Unix à distance.

II/ Mode graphique à distance
2.1) Export Display
L'export display permet de lancer des logiciels graphiques se trouvant sur un ordinateur distant

a) Depuis Unix/Linux vers Unix/Linux/Mac OS X
Sur un terminal (xterm, konsole ou autre) taper :
$ xhost +
$ ssh user@192.168.2.2 -X
puis essayer de lancer une application graphique (ex: firefox), si ça ne fonctionne pas, taper pour un shell BASH:$ export DISPLAY=l'ip_de_mon_pc:0.0 (ex: export DISPLAY=192.168.2.5:0.0)
ou pour un shell CSH:
$ setenv DISPLAY ip_de_mon_poste:0.0

b) Depuis Mac OS X vers Unix/Linux/Mac OS X
Il faut lancer le terminal X11 (fond blanc) présent dans Applications > utilitaires.
Avant de faire des manipulations présentent dans "a)"

c) Depuis Windows vers Unix/Linux/Mac OS X
Personnellement j'utilise cygwin (un shell unix sous windows). Il faut lancer le service graphique avec la commande:
$ startx
puis un petit terminal X s'ouvrira (ok c'est moche) et permettera de réaliser les manipulations de "a)".
Il y a plus jolie: avec Putty, couplé à Xming (http://sourceforge.net/projects/xming/).
Tout d'abord, lancer Xming après installation. Puis dans Putty; aller dans l'onglet "Connexion > SSH > X11" et cocher la case: "Enable X11 forwarding" puis retourner dans Session et entrer l'adresse de connexion.

puis

Après s'être connecter, on peut alors lancer une application graphique sans problème (sinon voir "a)").

2.2) Prise en main à distance
Il est possible de prendre la main à distance en temps réelle (piquer la souris de la personne)
Ou en se connectant en sous-marins (ouvrir une session et s'amuser seul)

a) Depuis Unix/Linux/Mac OS X vers Unix/Linux

a.1) En réelle
Via VNC , tout est expliquer là (http://bobpeers.com/linux/vnc.php)

a.2) En sous marinSur le poste cible il faut activer de XDMCP sur gdm ou kdm en fonction de celui qui est par défaut:

pour GDM:dans /etc/gdm/custom.conf :
[xdmcp]
Enable=true
pour KDM:dans /etc/kde/kdm/kdmrc :
[Xdmcp]
Enable=true

Redémarrer le gestionnaire graphique (/etc/init.d/[g/k]dm restart)

Puis sur le client taper:

X :1 -query machine cible
b) Depuis Windows vers Unix/Linux

Depuis Windows vers Linux c'est possible avec des utilitaires tel que Xming, Cygwin (libres) ou encore Exceed (propriétaire)

Avec Xming et Exceed c'est assez simple. Cependant sur cygwin il faut taper la commande:

$ XWin -query machine_cible


[SECURITE] Le bouton d’alerte « Gaspard »



Le bouton d’alerte « Gaspard » disponible



gaspardVous vous souvenez de l’idée du Gaspard qui avait été relayé par l’ami Videosdepolice il y a 2 ans, et son créateur Nicolas qui expliquait le concept dans cet interview… un concept simple : Gaspard est un bouton d’alerte déporté de son mobile. On peut le mettre dans sa poche, sur une fermeture éclair… à portée de main, et le manipuler très simplement, il suffit de presser dessus en cas de problème (3 fois, pour éviter les fausses manip). 

Le Gaspard est couplé à votre mobile par Bluetooth.
Alors que se passe-t-il quand on presse (3 fois) sur son Gaspard ?
La liste des personnes que vous aurez définie auparavant sur votre smartphone comme « vos proches Gaspard » recevront une alerte, votre localisation et un itinéraire pour venir vous secourir, soit via l’app Gaspard (s’ils l’ont), soit par SMS.
Le concept est simple et efficace, il se base sur l’entraide et la constitution d’un réseau personnel de personnes de confiance.
Le créateur du Gaspard, Nicolas Desachy, est un jeune français qui en est à son premier projet entrepreneurial. Je vous encourage très vivement à investir dans la « bête » (on parle de moins de 30€), et à le faire connaître à vos amis.




gaspard-app

SOURCE: http://www.protegor.net/blog/2016/01/le-bouton-dalerte-gaspard-est-disponible/

22 janv. 2016

[ANSIBLE] Supprimer un répertoire

Comment supprimer un répertoire avec Ansible ?


Mon environnement:
CentOS 6.6 (orchestrateur) gérant un parc de machines tournant en CentOS 7.2

Ma version de ansible:
$ rpm -qa | grep ansible
ansible-1.9.4-1.el6.noarch

Dans mon fichier yml, j'insère la ligne:

fichier.yml
- name: Nettoyage des rpms
  file:  path=/tmp/rpms state=absent recurse=no

20 janv. 2016

[RHEL/CENTOS 7] ifconfig command not found

La commande ifconfig n'est plus disponible (en config minimal) sur CentOS 7 !

pour installer ifconfig, ou du moins bénéficier de la commande ifconfig, il faut installer le paquet net-tools.


# yum install net-tools
Modules complémentaires chargés : fastestmirror
base                                                                                                                                          | 3.6 kB  00:00:00
extras                                                                                                                                        | 3.4 kB  00:00:00
updates                                                                                                                                       | 3.4 kB  00:00:00
vmware-tools                                                                                                                                  |  951 B  00:00:00
Loading mirror speeds from cached hostfile
 * base: centos.crazyfrogs.org
 * extras: centos.mirror.fr.planethoster.net
 * updates: centos.crazyfrogs.org
Résolution des dépendances
--> Lancement de la transaction de test
---> Le paquet net-tools.x86_64 0:2.0-0.17.20131004git.el7 sera installé
--> Résolution des dépendances terminée

Dépendances résolues

=====================================================================================================================================================================
 Package                              Architecture                      Version                                                Dépôt                           Taille
=====================================================================================================================================================================
Installation :
 net-tools                            x86_64                            2.0-0.17.20131004git.el7                               base                            304 k

Résumé de la transaction
=====================================================================================================================================================================
Installation   1 Paquet

Taille totale des téléchargements : 304 k
Taille d'installation : 917 k
Is this ok [y/d/N]: y
Downloading packages:
net-tools-2.0-0.17.20131004git.el7.x86_64.rpm                                                                                                 | 304 kB  00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installation : net-tools-2.0-0.17.20131004git.el7.x86_64                                                                                                       1/1
  Vérification : net-tools-2.0-0.17.20131004git.el7.x86_64                                                                                                       1/1

Installé :
  net-tools.x86_64 0:2.0-0.17.20131004git.el7

Terminé !

[RHEL/CENTOS 7] Désactiver SELinux et Firewalld (iptables)

Je continue mes péripéties sur CentOS 7... Dans mon cas j'avais besoin de désactiver SELINUX et le Firewall.



Désactiver le Firewall 
# systemctl stop firewalld
# systemctl disable firewalld
rm '/etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service'
rm '/etc/systemd/system/basic.target.wants/firewalld.service'
 Désactiver SELINUX

éditer : /etc/selinux/config

# 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 - No SELinux policy is loaded.

SELINUX=disabled
# change

# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected.
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

Redémarrer la machine:

# reboot
Conclusion : Par rapport à CentOS 6
  • SELINUX, on ne change rien par contre
  • IPTABLES devient FIREWALLD

18 janv. 2016

Configuration réseau sur RHEL/CENTOS 7



Après avoir pas mal travailler sur des CentOS 5 puis CentOS 6 et un passage sur Ubuntu. Il est temps pour moi de passer à CentOS 7.

C'est cette marche irrésistible vers le progrès.

 J'ai trouvé un tuto assez sur l'excellent site server-world.info concernant la configuration du réseau, source : http://www.server-world.info/en/note?os=CentOS_7&p=initial_conf&f=3



Configuration réseaux

Vérification des interfaces réseaux:
# nmcli d
L'interface ens192 n'était pas montée...

Un petit tour dans /etc/sysconfig/network-scripts/ifcfg-ens192
Remplacer ONBOOT=no par ONBOOT=yes

Montage de l'interface :
# ifup ens192
Modification de l'adresse IP
# nmcli c modify ens192 ipv4.addresses 10.250.0.222/24

Modification de la passerelle (gateway)
# nmcli c modify ens192 ipv4.gateway 10.250.0.10
 Utiliser une IP statique "manual", pour remettre en DHCP c'est "auto":
# nmcli c modify ens192 ipv4.method manual

Redémarrer l'interface réseau:
# nmcli c down ens192; nmcli c up ens192
Connection 'ens192' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/0)
Connexion activée avec succès (chemin D-Bus actif : /org/freedesktop/NetworkManager/ActiveConnection/1)
 Un petit script permettant de configurer automatiquement le réseau:
 (centos-postinstall.sh)
#/bin/bash
#
echo "Post-install for CentOS 7"
###
# CONFIGURATION RESEAU
###
echo "[Configure your Hostname]"
read -p "Hostname ? " HOSTNAME
hostnamectl set-hostname $HOSTNAME
#echo HOSTNAME=$HOSTNAME >> /etc/sysconfig/network
#echo -e "NETWORKING=yes\nHOSTNAME=$HOSTNAME\nGATEWAY=10.250.0.10" > /etc/sysconfig/network
echo "---"
echo "[Configure your network]"
INT=`nmcli d status | grep ethernet | awk '{ print $1 }' | head -n1`
echo "Interface utilisée : $INT"
read -p "Entrer l'IP souhaitée (10.250.0.* network) " IP
echo "[IP]"
nmcli c modify $INT ipv4.addresses $IP/24
echo "[PASSERELLE]"
nmcli c modify $INT ipv4.gateway 10.250.0.10
echo "[DNS]"
nmcli c modify $INT ipv4.dns 10.250.0.10
echo "[IP STATIQUE]"
nmcli c modify $INT ipv4.method manual
echo "[ONBOOT YES]"
sed -i "/ONBOOT/ d" /etc/sysconfig/network-scripts/ifcfg-$INT
echo "ONBOOT=\"yes\"" >> /etc/sysconfig/network-scripts/ifcfg-$INT
echo "[REDEMARRAGE DE $INT]"
nmcli c down $INT; nmcli c up $INT
echo "[DETAILS DE $INT]"
nmcli d show $INT
###
# PROXY YUM
###
echo "[Configuration de yum.conf]"
echo -e "proxy=http://10.49.64.5:8080" >> /etc/yum.conf
sleep 5
reboot

Différences majeures entre Red Hat 6, 7, 8 et 9

Quelles sont les différences majeures entre RHEL 6, 7, 8 et 9 ? Système de fichiers RHEL 6: Par défaut : ext4. Autres : ext2, ext3 supportés...