Aide - Gitea
Configuration de l'accès SSH : SSH Shell avec AuthorizedKeysCommand
- Créer un utilisateur
git
sur l'hôte :adduser --system --shell /bin/bash --group --disabled-password --home /home/git git
- Ajouter cet utilisateur au groupe
docker
avec :usermod -aG docker git newgrp docker
- Créer un fichier
/home/git/docker-shell
contenant :#!/bin/sh /usr/local/bin/docker exec -i -u git --env SSH_ORIGINAL_COMMAND="$SSH_ORIGINAL_COMMAND" git-gitea sh "$@"
- Donner les droits d'exécution :
chmod +x /home/git/docker-shell
- Ajouter ce fichier comme shell par défaut à l'utilisateur
git
avec :usermod -s /home/git/docker-shell git
- Éditer le fichier de config sshd :
vi /etc/ssh/sshd_config
- Ajouter à la fin le contenu suivant en y remplaçant
<port-ssh-gitea>
:Match User git AuthorizedKeysCommandUser git AuthorizedKeysCommand /usr/bin/ssh -p <port-ssh-gitea> -o StrictHostKeyChecking=no git@127.0.0.1 /usr/local/bin/gitea keys -c /data/gitea/conf/app.ini -e git -u %u -t %t -k %k
- Redémarrer le service sshd :
systemctl restart sshd
- Créer un clé SSH à l'utilisateur
git
de l'hôte :sudo -u git ssh-keygen -t rsa -b 4096 -C "Gitea Host Key"
- Afficher la clé SSH publique et la copier pour la coller ci-dessous :
cat /home/git/.ssh/id_rsa.pub
- Ajouter la clé publique au fichier
/data/git/.ssh/authorized_keys
dans le containergit-gitea
:docker exec -it git-gitea /bin/bash vi /data/git/.ssh/authorized_keys