Je compte sur vous pour m’indiquer si je me plante sur ce montage. Merci
installation et configuration du serveur WEB : apache2
Je n’arrive pas à configurer ne pas que tout le monde ai accès à mes fichiers ???
installation et configuration d’une base de données : mysql
contenu de mon fichier /etc/mysql/my.cnf
#Choisir la langue par défaut pour les messages du serveur (français)
language = /usr/share/mysql/french
#Taille du cache des index
key_buffer = 32M
#Taille limite du cache par requête
query_cache_limit = 2M
#Taille totale du cache des requêtes
query_cache_size = 32M
#log_bin = /var/log/mysql/mysql-bin.log
#expire_logs_days = 10
#Désactiver le log binaire en commentant ces deux lignes grâce à # (le log binaire n'est utile que dans le cas de réplications avec serveurs maître-esclave)
log_slow_queries = /var/log/mysql/mysql-slow.log
#Mettre en log les requêtes lentes (utile pour les repérer et les optimiser)
long_query_time = 2
#Durée (en secondes) à partir de laquelle une requête est considérée comme lente
[mysqld]
default-character-set = utf8
#Jeu de caractères par défaut pour le serveur
default-collation = utf8_general_ci
#Collation du jeu de caractères
[client]
default-character-set = utf8
#Jeu de caractères par défaut pour le client
Prochaine étape création de la base de donner
Bonjour,
c’est surtout la configuration apache et du ou des site(s) qu’il faudrait regarder, pour sécuriser le serveur et faire en sorte que seuls les fichiers pertinents soient accessibles.
Quels sont les sites servis par apache ?
Peut-on voir le contenu de leur fichier .conf dans /etc/apache2/sites-available ?
j’ai 2 fichiers dans /etc/apache2/sites-available
000-default.conf
et
default.ssl.conf
je n’ai rien compris. L’anglais et moi ne sommes pas très copain
je peux toujours envoyé le contenu de l’un de ces fichiers
En gros, dans le répertoire /etc/apache2/sites-available, tu crées un fichier de configuration pour ton site (monsite.conf). Dans ce fichier tu peux notamment définir la racine de ton site, les documents qui seront servis par ton site, une méthode d’authentification pour accéder au site, etc. A ce stade je t’invite à consulter la documentation officielle. Quand tu as enregistré ton fichier monsite.conf, il faut que tu dises à apache de servir ce site avec a2ensite monsite.conf (cela va créer un lien symbolique vers /etc/apache2/sites-available/monsite.conf dans /etc/apache2/sites-enabled)
Sur une installation fraîche d’apache, c’est 000-default.conf qui est servi. Tu peux regarder son contenu et t’en inspirer, le fichier du site est /var/www/index.html
Voilà ce que j’ai mis dans /etc/apache2/sites-available/xxx.conf
<VirtualHost *:80>
ServerName xxx.com
ServerAlias www.xxx.com
DocumentRoot "/chemin/www/xxx"
<Directory "/chemin/www/xxx">
Options +FollowSymLinks
AllowOverride all
Require all granted
</Directory>
ErrorLog /var/log/apache2/error.xxx.com.log
#CustomLog /var/log/apache2/access.xxx.com.log combined
</VirtualHost>
Ainsi ai-je bloqué l’accés à tout le monde ?
Je butte sur l’installation de mysql
J’ai changé mon fichier /etc/mysql/my.cnf. Celui cité ne fonctionne pas. j’en ai trouvé qui à l’air de marcher.
ça coince ici:
mysql -u root -p
Enter password:
ERROR
1698 (28000): Access denied for user 'root'@'localhost'`
pour l’instant je n’ai rien trouvé pour réparer
Il s’agit de 2 problèmes différents, qui mériteraient chacun un topic distinct dans le forum.
Pour apache, c’est à vous de tester. La configuration du site n’est probablement pas un élément suffisant pour s’en assurer. Il faut aussi prendre en compte les permissions et utilisateurs des fichiers dans les répertoires du site, etc. Apache n’est pas vraiment mon rayon, les conseils d’autres utilisateurs du forum, ainsi que la documentation, te seront plus utiles que ces quelques conseils.
Pour mysql, je suppose qu’il s’agit en réalité de mariaDB installé depuis les dépôts officiels de Debian. Par défaut il n’y a pas de mot de passe de connexion pour le rôle root depuis l’hôte local: mysql -u root suffira pour se connecter en tant que root. Mais je t’invite à sécuriser mysql en exécutant mysql_secure_installation
j’ai bien essayé mais
mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none):
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2 "No such file or directory")
Enter current password for root (enter for none):
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'
je comprends rien. un coup ce fichier mysqld.sock existe un coup il disparaît. Là il n’existe plus
j’ai beau entré mon code root, il ne veut pas le prendre.
pourtant j’ai commenté cette ligne dans my.cnf
The following options will be passed to all MySQL clients
#password = your_password
pour faire une synchro, c’est dingue ce qu’il faut faire. Évidemment si on ne veut pas passer par googledob.
pour apache, j’espère que ce que j’ai fait va suffir pour mysql. Pas envi de me lancer à comprendre un serveur Web
Enfin j’ai résolu mon problème d’accès de la façon suivante si cela peut intéresser quelqu’un :
$ hostname
nom du pc
-j’ai installé Mariadb
$ ins mariadb-server-10.1
$ ins libclone-perl libmldbm-perl libnet-daemon-perl libsql-statement-perl mariadb-test netcat-openbsd tinyca
-j’ai démarré le service ``
$ systemctl start mariadb.service
Il me demande une authentification : le code session du user dans laquelle je suis
- s’assurer que le service a bien démarrer sans erreur, il suffit de saisir :
$ systemctl status mariadb.service
sudo mysql -p
MariaDB [(none)]> SELECT user, host, plugin, password FROM mysql.user;
| root | localhost | unix_socket |
-je sécurise mysql
$ sudo mysql_secure_installation
-je créé une BD
MariaDB [(none)] > CREATE DATABASE n omBD CHARACTER SET 'utf8';
MariaDB [(none)] > SHOW DATABASES;
Database
nomBD
information_schema |
| mysql
performance_schema
- je créé un utilisateur pour cette BD
MariaDB [(none)] > GRANT ALL PRIVILEGES ON nomBD. TO "nomuser de la session"@"localhost" IDENTIFIED BY ‹ code user de la session ›;*
MariaDB [mysql]> SELECT User, Host, plugin FROM mysql.user
| User | Host | plugin |
| root | localhost | unix_socket
| nomuser | localhost | |
MariaDB [(none)] > exit ;
$ mysql -u nomuser -p nomBD
Enter password:
MariaDB [nomBD]>
pour plus de détails :
« https://openclassrooms.com/fr/courses/1959476-administrez-vos-bases-de-donnees-avec-mysql/1960531-creation-dune-base-de-donnees »
Je n’ai plus qu’à essayer de configurer ma BD