Para configurar un servidor GIT para funcionar a través de SSH, debe asegurarse de que SSH esté instalado y se ejecute correctamente.
Primero, actualice el caché del repositorio del paquete CentOS 8 con el siguiente comando:
$ sudo dnf makecache
Ahora, instale el servidor SSH con el siguiente comando:
$ sudo dnf instalación -y openssh
Debe instalarse. En mi caso, ya estaba instalado.
Ahora, verifique si el servicio SSH se está ejecutando con el siguiente comando:
$ sudo systemctl sshd
El servicio SSH debe estar ejecutado como se muestra en la captura de pantalla a continuación.
Si por alguna razón, el servicio SSH no se está ejecutando para usted, puede iniciarlo con el siguiente comando:
$ sudo systemctl start sshd
Ahora, permita el acceso a los puertos SSH a través del firewall con el siguiente comando:
$ sudo firewall-cmd --add-service = ssh --permanent
Finalmente, ejecute el siguiente comando para los cambios de configuración de firewall para entrar en vigencia:
$ sudo firewall-cmd--Reload
Instalación de Git:
Ahora, puede instalar Git con el siguiente comando:
$ sudo dnf install git
Para confirmar la instalación, presione Y y luego presione .
GIT debe instalarse.
Creación de un usuario dedicado para alojar repositorios Git:
Ahora, crea un usuario dedicado git Con el siguiente comando:
$ Sudo UserAdd-Create-Home --Shell /Bin /Bash Git
Ahora, inicie sesión como el git Usuario con el siguiente comando:
$ sudo su - git
Ahora, crea un nuevo directorio ~/.ssh como sigue:
$ mkdir ~/.ssh
Solo el git El usuario debe haber leído, escribir y ejecutar permiso para el ~/.ssh directorio.
Para hacer eso, ejecute el siguiente comando:
$ chmod 700 ~/.ssh/
Como puede ver, ahora solo el usuario git ha leído, escribe y ejecutó permiso al directorio.
$ ls -ld ~/.ssh/
Ahora, crea un nuevo archivo ~/.ssh/autorized_keys como sigue:
$ touch ~/.ssh/autorized_keys
Solo el git El usuario debe haber leído y escribir permiso para el ~/.ssh/autorized_keys archivo.
Para hacer eso, ejecute el siguiente comando:
$ chmod 600 ~/.ssh/autorized_keys
Como puede ver, ahora solo el usuario git ha leído y escribe permiso para el ~/.ssh/autorized_keys archivo.
$ ls -lh ~/.ssh/autorized_keys
Agregar clave pública del cliente al servidor GIT:
Para acceder a los repositorios GIT en el servidor GIT, los usuarios del repositorio deben agregar sus claves públicas al servidor GIT.
Los usuarios pueden generar sus claves SSH con el siguiente comando:
$ ssh-keygen
Prensa .
Prensa .
Prensa .
La tecla SSH debe generarse.
Ahora, los usuarios pueden encontrar su clave pública en el ~/.ssh/id_rsa.pub archivo.
$ Cat ~/.ssh/id_rsa.pub
Ahora, los usuarios deben enviar sus claves públicas al administrador del servidor GIT y el administrador del servidor puede agregar estas claves al servidor GIT.
Digamos que el administrador del servidor ha cargado el archivo de clave pública al servidor GIT. El archivo está en la ruta /tmp/shovon-key.pub.
Ahora, el administrador del servidor puede agregar el contenido de la clave pública a la ~/.ssh/autorized_keys Archivo de la siguiente manera:
$ Cat /TMP /Shovon-Key.Pub >> ~/.ssh/autorized_keys
La clave pública debe agregarse al final de la ~/.ssh/autorized_keys archivo.
Creación de un repositorio git vacío en el servidor Git:
En el directorio de inicio del git Usuario, mantendremos todos nuestros repositorios GIT a los que las personas autorizadas puedan acceder.
Para crear un repositorio git vacío prueba En el servidor GIT, ejecute el siguiente comando:
$ git init -prueba de barras.git
Si un usuario autorizado desea acceder al repositorio GIT desde el servidor GIT, todo lo que necesita es el nombre del repositorio GIT y la dirección IP del servidor GIT.
Para encontrar la dirección IP del servidor GIT, ejecute el siguiente comando:
$ nmcli
La dirección IP en mi caso es 192.168.20.129. Será diferente para ti. Entonces, asegúrese de reemplazarlo de ahora en adelante.
Un nuevo directorio prueba.git debe crearse en el servidor GIT.
Acceso a los repositorios GIT desde el servidor Git:
Ahora, un usuario autorizado puede acceder al prueba Git Repository que hemos creado anteriormente de la siguiente manera:
$ git clone [email protected]: ~/prueba.git
Si el usuario se está conectando al servidor GIT por primera vez, él/ella tendrá que escribir Sí y presionar .
El repositorio git prueba debe ser clonado.
Un nuevo directorio prueba/ debe crearse en el directorio de trabajo actual de los usuarios.
El usuario tendrá que navegar a la prueba/ directorio de la siguiente manera:
Prueba de $ CD/
Digamos que el usuario creó un nuevo archivo.
$ Echo "Hello World"> Mensaje.TXT
Cometió los cambios.
$ git add .
$ git commit -m 'commit inicial'
$ git log -enneline
Luego, el usuario empujó los cambios al servidor GIT.
$ Git Push Origin
Agregar otro miembro del equipo:
Si otro usuario quiere acceder a la prueba de repositorio Git, tendrá que generar una clave SSH y enviar la clave pública al administrador del servidor GIT. Una vez que el administrador del servidor GIT agrega su clave pública al ~/.ssh/autorized_keys Archivo, el usuario también puede acceder a los repositorios GIT en el servidor.
Digamos, Beto También quiere trabajar en el prueba Repositorio de git.
El clama el prueba Git Repository en su computadora.
$ git clone [email protected]: ~/prueba.git
Beto tipos Sí y prensas .
El prueba El repositorio de git está clonado.
Beto navegación al prueba/ directorio.
Encuentra el compromiso que realizó la persona que trabaja en este repositorio de Git.
$ git log -enneline
Hace algunos cambios en el proyecto.
$ echo "Esta edición es de Bob" >> Mensaje.TXT
Comete los cambios.
$ git add .
$ echo "Esta edición es de Bob" >> Mensaje.TXT
$ git log -enneline
Beto Empuja los cambios al servidor GIT.
Ahora, el otro usuario pala extrae los cambios (si los hay) al repositorio Git del servidor GIT.
pala Encuentra la nueva confirmación que Beto hecho.
Mensaje de $ Cat.TXT
Entonces, así es como configuras un servidor GIT con SSH en Centos 8 y lo usas. Gracias por leer este artículo.