Catégorie : Systèmes

7 novembre 2016 /

La commande sudo  permet de fournir à un utilisateur de confiance, un accès avec privilèges sur un système, sans avoir à partager le mot de passe de l’utilisateur root.

Lorsque les utilisateurs ayant des droits sudo, précèdent une commande administrative avec sudo, ils sont invités à entrer leur mot de passe. Une fois authentifié, et en supposant que la commande est autorisée, la commande administrative est exécutée comme si elle est exécutée par l’utilisateur root.

On commence en éditant le fichier /etc/sudoers via la commande visudo:

visudo

On cherche les lignes qui donne le droit sudo au utilisateur du groupe Wheel:

## Allows people in group wheel to run all commands
# %wheel        ALL=(ALL)       ALL

Cette ligne de configuration demandera un mot de passe lors de l’appel de sudo

## Same thing without a password
# %wheel        ALL=(ALL)       NOPASSWD: ALL

Cette ligne de configuration ne demandera pas de mot de passe lors de l’appel de sudo

On supprime le croisillon de la ligne « #%wheel ALL….  » souhaitée pour activer la configuration voulue.

Une fois que l’on a utilisé sudo dans un terminal, on dispose de 20 minutes pour utiliser sudo avec d’autres commandes, sans que la console nous redemande un mot de passe. Pour passer de 20 minute à une journée (en minute):

Defaults env_reset,timestamp_timeout=1440

Pour une durée illimitée, on met « -1 » :

Defaults env_reset,timestamp_timeout=-1

Puis on sauvegarde et on quitte visudo.
Il ne nous reste plus qu’a ajouter l’utilisateur voulu au groupe wheel.

Pour cela nous éditons le fichier /etc/group :

vi /etc/group

Et nous ajoutons le login de l’utilisateur (ici antoine) à qui l’on donne le droit sudo directement dans le groupe wheel:

root:x:0:
bin:x:1:bin,daemon
daemon:x:2:bin,daemon
sys:x:3:bin,adm
adm:x:4:adm,daemon
tty:x:5:
disk:x:6:
lp:x:7:daemon
mem:x:8:
kmem:x:9:
wheel:x:10:starmate,antoine
mail:x:12:mail,postfix
uucp:x:14:

Antoine peut maintenant utiliser sudo pour exécuter des commandes comme si il était connecté en root.

Quelques règles de sécurité

Pour empêcher sudo d’agir ailleurs qu’en mode console, il faut déclarer le paramètre suivant dans le fichier /etc/sudoers lors de son édition avec visudo :

Defaults requiretty

Pour enregistrer dans un fichier de logs spécifique, les actions effectuer via sudo  :

Defaults log_host,log_year,logfile="/var/log/sudoers"

Il peut être également utile de bloquer certaine commande comme « su« , « passwd« , « bash » ou encore « sh« , pour cela il suffit de faire précéder la commande à bloquer par un point d’exclamation « !« .
Dans ce cas, nous allons directement déclarer l’utilisateur, ici Antoine, pour lui donner les droits sudo dans le fichier sudoers (donc sans passer par le groupe wheel) de cette façon, via visudo:

antoine ALL=(ALL) ALL,!/bin/su,!/usr/bin/passwd,!/bin/bash,!/bin/sh

Ce qui aura pour résultat:

sudo su

Sorry, user antoine is not allowed to execute '/bin/su' as root on Centos_server.

 

31 octobre 2016 /

Si vous avez besoin de la toute dernière version pour faire fonctionner correctement votre carte graphique (carte très récente), il est possible d’utiliser la toute dernière version du pilote disponible depuis le site officiel Nvidia.

L’installation de la version du pilote via le site officiel NVIDIA est déconseillée car il n’a pas été empaqueté ni adapté pour Ubuntu et peut rendre instable votre système.
Ainsi, contrairement à une installation via les dépôts, le pilote installé ne sera pas chargé dynamiquement, ce qui peut nécessiter de le réinstaller suite à mise à jour du noyau Linux.

Pré-requis: Si un pilote propriétaire est utilisé, désinstallez-le.

Télécharger le pilote disponible sur le site de Nvidia.

Avec un terminal, on se déplace dans le dossier du téléchargement (exemple pour le dossier « Téléchargements »):

cd ~/Téléchargements

On rend le fichier exécutable:

chmod +x NVIDIA-linux*

On passe en mode console:

CTRL+ALT+F1 puis connexion

on arrête lightdm (le serveur x):

sudo service lightdm stop

On on passe en init 3:
sudo init 3

On lance l’installateur:

sudo ./NVIDIA-linux*

Il ne reste plus qu’à redémarrer l’ordinateur pour qu’il puisse prendre en compte le nouveau pilote:

reboot

25 octobre 2016 /

Installation de SNMP:

sudo apt-get install snmp snmpd libnet-snmp-perl libsnmp-perl

Il faut maintenant configurer SNMP dans le fichier /etc/snmp/snmpd.conf pour autoriser les requêtes du serveur Centeron (192.168.0.100):

sudo vi /etc/snmp/snmpd.conf

Et on modifie le fichier pour avoir cela:

agentAddress udp:161,udp6:[::1]:161
rocommunity public 192.168.0.100
iquerySecName internalUser

On relance le service:

systemctl restart snmpd

