Création d'un cloud perso sur mon PC (owncloud)

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 :

  • J’ai désinstallé complètement mysql

  • je me suis assuré que la machine possède un nom

$ 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

  • j’entre dans mysql

sudo mysql -p

  • je liste les utilisateur

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';

  • je vérifie

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’;*

  • je vérifie

MariaDB [mysql]> SELECT User, Host, plugin FROM mysql.user

| User | Host | plugin |

| root | localhost | unix_socket

| nomuser | localhost | |

  • je sors

MariaDB [(none)] > exit ;

  • ET MIRACLE

$ 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