Configuración de SSH para Git Server:
Para configurar un servidor Git para que funcione a través de SSH, debe asegurarse de que SSH esté instalado y se esté ejecutando correctamente.
Primero, actualice la caché del repositorio de paquetes de CentOS 8 con el siguiente comando:
$ sudo dnf makecache
Ahora, instale el servidor SSH con el siguiente comando:
$ sudo dnf install -y openssh
Debe estar instalado. En mi caso ya estaba instalado.
Ahora, verifique si el servicio SSH se está ejecutando con el siguiente comando:
$ sudo systemctl status sshd
El servicio SSH debería estar ejecutándose como se muestra en la captura de pantalla a continuación.
Si por alguna razón, el servicio SSH no se está ejecutando, puede iniciarlo con el siguiente comando:
$ sudo systemctl start sshdAhora, 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 que los cambios de configuración del firewall surtan efecto:
$ sudo firewall-cmd --reload
Instalación de Git:
Ahora, puedes instalar Git con el siguiente comando:
$ sudo dnf instalar git
Para confirmar la instalación, presione Y y luego presione
Git debe estar instalado.
Creación de un usuario dedicado para alojar repositorios de Git:
Ahora, cree un usuario dedicado git con el siguiente comando:
$ sudo useradd --create-home --shell / bin / bash git
Ahora, inicie sesión como 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 tener permiso de lectura, escritura y ejecución para ~ /.ssh directorio.
Para hacer eso, ejecute el siguiente comando:
$ chmod 700 ~ /.ssh /
Como puede ver, ahora solo el usuario git tiene permiso de lectura, escritura y ejecución en el directorio.
$ ls -ld ~ /.ssh /
Ahora, crea un nuevo archivo ~ /.ssh / claves_autorizadas como sigue:
$ toque ~ /.ssh / claves_autorizadas
Solo el git el usuario debe tener permiso de lectura y escritura para ~ /.ssh / claves_autorizadas expediente.
Para hacer eso, ejecute el siguiente comando:
$ chmod 600 ~ /.ssh / claves_autorizadas
Como puede ver, ahora solo el usuario git tiene permiso de lectura y escritura para el ~ /.ssh / claves_autorizadas expediente.
$ ls -lh ~ /.ssh / claves_autorizadas
Agregar la clave pública del cliente al servidor Git:
Para acceder a los repositorios de git en el servidor de Git, los usuarios del repositorio deben agregar sus claves públicas al servidor de Git.
Los usuarios pueden generar sus claves SSH con el siguiente comando:
$ ssh-keygen
prensa
prensa
prensa
Se debe generar la clave SSH.
Ahora, los usuarios pueden encontrar su clave pública en el ~ /.ssh / id_rsa.pub expediente.
$ gato ~ /.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 subido 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 al ~ /.ssh / claves_autorizadas archivo de la siguiente manera:
$ cat / tmp / shovon-clave.pub >> ~ /.ssh / claves_autorizadas
La clave pública debe adjuntarse al final de la ~ /.ssh / claves_autorizadas expediente.
Creación de un repositorio Git vacío en el servidor Git:
En el directorio de inicio del git usuario, mantendremos todos nuestros repositorios de Git a los que las personas autorizadas pueden acceder.
Para crear un repositorio de Git vacío prueba en el servidor Git, ejecute el siguiente comando:
$ git init - prueba básica.git
Si un usuario autorizado desea acceder al repositorio de Git desde el servidor de Git, todo lo que necesita es el nombre del repositorio de Git y la dirección IP del servidor de Git.
Para encontrar la dirección IP del servidor Git, ejecute el siguiente comando:
$ nmcliLa dirección IP en mi caso es 192.168.20.129. Será diferente para ti. Por lo tanto, asegúrese de reemplazarlo a partir de ahora.
Un nuevo directorio prueba.git debe crearse en el servidor Git.
Accediendo a los repositorios de Git desde el servidor de Git:
Ahora, un usuario autorizado puede acceder al prueba El repositorio de Git que hemos creado anteriormente de la siguiente manera:
$ git clon git @ 192.168.20.129: ~ / prueba.git
Si el usuario se conecta al servidor Git por primera vez, tendrá que escribir sí y presione
El repositorio de 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 hasta el directorio test / de la siguiente manera:
$ cd prueba /
Digamos que el usuario creó un nuevo archivo.
$ echo "Hola mundo"> mensaje.TXT
Comprometido los cambios.
$ git agregar .
$ git commit -m 'compromiso inicial'
$ git log --en línea
Luego, el usuario envió los cambios al servidor Git.
$ git push origin
Agregar otro miembro del equipo:
Si otro usuario desea acceder a la prueba del repositorio de Git, deberá generar una clave SSH y enviar la clave pública al administrador del servidor de Git. Una vez que el administrador del servidor Git agrega su clave pública al ~ /.ssh / claves_autorizadas archivo, el usuario también puede acceder a los repositorios de Git en el servidor.
Digamos, Beto también quiere trabajar en el prueba Repositorio de Git.
Clona el prueba Repositorio de Git en su computadora.
$ git clon git @ 192.168.20.129: ~ / prueba.git
Beto escribe en sí y prensas
La prueba El repositorio de Git está clonado.
Beto navega a la prueba/ directorio.
Encuentra la confirmación que realizó la persona que trabaja en este repositorio de Git.
$ git log --en línea
Hace algunos cambios en el proyecto.
$ echo "esta edición es de bob" >> mensaje.TXT
Compromete los cambios.
$ git agregar .$ echo "esta edición es de bob" >> mensaje.TXT
$ git log --en línea
Beto envía los cambios al servidor Git.
Ahora, el otro usuario shovon extrae los cambios (si los hay) al repositorio de Git desde el servidor de Git.
shovon encuentra el nuevo compromiso que Beto hecho.
$ cat mensaje.TXT
Entonces, así es como configura un servidor Git con SSH en CentOS 8 y lo usa. Gracias por leer este artículo.