From 3e0a7572e69cb65de7e631638ce867571bd59c65 Mon Sep 17 00:00:00 2001 From: Ludovic Cartier Date: Fri, 9 Aug 2024 18:26:06 +0200 Subject: [PATCH] go to mkdocs --- docs/MySQL/size.md | 26 ++++ docs/MySQL/user.md | 27 ++++ docs/SSH/sshportal.md | 353 ++++++++++++++++++++++++++++++++++++++++++ docs/assets/logo.png | Bin 0 -> 60005 bytes docs/index.md | 4 + mkdocs.yml | 29 ++++ 6 files changed, 439 insertions(+) create mode 100644 docs/MySQL/size.md create mode 100644 docs/MySQL/user.md create mode 100644 docs/SSH/sshportal.md create mode 100644 docs/assets/logo.png create mode 100644 docs/index.md create mode 100644 mkdocs.yml diff --git a/docs/MySQL/size.md b/docs/MySQL/size.md new file mode 100644 index 0000000..7ed883f --- /dev/null +++ b/docs/MySQL/size.md @@ -0,0 +1,26 @@ +categories: mysql +title: Taille des bases de données et tables + +#### Obtenir la taille de *toutes* les bases de données présentes sur le serveur : + +```bash +SELECT table_schema AS 'DB Name', ROUND(SUM(data_length + index_length) / 1024 / 1024, 1) AS 'DB Size in MB' FROM information_schema.tables GROUP BY table_schema; +``` + +#### Obtenir la taille d'une base en particulier : + +```bash +SELECT table_schema AS 'DB Name', ROUND(SUM(data_length + index_length) / 1024 / 1024, 1) AS 'DB Size in MB' FROM information_schema.tables WHERE table_schema = '##DBNAME##' GROUP BY table_schema; +``` + +#### Obtenir la taille de toutes les tables d'un base de données spécifique : + +```bash +SELECT TABLE_NAME AS `Table`, ROUND((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024) AS `Size (MB)` FROM information_schema.TABLES WHERE TABLE_SCHEMA = "" ORDER BY (DATA_LENGTH + INDEX_LENGTH) DESC; +``` + +#### Obtenir la taille de toutes les tables de *toutes* les bases de données : + +```bash +SELECT TABLE_SCHEMA AS `Database`, TABLE_NAME AS `Table`, ROUND((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024) AS `Size (MB)` FROM information_schema.TABLES ORDER BY (DATA_LENGTH + INDEX_LENGTH) DESC; +``` diff --git a/docs/MySQL/user.md b/docs/MySQL/user.md new file mode 100644 index 0000000..a6011bf --- /dev/null +++ b/docs/MySQL/user.md @@ -0,0 +1,27 @@ +categories: mysql +title: Gestion des utilisateurs + +#### Obtenir la liste des utilisateurs + +```bash +mysql> SELECT User, Host from mysql.user; +``` + +#### Créer un nouvel utilisateur + +```bash +mysql> CREATE USER ``@`` IDENTIFIED BY ``; +``` + +#### Affecter des droits à un utilisateur + +```bash +mysql> GRANT ALL PRIVILEGES ON .* TO ``@`` IDENTIFIED BY ``; +mysql> FLUSH PRIVILEGES; +``` + +#### Vérifier les droits d'un utilisateur + +```bash +mysql> SHOW GRANTS FOR ``@``; +``` diff --git a/docs/SSH/sshportal.md b/docs/SSH/sshportal.md new file mode 100644 index 0000000..095dc91 --- /dev/null +++ b/docs/SSH/sshportal.md @@ -0,0 +1,353 @@ +categories: ssh +title: SSHPortal - Installation et exploitation + +#### Pré-requis + +_Docker_ doit être installé sur le serveur qui accueillera _SSHPortal_. + +Les lignes pré-fixées de "~" sont à exécuter via SSH. + +Les lignes pré-fixées de "config> " sont à exécuter dans la console d'administration de SSPortal. + +#### Installation + +L'installation se fait via _Docker_ , avec l'image [officielle](https://hub.docker.com/r/moul/sshportal). + +```bash +~ mkdir -p /etc/docker/compose/sshportal/{data,log} +~ cat <> /etc/docker/compose/sshportal/docker-compose.yml +version: "3" + +services: + sshportal: + image: moul/sshportal + container_name: sshportal + restart: unless-stopped + environment: + SSHPORTAL_DEFAULT_ADMIN_INVITE_TOKEN: 'XXXXX' + SSHPORTAL_DB_DRIVER: 'sqlite3' + SSHPORTAL_DATABASE_URL: '/var/lib/sshportal/sshportal.db' + ports: + - 2222:2222 + volumes: + - ./log:/log + - ./data:/var/lib/sshportal/ + - /etc/hosts:/etc/hosts:ro + - /etc/localtime:/etc/localtime:ro + networks: + sshportal: + ipv4_address: 172.19.0.2 + +networks: + sshportal: + ipam: + driver: default + config: + - subnet: 172.19.0.0/24 +EOF +~ docker-compose pull +~ docker-compose up -d +``` + +> A noter qu'il est possible d'utiliser un backend de base de données différents, selon votre choix / goût (MySQL, PostgreSQL, etc). + +#### Initialisation du compte admin + +Pour initialiser le compte _admin_, il faut : + +1. se connecter une première fois avec le token d'invitation _SSHPORTAL_DEFAULT_ADMIN_INVITE_TOKEN_ (défini dans le fichier `docker-compose.yml`) +2. lui fournir une clé SSH qui servira à identifier le compte _admin_ + +> Attention: il est indispensable de créer un clé SSH dédiée à l'administration de _SSHPortal_. + +Nous commencons par générer une clé SSH : + +```bash +~ ssh-keygen -t ed25519 -f ed25519_sshportal_admin +Generating public/private ed25519 key pair. +Enter passphrase (empty for no passphrase): +Enter same passphrase again: +Your identification has been saved in ed25519_sshportal_admin. +Your public key has been saved in ed25519_sshportal_admin.pub. +The key fingerprint is: +SHA256:69qOmaargSULBB1xdG3SlfRsAmoiSdPwBTotnlW6lUI ludal@mbp-ludal-1.home +The key's randomart image is: ++--[ED25519 256]--+ +|..**E.+o.oo. | +|...O.=.o+..o | +| .* B =o . + | +|.. * * o | +|o + . S | +|.= . | +|o . . | +| . .* | +| ..o+=o+ | ++----[SHA256]-----+ +``` + +Puis, on se connecter avec la clé SSH et le token d'invitation (pour rappel, qui est défini dans le fichier `docker-compose.yml`) : + +```bash +~ ssh -i ed25519_sshportal_admin -p 2222 -l invite:XXXXX +``` + +Cela va donc enregistrer la clé SSH "ed25519_sshportal_admin" pour le compte admin de SSHPortal. + +Pour se connecter à la console d'administration de SSHPortal, il faudra donc faire : + +```bash +~ ssh -i ed25519_sshportal_admin -p 2222 -l admin +``` + +#### Configuration + +Pré-requis: pour réaliser toutes les commandes de configuration, il est nécessaire de se connecter à _SSHPortal_ avec le compte _admin_ : + +```bash +~ ssh -i ed25519_sshportal_admin -p 2222 -l admin +``` + +##### Céation d'une clé SSH dédiée + +```bash +config> key create --name my-project +3 +``` + +Cette clé sera à copier sur les serveurs cibles, pour permettra la connexion. + +##### Créer les _hostgroup_ + +```bash +config> hostgroup create --name preprod +config> hostgroup create --name prod +``` + +Vérification : + +```bash +config> hostgroup ls + ID | NAME | HOSTS | ACLS | UPDATED | CREATED | COMMENT +-----+---------+-------+------+---------------+---------------+----------------------- + 3 | prod | 0 | 0 | 6 seconds ago | 6 seconds ago | + 2 | preprod | 0 | 0 | 9 seconds ago | 9 seconds ago | + 1 | default | 0 | 1 | 2 minutes ago | 2 minutes ago | created by sshportal +Total: 3 host groups. +``` + +##### Créer les _hosts_ + +```bash +config> host create --name=preprod1 --group=preprod --logging=everything --key my-project root@W.X.Y.Z +config> host create --name=prod1 --group=prod --logging=everything --key my-project root@W.X.Y.Z +``` + +Vérification : + +```bash +config> host ls + ID | NAME | URL | KEY | GROUPS | UPDATED | CREATED | COMMENT | HOP | LOGGING +-----+----------+--------------------+---------+-------------+----------------+----------------+---------+-----+------------- + 2 | prod1 | ssh://root@W.X.Y.Z | default | prod | 16 seconds ago | 16 seconds ago | | | everything + 1 | preprod1 | ssh://root@W.X.Y.Z | default | preprod c| 29 seconds ago | 29 seconds ago | | | everything +Total: 2 hosts. +``` + +##### Créer les _usergroup_ + +```bash +config> usergroup create --name foo +config> usergroup create --name bar +``` + +Vérification : + +```bash +config> usergroup ls + ID | NAME | USERS | ACLS | UPDATE | CREATE | COMMENT +-----+----------+-------+------+---------------+---------------+----------------------- + 3 | bar | 1 | 0 | 6 seconds ago | 6 seconds ago | + 2 | foo | 1 | 0 | 9 seconds ago | 9 seconds ago | + 1 | default | 1 | 1 | 5 minutes ago | 5 minutes ago | created by sshportal +Total: 3 user groups. +``` + +##### Créer les utilisateurs + +> Il faut 'inviter' les utilisateurs à rejoindre notre instance de SSHPortal, via la commande suivante : + +```bash +config> user invite --name="John Doe" --group foo john.doe@domain.com +User 2 created. +``` + +En retour, SSHPortal va nous fournir un token à utiliser à la première connexion : + +```bash +To associate this account with a key, use the following SSH user: 'invite:XXXXXXXX'. +``` + +Se connecter ensuite une première fois: + +```bash +~ ssh -i my-ssh-key -p 2222 -l invite:XXXXXXX +The authenticity of host '[]:2222 ([]:2222)' can't be established. +ED25519 key fingerprint is SHA256:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.. +Are you sure you want to continue connecting (yes/no/[fingerprint])? yes +Warning: Permanently added '[]:2222' (ED25519) to the list of known hosts. +Welcome Jon Doe! + +Your key is now associated with the user "john.doe@domain.com". +Connection to closed. +``` + +Cela aura alors pour conséquence de copier la clé SSH publique sur votre compte SSHPortal. + +##### Passer un utilisateur en admin + +Il faut commencer par récupérer la liste des utilisateurs et leur id : + +```bash +config> user ls + ID | NAME | EMAIL | ROLES | KEYS | GROUPS | UPDATED | CREATED | COMMENT +-----+----------+---------------------+-------+------+--------------------------------+----------------+----------------+----------------------- + 2 | John Doe | john.doe@domain.com | | 0 | default | 4 seconds ago | 3 minutes ago | + 1 | admin | admin@localhost | admin | 1 | default | 5 minutes ago | 46 minutes ago | created by sshportal +``` + +Nous pouvons maintenant mettre à jour l'utilisateur et le passer en administrateur : + +``` +config> user update --email john.doe@domain.com --assign-role admin 2 +``` + +Vérification : + +```bash +config> user ls + ID | NAME | EMAIL | ROLES | KEYS | GROUPS | UPDATED | CREATED | COMMENT +-----+----------+---------------------+-------+------+--------------------------------+----------------+----------------+----------------------- + 2 | John Doe | john.doe@domain.com | admin | 0 | default | 9 seconds ago | 3 minutes ago | + 1 | admin | admin@localhost | admin | 1 | default | 5 minutes ago | 46 minutes ago | created by sshportal +``` + +##### Création des ACL + +_SSHPortal_ permet de gérer finement les accès à chaque host en fonction d'un utilisateur, ou d'un groupe d'utilisateur. + +Pour créer une ACL qui permettra à un groupe d'utilisateur de se connecter à un groupe d'hôte : + +```bash +config> acl create --usergroup foo --hostgroup prod --action allow +config> acl create --usergroup foo --hostgroup preprod --action allow +``` + +Vérification : + +```bash +config> acl ls + ID | WEIGHT | USER GROUPS | HOST GROUPS | HOST PATTERN | ACTION | INCEPTION | EXPIRATION | UPDATED | CREATED | COMMENT +-----+--------+-------------+-------------+--------------+--------+-----------+------------+---------------+---------------+----------------------- + 3 | 0 | foo | preprod | | allow | | | 4 minutes ago | 4 minutes ago | + 2 | 0 | foo | prod | | allow | | | 4 minutes ago | 4 minutes ago | + 1 | 0 | default | default | | allow | | | 1 hour ago | 1 hour ago | created by sshportal +Total: 3 ACLs. +``` + +#### Préparation des hosts + +Pour se connecter aux hosts "finaux", il convient de copier la clé SSH de SSHPortal sur le compte _unix_ de votre choix sur chaque host. + +1. on peut ensuite inspecter la clé + +```bash +config> key show my-project +General +======= +Name: my-project +Type: ed25519 +Length: 1 +Comment: + +Relationships +============= +Linked hosts: (0) + +Crypto +====== +authorized_key format: ssh-ed25519 XXXXXXXXX +Private Key: +-----BEGIN PRIVATE KEY----- +XXXXXXXXXXXXXXXXXXXXXXXXXXX +-----END PRIVATE KEY----- + + +Help +==== +inspect: ssh sshportal key inspect my-project +setup: ssh user@example.com "$(ssh sshportal key setup my-project)" +``` + +2. il faut ensuite récupérer la clé + +```bash +config> key setup my-project +umask 077; mkdir -p .ssh; echo ssh-ed25519 XXXXXXXXXXXXXXXX sshportal >> .ssh/authorized_keys +``` + +3. se connecter sur chaque host et ajouter la clé SSH précédemment récupérée: + +```bash +~ ssh +~ sudo su - +~ umask 077; mkdir -p .ssh; echo ssh-ed25519 XXXXXXXXXXXXXXXX sshportal >> .ssh/authorized_keys +``` + +4. si besoin, adapter la conf de SSH `/etc/ssh/sshd_config` + +```bash +Match Address 1.2.3.4/24 + PermitRootLogin without-password +Match User root + AllowTcpForwarding yes + +AllowUsers root (ne pas effacer les autres entrées !) +``` + +```bash +~ systemctl reload sshd.service +``` + +#### Utilisation de SSHPortal + +Pour se connecter aux hosts via SSHPortal, il suffit de faire : + +```bash +~ ssh -i my-sshportal-key -p 2222 -l +``` + +A noter qu'il serait possible de rajouter une configuration dans votre fichier ".ssh/config" pour faciler les choses : + +```bash +Host portal +Port 2222 +Hostname +IdentityFile my-sshportal-key +``` + +Couplé à un _alias_ dans votre `.bashrc` : + +```bash +alias sshportal="sshportal portal -l $1" +``` + +Cela vous permettra d'utiliser SSHPortal ainsi : + +```bash +~ portal +``` + +#### Référence + +https://github.com/moul/sshportal +https://hub.docker.com/r/moul/sshportal diff --git a/docs/assets/logo.png b/docs/assets/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..3f2bb8fa7d7fabad7877b8ad644277f4c8f47bfc GIT binary patch literal 60005 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 literal 0 HcmV?d00001 diff --git a/docs/index.md b/docs/index.md new file mode 100644 index 0000000..9d65fb9 --- /dev/null +++ b/docs/index.md @@ -0,0 +1,4 @@ +# Accueil + +Site propulsé par [mkdocs.org](https://www.mkdocs.org) et [gitea](https://about.gitea.com/). + diff --git a/mkdocs.yml b/mkdocs.yml new file mode 100644 index 0000000..c6caad1 --- /dev/null +++ b/mkdocs.yml @@ -0,0 +1,29 @@ +site_name: BrainSys - wiki + +theme: + name: material + highlightjs: true + palette: + scheme: slate + primary: light blue + language: fr + logo: assets/logo.png + homepage: https://brainsys.io + features: + - navigation.indexes + - navigation.instant + - navigation.expand + - navigation.path + +extra: + consent: + title: Cookie consent + description: >- + We use cookies to recognize your repeated visits and preferences, as well + as to measure the effectiveness of our documentation and whether users + find what they're searching for. With your consent, you're helping us to + make our documentation better. + actions: + - reject + - accept + - manage