En aquest tema, explorarem les millors pràctiques de seguretat per utilitzar Git de manera segura i protegir els teus projectes i dades. La seguretat és un aspecte crucial en el desenvolupament de programari, especialment quan es treballa en equips o es col·labora en projectes de codi obert.
- Utilitza Claus SSH per a l'Autenticació
Què són les Claus SSH?
Les claus SSH (Secure Shell) són una forma segura d'autenticar-se en servidors remots sense necessitat d'introduir una contrasenya cada vegada. Consisteixen en una parella de claus: una clau pública i una clau privada.
Com Generar Claus SSH
# Generar una nova parella de claus SSH ssh-keygen -t rsa -b 4096 -C "[email protected]"
Aquest comandament crearà una clau pública i una clau privada. La clau pública es pot compartir amb els servidors remots, mentre que la clau privada ha de mantenir-se segura.
Afegir la Clau Pública al Servidor Remot
- Configura l'Autenticació de Dos Factors (2FA)
Què és l'Autenticació de Dos Factors?
L'autenticació de dos factors (2FA) afegeix una capa addicional de seguretat requerint una segona forma d'autenticació, com un codi generat per una aplicació mòbil, a més de la contrasenya.
Com Configurar 2FA en GitHub
- Ves a les teves configuracions de GitHub.
- Selecciona "Security" i després "Enable two-factor authentication".
- Segueix les instruccions per configurar una aplicació d'autenticació com Google Authenticator.
- Mantén les Claus Privades Segures
Bones Pràctiques per a les Claus Privades
- No comparteixis mai la teva clau privada.
- Utilitza una contrasenya per protegir la teva clau privada.
- Emmagatzema les claus privades en ubicacions segures.
- Utilitza
.gitignore
per Excloure Fitxers Sensibles
.gitignore
per Excloure Fitxers SensiblesQuè és .gitignore
?
El fitxer .gitignore
s'utilitza per especificar quins fitxers o directoris Git ha d'ignorar. Això és útil per evitar que fitxers sensibles o de configuració es comprometin al repositori.
Exemple de .gitignore
# Ignorar fitxers de configuració config/*.yml # Ignorar claus privades *.pem *.key # Ignorar fitxers de credencials credentials.json
- Revisa i Neteja l'Historial de Commits
Per què és Important?
Els commits poden contenir informació sensible que no hauria d'estar en el repositori. És important revisar l'historial de commits i eliminar qualsevol informació comprometedora.
Com Netejar l'Historial
# Utilitzar BFG Repo-Cleaner per eliminar fitxers grans o sensibles bfg --delete-files '*.pem' --delete-files '*.key'
- Utilitza Repositoris Privats per a Projectes Sensibles
Avantatges dels Repositoris Privats
- Control d'Accés: Només les persones autoritzades poden veure i modificar el codi.
- Protecció de Dades: Les dades sensibles es mantenen fora de l'abast del públic.
- Mantén el Programari Actualitzat
Per què Actualitzar?
Les actualitzacions sovint inclouen correccions de seguretat que protegeixen contra vulnerabilitats conegudes.
Com Actualitzar Git
Exercici Pràctic
Objectiu
Configurar un repositori Git amb les millors pràctiques de seguretat.
Passos
- Generar i configurar claus SSH.
- Configurar 2FA en el teu compte de GitHub.
- Crear un fitxer
.gitignore
per excloure fitxers sensibles. - Revisar l'historial de commits per assegurar-se que no hi ha informació sensible.
- Configurar el repositori com a privat.
Solució
# 1. Generar claus SSH ssh-keygen -t rsa -b 4096 -C "[email protected]" ssh-copy-id user@remote_host # 2. Configurar 2FA en GitHub (a través de la interfície web) # 3. Crear un fitxer .gitignore echo "config/*.yml" >> .gitignore echo "*.pem" >> .gitignore echo "*.key" >> .gitignore echo "credentials.json" >> .gitignore # 4. Revisar l'historial de commits git log # 5. Configurar el repositori com a privat (a través de la interfície web de GitHub)
Conclusió
En aquesta secció, hem après diverses pràctiques de seguretat per utilitzar Git de manera segura. Hem cobert des de l'ús de claus SSH i l'autenticació de dos factors fins a la configuració de fitxers .gitignore
i la revisió de l'historial de commits. Seguint aquestes pràctiques, podràs protegir millor els teus projectes i dades.
Dominar Git: De Principiant a Avançat
Mòdul 1: Introducció a Git
Mòdul 2: Operacions Bàsiques de Git
- Creant un Repositori
- Clonant un Repositori
- Flux de Treball Bàsic de Git
- Preparant i Cometent Canvis
- Veient l'Historial de Commits
Mòdul 3: Branques i Fusió
- Entenent les Branques
- Creant i Canviant de Branques
- Fusionant Branques
- Resolent Conflictes de Fusió
- Gestió de Branques
Mòdul 4: Treballant amb Repositoris Remots
- Entenent els Repositoris Remots
- Afegint un Repositori Remot
- Recuperant i Traient Canvis
- Empenyent Canvis
- Seguint Branques
Mòdul 5: Operacions Avançades de Git
Mòdul 6: Eines i Tècniques de Git
Mòdul 7: Estratègies de Col·laboració i Flux de Treball
- Forking i Pull Requests
- Revisions de Codi amb Git
- Flux de Treball Git Flow
- GitHub Flow
- Integració Contínua amb Git
Mòdul 8: Millors Pràctiques i Consells de Git
- Escrivint Bons Missatges de Commit
- Mantenint un Historial Netejat
- Ignorant Fitxers amb .gitignore
- Millors Pràctiques de Seguretat
- Consells de Rendiment
Mòdul 9: Resolució de Problemes i Depuració
- Problemes Comuns de Git
- Desfent Canvis
- Recuperant Commits Perduts
- Tractant amb Repositoris Corruptes
- Tècniques Avançades de Depuració