Administration des Services réseau
sous GNU/LINUX
Attentes ??
PLAN
DHCP
REVISION GENERALE,
- Principe de fonctionnement
SERVICE DE TRANSFERT DE FICHIER,
- installation & configuration
I. FTP
- Principe de fonctionnement - Exploitation
- installation & configuration SERVEUR WEB (APACHE)
- Exploitation DNS
II. OPENSSH - Principe de fonctionnement
- Principe de fonctionnement - installation & configuration
- installation & configuration - Exploitation
- Exploitation MESSAGEREIE
III. SAMBA - Principe de fonctionnement
- Principe de fonctionnement - installation & configuration
- installation & configuration - Exploitation
- Exploitation AUTRES (en fonction du temps)
IV. NFS
- Principe de fonctionnement
- installation & configuration
- Exploitation
NTP (Network Time Protocole)
REVISION GENERALE
Configuration réseau
RPM DEB
/etc/sysconfig/network-scripts/ /etc/network/interfaces
DEVICE=ethi auto eth0
BOOTPROTO={ none | dhcp | static } iface eth0 inet static
ONBOOT={ yes | No } address [Link]
NETWORK= netmask [Link]
NETMASK= gateway [Link]
IPADDR=
Résolution DNS :
/etc/[Link]:
nameserver IP1
nameserver IP2
……
nameserver IPn
Installation Package
RPM DEB
A. Commande rpm: A. Commande apt:
rpm –ivh NP apt-get install NP
En cas de dépendance B. Installation par code source
rpm –ivh –nodeps NP
B. Commande yum:
yum install NP
C. Installation par code source:
Manipulation Service
RPM DEB
A. Démarrage/ arrêt / redemarrage: Identique
/etc/init.d/NomService start
/etc/init.d/NomService stop
/etc/init.d/NomService restart
Configuration demarrage ou arrêt automatique
B. Commande yum:
Chkconfig NS { on | off } [ -level n ]
C. Commande ln:
Commande VI
SERVICE DE TRANSFERT DE FICHIER
FTP (File Transfer Protocol)
Introduction au protocole FTP :
Le protocole FTP (File Transfer Protocol) est, comme son nom l'indique, un protocol de transfert de
fichier.
La mise en place du protocole FTP date de 1971, date à laquelle un mécanisme de transfert de fichiers
(décrit dans le rfc RFC 141) entre les machines du MIT (Massachussetts Institute of Technology) avait été
mis au point. De nombreux RFC ont ensuite apporté des améliorations au protocole de base, mais les
plus grandes innovations date de juillet 1973.
Le protocole FTP est actuellement défini par le RFC 3659.
Le protocole FTP a pour objectifs de :
permettre un partage de fichiers entre machines distantes
permettre une indépendance aux systèmes de fichiers des machines clientes et serveur
permettre de transférer des données de manière efficace
Le modèle FTP
Le protocole FTP s'inscrit dans un modèle client-serveur, c'est-à-dire qu'une machine envoie des ordres
(le client) et que l'autre attend des requêtes pour effectuer des actions (le serveur).
Lors d'une connexion FTP, deux canaux de transmission sont ouverts :
Un canal pour les commandes (canal de contrôle)
Un canal pour les données
FTP (File Transfer Protocol)
Type de serveur FTP (mode de fonctionnement) :
1. Serveur FTP actif:
2. Serveur FTP passif
Mode de transfert :
1. Binaire
2. asci
FTP (File Transfer Protocol)
Type de serveur FTP (mode de fonctionnement) :
1. Serveur FTP actif:
FTP (File Transfer Protocol)
Type de serveur FTP (mode de fonctionnement) :
1. Serveur FTP actif:
Inconvénients:
1) risque de timeout à cause du nombre de demande
2) Risque de ne jamais fonctionné
3) Consommation ressource CPU du serveur pour le transfert,
Avantage:
Peut être utile pour faire des transferts sécurisés entre partenaire
FTP (File Transfer Protocol)
Type de serveur FTP (mode de fonctionnement) :
2. Serveur FTP passif:
FTP (File Transfer Protocol)
Type de serveur FTP (mode de fonctionnement) :
1. Serveur FTP actif:
Avantages:
1. Moins de congestion,
2. Adapté pour un environnement publique,
3. Economise du temps CPU
Inconvénient:
1. Risque de sécurité sur le serveur FTP
FTP (File Transfer Protocol)
serveur FTP mode de transfert :
1. Binaire
Sans modification
2. asci
Avec adaptation
installation & configuration
FTP (File Transfer Protocol)
Installation & configuration :
Logiciel qui implémente le FTP sous GNU/LINUX:
1. vsftp,
2. proftpd,
3. pure-ftpd
Le choix:
Vsftp (Very Secure FTP Daemon)
Installation:
RPM: DEB:
rpm –ivh [Link] apt-get install vsftp*
FTP (File Transfer Protocol)
Configuration : /etc/[Link]
listen=YES
anonymous_enable=YES
local_enable=YES
write_enable=NO
xferlog_file=YES
ftpd_banner=/etc/ma_banniere
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
Chaque modification nécessite un redémarrage pour être prise en charge
/etc/init.d/vsftpd { stop | start | restart }
Configuration de base
Pour permettre des utilisateurs anonymes de se connecter au serveur en lecture seule.
anonymous_enable=YES
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
anon_world_readable_only=YES
local_root=<Path_du_répertoire_anonyme>
Pour permettre à vos utilisateurs locaux (ceux qui ont un compte sur la machine) de se
connecter au serveur et d'écrire.
local_enable=YES Attention, si chroot_list_enable est à NO, cette
write_enable=YES liste devient la liste des utilisateurs qui ne
local_umask=022
seront PAS dans leur "prison"
Vous pouvez « emprisonner » certains utilisateurs dans leur dossier personnel afin qu'il ne
puissent pas naviguer dans le système de fichier.
- Créer un fichier /etc/vsftpd/[Link]
Il faut ensuite modifier la configuration générale (/etc/[Link]) et ajouter ces lignes:
chroot_local_user=NO
# Emprisonner dans son répertoire home les utilisateurs
chroot_list_enable=YES
# La lise des prisonniers chroot_list_file=/etc/vsftpd/[Link]
# Evite l'erreur 500 OOPS: vsftpd: refusing to run with writable root inside chroot().
# Les prisonniers peuvent écrire dans leur propre répertoire
allow_writeable_chroot=YES
Si vous voulez changer le port pour transmettre les commandes qui est par défaut (21) :
listen_port=222
Pour avoir un monitoring basique (voir les utilisateurs connectés) :
setproctitle_enable=YES
Ensuite, pour voir la liste des utilisateurs il suffit de taper la commande suivante dans un
terminal :
ps -aef | grep vsftpd
ou pour suivre les connexions en continu :
watch -n 1 'ps ax | grep vsftpd | grep -v grep'
Partage de dossier et chroot
mkdir ~/PointDeMontage sudo mount --bind <path_complet_du_dossier_à_relier>
/home/<utilisateur>/PointDeMontage
gedit /etc/fstab
<path_complet_du_dossier_à_relier> /home/<utilisateur>/PointDeMontage none bind 0 0
PRATIQUE
EXPLOITATION
Exploitation par des Outils du système d’exploitation
Windows GNU/LINUX
DOS SHELL
Commandes FTP
APPLICATION
Exploitation avec outils avancés
Exploitation du FTP par scripts batch et scripts Shell
Scripts batch :
ftp -v -i -s:fichier_cmd
Fichier_cmd:
open IP_SRV_FTP
login
password
Cmd1
……
APPLICATION
cmdn
bye
Scripts Shell :
ftp -ni IP_SRV_FTP >> ~/[Link] <<!!
user login password
Cmd1
………..
Cmdn
bye
!!
INTRODUCTION AU BATCH
Basiquement, un fichier Batch n'est rien de plus qu'un fichier texte contenant des
commandes MS-DOS, et possédant le suffixe ".bat«
En fait, un fichier Batch contient simplement une suite de commandes que vous
pourriez taper sous l'invité (prompt) du DOS, chaque nouvelle ligne du fichier
correspondant à une nouvelle commande.
Leur utilité est,
par exemple, quand il faut répéter toujours la même série de
commandes.
À titre d'exemple, nous pourrions évoquer le changement de répertoire
et peut-être aussi la commande FORMAT qu'on fait souvent suivre de la commande
CHKDSK pour vérifier si la disquette a bien été formatée.
Exemple :
Imaginons un fichier batch contenant les commandes suivantes:
cd \
cd games
[Link]
Cela aurait le même effet que si vous tapiez sous DOS les commandes suivantes :
C:\Chemin> cd \ [Entrée]
C:\> cd games [Entrée]
C:\games> [Link] [Entrée]
Création du fichier Batch "Hello, World"
Nous allons nous atteler à la programmation d'un fichier affichant à l'écran le
traditionnel "Hello World" en langage Batch.
Echo Hello World !
Le DOS nous a bien affiché notre résultat, MAIS il apparaît comme si on venait
d'entrer les commandes séparément sous DOS : En effet, on distingue l'invite
(généralement c:\Program Files\PowerBatch>), la commande (Echo Hello, World !),
son résultat dessous, puis un second invite.
Nous souhaiterions que seuls les résultats des commandes apparaissent à l'écran
Il va falloir utiliser l'écho local. L'écho local est une variable qui, selon qu’elle est sur
« on » (activée) ou « off » (désactivée), permet ou de voir uniquement les résultats
des commandes entrées.
Il va falloir désactiver cet écho en tapant : Echo off
La commande "@" est adapté à notre cas : elle permet de désactiver immédiatement
l'écho pour une ligne, il suffit juste de faire précéder la ligne de ce signe.*
On a donc : @Echo off
Commentez votre code:
La commande "REM" (REMark) est là pour vous ! Il suffit simplement d'apposer votre
commentaire après la commande, par exemple :
@echo off
REM Formatage de la disquette
Format a:
REM Creation du dossier Backup sur a:\
Mkdir a:\backup\
REM Copie des fichiers
Copy c:\backup\*.* a:\backup\*.*
La commande REM ne sera pas exécutée, mais vous aidera à mieux comprendre ce
que vous avez voulu faire lorsque vous n'avez pas étudié le Batch depuis longtemps.
Paramètres envoyées à une commande ou à un programme
Vous pouvez donc lire 10 variables relatifs au arguments passés à votre programme.
Ces variables vont de %0 à %9 . La variable %0 contient le chemin d'accès au
programme, %1 le premier paramètre, %2 le second paramètre… jusqu'à %9 qui
contient le neuvième paramètre envoyé au batch.
Pour obtenir la valeur d’une variable A c’est %A%
STRUCTURE DE CONTROLE
Le langage Batch vous permet d'utiliser des commandes de boucle, c'est a dire de
répéter un bloc de commandes indéfiniment.
Saut inconditionnel (Goto)
Label:
Un label se présente sous la forme :
:NomDuLabel
Goto
Par exemple :
Commande 1 Goto BONJOUR
Commande 2 Commande 3
Label BONJOUR Commande 4
Commande 3 Commande 5
Commande 4 Label BONJOUR
Commande 5 Commande 1
Goto BONJOUR Commande 2
@echo off
:Start
echo Hello, World !
Goto Start
Exécution conditionnelle – la commande "IF"
Boucles
FOR %%A IN (*.TXT *.BAT ) DO TYPE %%A
RAPPELS SCRIPTS SHELL
Commandes de contrôle