Comment générer des clés SSH?
Découvrez comment générer une clé SSH pour accéder à votre serveur sans mot de passe. Suivez nos étapes faciles à comprendre pour créer et ajouter des clés SSH.
MariaDB est une base de données open source gratuite, et est le remplacement libre le plus utilisé pour MySQL. Il est réalisé par les développeurs de MySQL et destiné à rester libre sous la GNU GPL. Il est très rapide, évolutif et est livré avec un riche ensemble de fonctionnalités qui le rendent très polyvalent pour une grande variété de cas d'utilisation.
Ce didacticiel vous expliquera comment installer et configurer MariaDB avec prise en charge SSL sur Ubuntu 16.04.
Par défaut, la dernière version de MariaDB n'est pas disponible dans le référentiel Ubuntu 16.04; vous devrez donc ajouter le référentiel MariaDB à votre système.
Tout d'abord, téléchargez la clé avec la commande suivante:
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
Ensuite, ajoutez le référentiel MariaDB au /etc/apt/sources.listfichier:
sudo echo "deb [arch=amd64,i386,ppc64el] http://ftp.utexas.edu/mariadb/repo/10.1/ubuntu xenial main" >> /etc/apt/sources.list
Mettez à jour l'index apt avec la commande suivante:
sudo apt-get update -y
Une fois l'index apt mis à jour, installez le serveur MariaDB avec la commande suivante:
sudo apt-get install mariadb-server -y
Démarrez le serveur MariaDB et activez-le pour démarrer au démarrage:
sudo systemctl start mysql
sudo systemctl enable mysql
Ensuite, vous devrez exécuter un mysql_secure_installationscript pour sécuriser l'installation de MariaDB. Ce script vous permet de définir le mot de passe root, de supprimer les utilisateurs anonymes, d'interdire la connexion root distante et de supprimer la base de données de test:
sudo mysql_secure_installation
Créez d'abord un répertoire pour stocker tous les fichiers de clés et de certificats.
sudo mkdir /etc/mysql-ssl
Ensuite, modifiez le répertoire /etc/mysql-sslet créez le certificat CA et la clé privée avec la commande suivante:
sudo cd /etc/mysql-ssl
sudo openssl genrsa 2048 > ca-key.pem
sudo openssl req -new -x509 -nodes -days 365000 -key ca-key.pem -out ca-cert.pem
Répondez à toutes les questions comme indiqué ci-dessous:
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:IN
State or Province Name (full name) [Some-State]:GUJ
Locality Name (eg, city) []:JND
Organization Name (eg, company) [Internet Widgits Pty Ltd]:ENJ
Organizational Unit Name (eg, section) []:SYSTEM
Common Name (e.g. server FQDN or YOUR name) []:HITESH
Email Address []:example@example.com
Ensuite, créez une clé privée pour le serveur avec la commande suivante:
sudo openssl req -newkey rsa:2048 -days 365 -nodes -keyout server-key.pem -out server-req.pem
Répondez à toutes les questions comme vous l'avez fait dans la commande précédente.
Ensuite, exportez la clé privée du serveur vers une clé de type RSA avec la commande suivante:
sudo sudo openssl rsa -in server-key.pem -out server-key.pem
Enfin, générez un certificat de serveur à l'aide du certificat CA comme suit:
sudo openssl x509 -req -in server-req.pem -days 365 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem
Vous pouvez maintenant voir tous les certificats et la clé avec la commande suivante:
ls
Vous devriez voir la sortie suivante:
ca-cert.pem ca-key.pem server-cert.pem server-key.pem server-req.pem
Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.
Vous devez avoir tous les certificats et une clé privée; et maintenant vous devrez configurer MariaDB pour utiliser la clé et les certificats. Vous pouvez le faire en modifiant le /etc/mysql/mariadb.conf.d/50-server.cnffichier:
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
Ajoutez les lignes suivantes sous la [mysqld]section:
ssl-ca=/etc/mysql-ssl/ca-cert.pem
ssl-cert=/etc/mysql-ssl/server-cert.pem
ssl-key=/etc/mysql-ssl/server-key.pem
##Change this value to connect the MariaDB server from another host.
bind-address = *
Enregistrez le fichier, puis redémarrez le service MariaDB pour appliquer ces modifications:
sudo systemctl restart mysql
Maintenant, vous pouvez vérifier si la configuration SSL fonctionne ou non avec la requête suivante:
mysql -u root -p
MariaDB [(none)]> SHOW VARIABLES LIKE '%ssl%';
Si la configuration a réussi, vous devriez voir la sortie suivante:
+---------------+--------------------------------+
| Variable_name | Value |
+---------------+--------------------------------+
| have_openssl | YES |
| have_ssl | YES |
| ssl_ca | /etc/mysql-ssl/ca-cert.pem |
| ssl_capath | |
| ssl_cert | /etc/mysql-ssl/server-cert.pem |
| ssl_cipher | |
| ssl_crl | |
| ssl_crlpath | |
| ssl_key | /etc/mysql-ssl/server-key.pem |
+---------------+--------------------------------+
Vous devriez remarquer que les valeurs have_sslet have_opensslsont activées dans la sortie ci-dessus.
Créez un utilisateur distant qui a le privilège d'accéder au serveur MariaDB via SSL. Pour ce faire, exécutez la commande suivante:
Tout d'abord, connectez-vous au shell MySQL:
mysql -u root -p
Ensuite, créez un utilisateur remoteet accordez le privilège d'accéder au serveur via SSL.
MariaDB [(none)]>GRANT ALL PRIVILEGES ON *.* TO 'remote'@'192.168.0.191' IDENTIFIED BY 'password' REQUIRE SSL;
Ensuite, videz les privilèges avec la commande suivante:
MariaDB [(none)]>FLUSH PRIVILEGES;
Enfin, quittez le shell MySQL avec la commande suivante:
MariaDB [(none)]>exit;
Remarque: 192.168.0.191 est l'adresse IP de la machine de l'utilisateur distant (client).
Votre serveur est maintenant prêt à autoriser les connexions à l'utilisateur distant.
La configuration côté serveur est terminée. Ensuite, vous devrez créer une nouvelle clé et un nouveau certificat pour le client.
Sur la machine serveur, créez la clé client avec la commande suivante:
sudo cd /etc/mysql-ssl
sudo sudo openssl req -newkey rsa:2048 -days 365 -nodes -keyout client-key.pem -out client-req.pem
Ensuite, traitez la clé RSA cliente avec la commande suivante:
sudo openssl rsa -in client-key.pem -out client-key.pem
Enfin, signez le certificat client avec la commande suivante:
sudo openssl x509 -req -in client-req.pem -days 365 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out client-cert.pem
Tous les certificats et la clé sont prêts pour le client. Ensuite, vous devrez copier tous les certificats clients sur n'importe quel ordinateur client sur lequel vous souhaitez exécuter le client MariaDB.
Vous devrez installer le client MariaDB sur la machine cliente.
Tout d'abord, sur la machine cliente, téléchargez la clé de MariaDB avec la commande suivante:
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
Ensuite, ajoutez le référentiel MariaDB au /etc/apt/sources.listfichier:
sudo echo "deb [arch=amd64,i386,ppc64el] http://ftp.utexas.edu/mariadb/repo/10.1/ubuntu xenial main" >> /etc/apt/sources.list
Ensuite, mettez à jour l'index apt avec la commande suivante:
sudo apt-get update -y
Une fois que l'index apt est mis à jour, installez le client MariaDB sur la machine client avec la commande suivante:
sudo apt-get install mariadb-client -y
Créez maintenant un répertoire pour stocker tous les certificats:
sudo mkdir /etc/mysql-ssl
Ensuite, copiez tous les certificats clients de la machine serveur vers la machine client avec la commande suivante:
sudo scp root@192.168.0.190:/etc/mysql-ssl/client-* /etc/mysql-ssl/
Ensuite, vous devrez configurer le client MariaDB pour utiliser SSL. Vous pouvez le faire en créant un /etc/mysql/mariadb.conf.d/50-mysql-clients.cnffichier:
sudo nano /etc/mysql/mariadb.conf.d/50-mysql-clients.cnf
Ajoutez les lignes suivantes:
[client]
ssl-ca=/etc/mysql-ssl/ca-cert.pem
ssl-cert=/etc/mysql-ssl/client-cert.pem
ssl-key=/etc/mysql-ssl/client-key.pem
Enregistrez le fichier lorsque vous avez terminé.
Maintenant que tout est configuré, il est temps de vérifier si vous pouvez vous connecter au serveur MariaDB avec succès ou non.
Sur la machine cliente, exécutez la commande suivante pour vous connecter au serveur MariaDB:
mysql -u remote -h 192.168.0.190 -p mysql
Il vous sera demandé de saisir le remotemot de passe utilisateur. Après avoir donné le mot de passe, vous serez connecté au serveur MariaDB distant.
Vérifiez l'état de la connexion avec la commande suivante:
MariaDB [mysql]> status
Vous devriez voir la sortie suivante:
--------------
mysql Ver 15.1 Distrib 10.2.7-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
Connection id: 62
Current database: mysql
Current user: remote@192.168.0.191
SSL: Cipher in use is DHE-RSA-AES256-SHA
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server: MariaDB
Server version: 10.0.31-MariaDB-0ubuntu0.16.04.2 Ubuntu 16.04
Protocol version: 10
Connection: 192.168.0.190 via TCP/IP
Server characterset: utf8mb4
Db characterset: utf8mb4
Client characterset: utf8
Conn. characterset: utf8
TCP port: 3306
Uptime: 1 hours 31 min 31 sec
Vous devriez voir SSL: Cipher in use is DHE-RSA-AES256-SHAdans la sortie ci-dessus. Cela signifie que votre connexion est désormais sécurisée avec SSL.
Toutes nos félicitations! Vous avez correctement configuré un serveur MariaDB avec prise en charge SSL. Vous pouvez désormais accorder l'accès à d'autres clients pour accéder au serveur MariaDB via SSL.
Découvrez comment générer une clé SSH pour accéder à votre serveur sans mot de passe. Suivez nos étapes faciles à comprendre pour créer et ajouter des clés SSH.
Découvrez comment créer un serveur de messagerie avec hMailServer sous Windows pour recevoir des e-mails facilement.
Les attaques de ransomware sont en augmentation, mais l'IA peut-elle aider à lutter contre le dernier virus informatique ? L'IA est-elle la réponse ? Lisez ici, sachez que l'IA est un boone ou un fléau
ReactOS, un système d'exploitation open source et gratuit est ici avec la dernière version. Cela peut-il suffire aux besoins des utilisateurs de Windows modernes et faire tomber Microsoft ? Découvrons-en plus sur cet ancien style, mais une expérience de système d'exploitation plus récente.
Whatsapp a finalement lancé l'application de bureau pour les utilisateurs Mac et Windows. Vous pouvez désormais accéder facilement à Whatsapp depuis Windows ou Mac. Disponible pour Windows 8+ et Mac OS 10.9+
Lisez ceci pour savoir comment l'intelligence artificielle devient populaire parmi les petites entreprises et comment elle augmente les probabilités de les faire grandir et de donner à leurs concurrents un avantage.
Récemment, Apple a publié macOS Catalina 10.15.4, une mise à jour supplémentaire pour résoudre les problèmes, mais il semble que la mise à jour cause davantage de problèmes, ce qui entraîne le bridage des machines mac. Lisez cet article pour en savoir plus
13 outils commerciaux d'extraction de données de Big Data
Notre ordinateur stocke toutes les données d'une manière organisée connue sous le nom de système de fichiers de journalisation. C'est une méthode efficace qui permet à l'ordinateur de rechercher et d'afficher des fichiers dès que vous appuyez sur la recherche.https://wethegeek.com/?p=94116&preview=true
Alors que la science évolue à un rythme rapide, prenant le pas sur une grande partie de nos efforts, les risques de nous soumettre à une Singularité inexplicable augmentent également. Lisez, ce que la singularité pourrait signifier pour nous.