User Tools

Site Tools


сервис_git

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
сервис_git [2025/11/27 08:08]
val [Пример установки ПО]
сервис_git [2026/03/02 17:30] (current)
val [Поиск чувствительных данных (паролей, ключей) в репозитории]
Line 52: Line 52:
 server:​~/​conf$ git log server:​~/​conf$ git log
  
-server:​~/​conf$ git log --follow -- file1     В каких коммитах менялся файл+server:​~/​conf$ git log --follow -- file1     В каких коммитах менялся файл
  
-server:​~/​conf$ git show <commit hash> ​       Все изменения файлов в этом коммите по +server:​~/​conf$ git show <commit hash> ​       ​Все изменения файлов в этом коммите по 
  
-server:​~/​conf$ git show <commit hash>:​file1 ​ Содержимое файла в этом коммите+server:​~/​conf$ git show <commit hash>:​file1  ​Содержимое файла в этом коммите
  
-server:​~/​conf$ git show <commit hash> file1  Изменения файла между этим и предыдущим коммитом+server:​~/​conf$ git show <commit hash> file1  ​Изменения файла между этим и предыдущим коммитом
  
-server:​~/​conf$ git diff <commit hash> file1  Изменения файла после этого коммита+server:​~/​conf$ git diff HEAD                 # Изменения после git add 
 + 
 +server:​~/​conf$ git diff <commit hash> file1  ​Изменения файла после этого коммита
  
 server:​~/​conf$ git diff <commit hash N> <commit hash M> server:​~/​conf$ git diff <commit hash N> <commit hash M>
Line 298: Line 300:
  
 (venv1) server:​~/​kubespray#​ git checkout tags/​v2.26.0 (venv1) server:​~/​kubespray#​ git checkout tags/​v2.26.0
 +</​code>​
 +
 +===== Поиск чувствительных данных (паролей,​ ключей) в репозитории =====
 +
 +  * [[https://​www.reddit.com/​r/​git/​comments/​o7jaau/​how_to_scan_for_secrets_on_git_repositories/​]]
 +<​code>​
 +~/openvpn1# git rev-list --all | while read commit_hash;​ do
 +    git grep pass $commit_hash | cat
 +done
 +</​code>​
 +  * https://​github.com/​trufflesecurity/​trufflehog
 +<​code>​
 +~# wget https://​github.com/​trufflesecurity/​trufflehog/​releases/​download/​v3.93.6/​trufflehog_3.93.6_linux_amd64.tar.gz
 +
 +~# tar -xvf trufflehog_3.93.6_linux_amd64.tar.gz trufflehog
 +
 +~# mv trufflehog /​usr/​local/​bin/​
 +
 +~# trufflehog git https://​server.corp13.un:​4443/​student/​openvpn1.git
 +
 +~# ###​trufflehog git file://​openvpn1
 +</​code>​
 +
 +===== Удаление чувствительных данных (паролей,​ ключей) из репозитория =====
 +<​code>​
 +server# apt install git-filter-repo
 +
 +server# cd /tmp/
 +
 +server:/​tmp#​ git clone https://​server.corpX.un/​student/​openvpn1.git
 +
 +server:/​tmp#​ cd openvpn1/
 +
 +server:/​tmp/​openvpn1#​ git remote -v
 +
 +server:/​tmp/​openvpn1#​ git filter-repo --path inventory.yaml --invert-paths
 +server:/​tmp/​openvpn1#​ git filter-repo --path openvpn1/​files/​server.key --invert-paths
 +
 +server:/​tmp/​openvpn1#​ cp ~/​openvpn1/​inventory.yaml . -v
 +server:/​tmp/​openvpn1#​ cp ~/​openvpn1/​openvpn1/​files/​server.key openvpn1/​files/​ -v
 +
 +server:/​tmp/​openvpn1#​ rm -rf ~/openvpn1
 +
 +server:/​tmp/​openvpn1#​ sops edit inventory.yaml
 +server:/​tmp/​openvpn1#​ sops edit openvpn1/​files/​server.key
 +
 +server:/​tmp/​openvpn1#​ git add -v .
 +
 +server:/​tmp/​openvpn1#​ git commit -m "erase secrets"​
 +
 +server:/​tmp/​openvpn1#​ git remote -v
 +server:/​tmp/​openvpn1#​ git remote add origin https://​server.corpX.un/​student/​openvpn1.git
 +</​code>​
 +Settings -> Repository -> Protected Branches -> Allowed to force push: ON
 +<​code>​
 +server:/​tmp/​openvpn1#​ git push --force --all
 +server:/​tmp/​openvpn1#​ git push --force --tags
 </​code>​ </​code>​
сервис_git.1764220087.txt.gz · Last modified: 2025/11/27 08:08 by val