Ubuntu 10.10 - Serveur de développement - Partie 1

 

Objectif : Créer une machine virtuelle pour développer ou tester les applications web dans un environnement totalement maitrisé.

  • Serveur Apache, Php, MySQL
  • Serveur proFTPD
  • Serveur postfix et courier-imap

 

Il faut bien sûr télécharger l'iso d'installation de Ubuntu 10.10 Server

Machine hôte

  • OpenSuse 11.3 + Virtualbox 4.xx
  • Mémoire : 4Go
  • Processeur : AMD Turion X2 64

Configuration de Virtualbox 4.04

Système :

  • Mémoire : 1024Mo
  • Nb de processeurs : 2
  • Activer PAE/NX : Oui (uniquement pour un hôte 64 bits)

Affichage :

  • Mémoire vidéo : 12Mo
  • Nb d'écran : 1
  • Accélération 3D et 2D : Non

Stockage :

Cd-Rom : Connecter le disque ISO d'installation de Ubuntu Server.

Disque dur :

  • Noter le nom et l'emplacement du disque SATA
  • Supprimer le contrôleur SATA
  • Ajouter le disque sur le contrôleur IDE.
  • Cliquer sur la 2eme icone à coté de "Contrôleur IDE" puis "Choisir un disque existant"
  • Sélectionner le disque SATA (eh oui, tout à l'heure c'etait un SATA, et bien maintenant c'est un IDE !)

Son : Non

Réseau :

  • Carte 1 : Active -
    Mode de connexion : aucune connexion durant l'installation
    Après l'installation : accès par pont
  • Carte 2, 3 et 4 : Désactivée.

La carte 1 ne doit pas avoir de connexion pour pouvoir forcer Ubuntu a proposer une configuration manuelle du réseau durant l'installation.
La connexion sera résactivée plus tard.

Installation de Ubuntu 10.10 Server

Au boot :

  • Choisir la langue
  • Touche F4 puis "Installer une machine virtuelle minimale"
  • Valider "Installer Ubuntu Server"

Clavier :

  • "Choose language" : France
  • "Détecter l'agencement du clavier" : Non
  • "Origine du clavier" : France
  • "Disposition du clavier" : France - Autre

Ubuntu informe que la configuration automatique du réseau à échoué.
Normal puisque la carte est déconnectée.

Paramèrtage de la carte :

  • Choisir "Configurer vous-même le réseau"
  • Adresse IP : Choisir une adresse IP qui n'est pas dans la plage DHCP du réseau sur lequel le serveur est connecté.
    Dans mon cas, je regarde la configuration de ma Freebox et je choisi 192.168.0.70
  • Valeur du masque réseau : 255.255.255.0
  • Passerelle : 192.168.0.254 ( IP de la freebox )
  • Adresse du serveur de noms : 208.67.222.222 208.67.220.220
    Ce sont les IP du DNS. Je choisis d'utiliser les DNS de OpenDNS séparés par un espace
  • Nom de la machine : ubsrv001
  • Domaine : jbnet.lan

Partitionner le disque :

  • Méthode de partitionnement : "Assisté - Utiliser un disque entier"
  • Sélectionner le disque et valider
  • Appliquer les changements : Oui

Création d'un utilisateur :

  • Nom complet du nouvel utilisateur : administrateur
  • Identifiant pour le compte utilisateur : administrateur
  • Choisir un mot de passe et le confirmer.
  • Chiffre votre dossier personnel : Non
Mandataire HTTP : c'est le proxy.

Suivant le réseau, soit laisser vide, soit saisir le proxy.
Si le proxy demande une authentification et un mot de passe, saisir l'adresse comme suit :
http://utilisateur:motdepasse @ipproxy:port

Ex : http://utilisateur: Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser. :8080

Maintenant il va falloir être patient...
Ubuntu recherche des dépôts qu'il ne peut atteindre du fait de la carte réseau déconnectée.
La recherche peut durer une bonne dizaine de minutes.

Consiguration de Tasksel : Pas de mises à jour automatiques

Sélection des logiciels : Sélectionner uniquement "OpenSSH Server" (on verra le reste ensuite)

Configuration de Grub-pc

Installer le programme de démarrage GRUB sur le secteur d'amorçage : Oui

Installation terminée

Valider pour relancer la machine

Premier démarrage

Laisser la machine démarrer puis utiliser l'utilisateur pour se connecter

Capture-ubsrv001_En_fonction_-_Oracle_VM_VirtualBox

Arrêter la machine avec la commande suivante :

 
sudo halt
 

 

Configuration de la machine dans Virtualbox

Déconnecter l'ISO d'installation

Modifier l'accès réseau "Accès par pont"

Capture-ubsrv001_-_Paramtres

Valider et relancer la machine virtuelle.

Mise à jour de la machine

Se connecter puis exécuter les commandes suivantes :

 
sudo apt-get update
sudo apt-get dist-upgrade
 

 

Valider les mises à jour.

Je vous suggère de relancer la machine, mais ce n'est pas une obligation (seulement en cas de mise à jour du kernel)

 
sudo reboot
 

Sauvegarde du disque de la machine virtuelle

L'objectif est de créer un disque Virtualbox contenant la machine précédemment installée et qui permettra de revenir en arrière sans devoir tout refaire.

En tant de que root sur la machine hôte :

  • Se positionner dans le répertoire contenant les machines virtuelles.
  • Exécuter les commandes suivantes :
 
$ cp machine_origine.vdi machine_backup.vdi
$ VBoxManage internalcommands sethduuid machine_backup.vdi
 

 

On duplique le fichier puis on demande à Virtualbox de lui attribuer un id différent.

A partir de là, le nouveau fichier peut être utilisé dans une nouvelle machine virtuelle.
Mais je préfère la mettre de coté et de rejouer les commandes précédentes pour mettre en place rapidement une nouvelle machine.
Ou encore en cas d'erreur, pouvoir repartir avec une machine clean.

Relancer la machine et poursuivre.

Installation et paramètrage du serveur LAMP

Se connecter en SSH sur la machine :

 
ssh administrateur@192.168.0.70
 

 

Voici la première connexion SSH :

 
geeko@linux-sdna:~ > ssh administrateur@192.168.0.70
The authenticity of host '192.168.0.70 (192.168.0.70)' can't be established.
RSA key fingerprint is 2e:eb:da:e6:a4:e0:ce:aa:c5:93:a1:01:28:cc:40:99.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.0.70' (RSA) to the list of known hosts.
Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser. 's password:

Linux ubsrv001 2.6.35-25-virtual #44-Ubuntu SMP Fri Jan 21 20:39:04 UTC 2011 x86_64 GNU/Linux
Ubuntu 10.10
 
Welcome to Ubuntu!
* Documentation: https://help.ubuntu.com/
Last login: Tue Feb 22 10:21:25 2011
administrateur@ubsrv001:~$

 

Il faut accepter la connexion une première fois.

Ensuite, c'est plus simple.

Installation du serveur LAMP

 
sudo tasksel
 

 

Sélectionner "LAMP Server" et valider.

Saisir (et mémoriser !) un mot de passe pour l'accès root à MySQL.

Activer l'URL Rewriting

Exécuter la commande suivante :

 
sudo a2enmod rewrite
 

 

Editer le fichier

 
sudo vi /etc/apache2/sites-available/default
 

 

Modifier la ligne 3 :

 

1
2
3
4
5
6
        <Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
>

 

Sauvegarder et relancer le serveur apache :

 

 
sudo /etc/init.d/apache2 restart
 

 

 

Installation de phpMyAdmin

 
sudo apt-get install phpmyadmin
 
 

 

"Serveur web à configurer autoamtiquement" : Apache2

"Faut-il configurer la base de données de phpmyadmin avec dbconfig-common ?" : Yes

Mot de passe : celui configuré à l'installation du serveur LAMP

"Mot de passe de connexion MySQL pour phpMyAdmin" : laisser vide (un mot de passe aléatoire sera généré).

 

Test du serveur

Utiliser l'url http://192.168.0.70 dans un navigateur.
Le message "It works" doit apparaitre.

Utiliser l'url http://192.168.0.70/phpmyadmin dans un navigateur.
L'accueil de phpMyAdmin doit apparaitre.
Tester la connexion avec l'utilisateur root et le mot de passe configuré ci-dessus.

Création d'un utilisateur FTP avec les droits adéquat.

L'objectif est de créer un utilisateur qui pourra se connecter en FTP et qui appartient au groupe www-data.
Ce groupe est le groupe utilisé par le serveur Apache.
L'avantage est qu'on aura pas à exécuter une commande pour autoriser le serveur à lire les fichiers des sites web installés.

Exécuter la commande :

 
sudo adduser ftpuser
 

 

Répondre aux questions :

 

 
administrateur@ubsrv001:~$ sudo adduser ftpuser
[sudo] password for administrateur:
Adding user `ftpuser' ...
Adding new group `ftpuser' (1001) ...

Adding new user `ftpuser' (1001) with group `ftpuser' ...
Creating home directory `/home/ftpuser' ...
Copying files from `/etc/skel' ...

Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Changing the user information for ftpuser
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [Y/n] Y
 

 

Attribuer le groupe principal www-data à l'utilisateur ftpuser :

 
sudo usermod -g www-data ftpuser
 

Donner les droits d'écriture au groupe www-data sur le répertoire /var/www :

 
sudo chown www-data:www-data /var/www
sudo chmod 775 /var/www
 

 

Installation du serveur FTP : proFTPD

 
sudo apt-get install proftpd
 

Lancement de proftpd : Indépendamment

Configuration de proFTPD

Editer le fichier /var/proftpd/proftpd.conf

 
sudo vi /etc/proftpd/proftpd.conf
 

 

Modifier la ligne :

 
# DefaultRoot ~
DefaultRoot /var/www
 
 

 

Relancer le serveur ftp :

 
administrateur@ubsrv001:~$ sudo /etc/init.d/proftpd restart
* Stopping ftp server proftpd [ OK ]
* Starting ftp server proftpd [ OK ]
 

 

Tester l'accès et la création d'un répertoire avec Filezilla par exemple.

Installation d'un serveur de messagerie

 
sudo tasksel
 

 

Sélectionner "Mail Server"

Capture-administrateurubsrv001_-var

Sélectionner "Site Internet" :

Capture-administrateurubsrv001_-var-1

 

Capture-administrateurubsrv001_-var-2

Laisser par défaut et valider :

Capture-administrateurubsrv001_-var-3

L'installation se termine.
Il faut relancer la configuration :

 

 
sudo dpkg-reconfigure postfix
 

 

Capture-administrateurubsrv001_-var-4

 

Capture-administrateurubsrv001_-var-5

Capture-administrateurubsrv001_-var-6

Capture-administrateurubsrv001_-var-7

Capture-administrateurubsrv001_-var-8

Saisir le nom d'utilisateur configuré lors de l'installation d'Ubuntu Server.
Dans mon cas "administrateur"

Capture-administrateurubsrv001_-var-9

Laisser par défaut :

Capture-administrateurubsrv001_-var-10

Sélectionner "No" :

Capture-administrateurubsrv001_-var-11

 

Capture-administrateurubsrv001_-var-12

Laisser par défaut :

Capture-administrateurubsrv001_-var-13

!! IMPORTANT !!
Ne pas utiliser procmail pour la distribution locale.
Sélectionner "No"

Capture-administrateurubsrv001_-var-14

Capture-administrateurubsrv001_-var-15

Capture-administrateurubsrv001_-var-16

Capture-administrateurubsrv001_-var-17

Vérifier que le fichier de configuration de Postfix ( /etc/postfix/main.cf ) contient la ligne :

 
home_mailbox = Maildir/
 

 

Normalement c'est la dernière ligne.

 

Sinon, exécuter les commandes suivantes :

 
sudo postconf -e 'home_mailbox = Maildir/'
sudo /etc/init.d/postfix restart
 

 

Instalaltion du serveur IMAP

 
sudo apt-get install courier-imap
 

 

"Faut-il créer les répertoires nécessaires à l'administration web ?" : Non


Terminé pour le serveur de mail !

Configuration du répertoire de stockage des mails pour l'utilisateur "administrateur"

Se positionner dans le répertoire home :

 
cd ~
 

 

Exécuter la commande :

 
maildirmake.dovecot Maildir
 

 

Installation de SquirrelMail

SquirrelMail est un client mail IMAP en ligne.

 
sudo apt-get install squirrelmail
 

 

Laisser par défaut les demandes de configuration.

Configuration manuelle :

 
sudo /usr/sbin/squirrelmail-configure
 

 

Sélectionner l'option 10 et valider

Sélectionner l'option 1 et valider

Saisir "fr_FR" et valider

Taper S et valider

Taper Q et valider

Squirrelmail est configuré.

Apache et SquirrelMail

Indiquons à Apache comment avoir accès à SquirrelMail :

 
sudo cp /etc/squirrelmail/apache.conf /etc/apache2/sites-available/squirrelmail
sudo a2ensite squirrelmail
sudo /etc/init.d/apache2 restart
 

 

Tester l'accès et l'envoi de mail :

 
http://192.168.0.70/squirrelmail
 

 

  • Utilisateur : administrateur
  • Mot de passe : celui de l'utilisateur.

Tester l'envoi et la réception d'e-mail à partir de Squirrelmail en utilisant l'adresse : Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser.

Le mail envoyé doit être dans la boite de réception.

Fin de la première partie.

Faire un backup de la machine virtuelle comme vu plus haut.

Joomla templates by a4joomla