Et voila!

24 octobre 2016 /

Rien n’empêche une machine de disposer de plusieurs adresses IP, sur des interfaces différentes ou sur une même interface et ceci présente de nombreux avantages dans plusieurs circonstances, par exemple :

  • Pour un serveur web (une IP par site).
  • Pour un serveur quelconque, disposer d’une adresse l’IP dédié à l’administration, et d’une ou plusieurs pour les services.
  • Pour un cluster (une IP par service ou groupe de services).
  • Pour un répartiteur de charge (une IP pour chaque serveur virtuel).

Alias sur Debian

Un alias se configure dans le fichier /etc/network/interfaces.
Pour configurer un alias eth0:0, les lignes suivantes doivent y être ajoutées (et adaptées selon les besoins et votre configuration actuelle):

auto eth0:0
iface eth0:0 inet static
address 192.168.1.70
netmask 255.255.255.0
broadcast 192.168.1.255
network 192.168.1.0

L’alias peut être activé et désactivé comme toute carte avec les commandes ifup et ifdown:

ifup eth0:0
ifdown eth0:0

Alias sur Red Hat

Un alias se configure en créant un fichier dans /etc/sysconfig/network-scripts/ , par exemple ifcfg-eth0:0.
Dans l’exemple de ifcfg-eth0:0, il doit reprendre une structure identique à la configuration de l’interface réseau eth0, excepté l’adresse MAC qui est inutile.
Voici un exemple de contenu :

DEVICE=eth0:0
IPADDR=192.168.1.70
NETMASK=255.255.255.0
NETWORK=192.168.1.0
ONBOOT=yes

L’alias peut être activé et désactivé comme toute carte avec les commandes ifup et ifdown.

Sur les distributions type RedHat, on peut également créer des plages d’IP multiples en affectant cette plage à une interface réseau.
Il devient alors possible, d’un seul coup, de créer autant d’alias que souhaité, à condition que les adresses IP se suivent.

Si on souhaite créer 19 alias sur eth0 allant de l’IP 192.168.1.71 à 192.168.1.90, le fichier /etc/sysconfig/network-scripts/ifcfg-eth0-range0 doit être créé et rempli avec le contenu suivant :

IPADDR_START=192.168.1.71
IPADDR_END=192.168.1.90
CLONENUM_START=0
NETMASK=255.255.255.0

Le paramètre CLONENUM_START indique le numéro d’alias de départ.

L’interface associée doit être arrêtée et démarrée pour que la modification soit prise en compte, soit par ifdown/ifup, soit par le redémarrage du service network.

Le résultat est le suivant :

ifconfig

eth0:0 Link encap:Ethernet HWaddr 00:0C:29:4C:A6:AF
inet adr:192.168.1.71 Bcast:192.168.1.255
Masque:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

eth0:1 Link encap:Ethernet HWaddr 00:0C:29:4C:A6:AF
inet adr:192.168.1.72 Bcast:192.168.1.255
Masque:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

eth0:2 Link encap:Ethernet HWaddr 00:0C:29:4C:A6:AF
inet adr:192.168.1.73 Bcast:192.168.1.255
Masque:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

eth0:3 Link encap:Ethernet HWaddr 00:0C:29:4C:A6:AF
inet adr:192.168.1.74 Bcast:192.168.1.255
Masque:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

eth0:4 Link encap:Ethernet HWaddr 00:0C:29:4C:A6:AF
inet adr:192.168.1.75 Bcast:192.168.1.255
Masque:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

eth0:5 Link encap:Ethernet HWaddr 00:0C:29:4C:A6:AF
inet adr:192.168.1.76 Bcast:192.168.1.255
Masque:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

Etc… jusqu’a eth0:18.

19 octobre 2016 /

Voici méthode qui consiste à démarrer non pas init comme premier processus, mais un shell.

Tout d’abord, au démarrage, quand le menu de grub apparaît (appuyez sur echap si il n’apparaît pas), sélectionnez la ligne de boot sur lequel le système démarre habituellement:

screenshot_centos7-0_starmate_2016-10-15_191840

On va maintenant modifier la ligne de démarrage du système en appuyant sur la touche « e« :

screenshot_centos7-0_starmate_2016-10-15_192623

Sur la ligne commençant par « linux16 /vmlinux….. », nous allons ajouter à la fin « init=/bin/sh » et supprimer « rhgb quiet » :

screenshot_centos7-0_starmate_2016-10-15_194047

On valide les paramètres et on boot en appuyant sur les touches « Ctrl-x » ou bien avec la touche F10.

On arrive très vite dans un shell simple sans mot de passe et avec les droits root:

screenshot_centos7-0_starmate_2016-10-15_193200

On va tout d’abord charger la politique SELinux existante avec cette commande (le -i correspond à « initial policy load ») :

/usr/sbin/load_policy -i

Ensuite, on va remonter « / » en lecture-écriture car il est monté en lecture seule :

mount -o remount,rw /

On peut maintenant passer à la modification du mot de passe root :

passwd root

On ré-étiquette le système (SELinux) pour le prochain redémarrage :

touch /.autorelabel

Il ne reste plus qu’a redémarrer votre CentOS7/RedHat7 pour avoir vous connecter avec le nouveau mot de passe:

exec /sbin/init