PROGRAMMING/기타

github push 였λ₯˜: WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!

\b\t 2023. 3. 30. 18:47

 

κ°‘μžκΈ° λ©°μΉ  μ „λΆ€ν„° github 에 push λ₯Ό ν•˜λ €κ³  ν•˜λ©΄ μ•„λž˜μ™€ 같은 WARNING 이 λ–΄λ‹€.

 

WARNING

 

μ²˜μŒμ—” λ‚˜μ˜ SSH 섀정이 λ¬Έμ œμΈκ°€ ν–ˆλŠ”λ°,

μ°Ύμ•„λ³΄λ‹ˆ 졜근(23/03/24)에 github μ—μ„œ key μ΄μŠˆκ°€ μžˆμ–΄ host key λ₯Ό λ³€κ²½ν–ˆλ˜ κ±°μ˜€λ‹€.

https://github.blog/2023-03-23-we-updated-our-rsa-ssh-host-key/

 

We updated our RSA SSH host key | The GitHub Blog

At approximately 05:00 UTC on March 24, out of an abundance of caution, we replaced our RSA SSH host key used to secure Git operations for GitHub.com.

github.blog

 

λ•Œλ¬Έμ— 2023λ…„ 03μ›” 24일 이전에 host key λ₯Ό μ„€μ •ν–ˆμœΌλ©΄ μœ„μ™€ 같은 였λ₯˜λ₯Ό 보게 λœλ‹€.

WARNING λ©”μ‹œμ§€μ˜ 'It is also possible that a host key has just been changed.' 에 ν•΄λ‹Ήν•˜λŠ” κ²½μš°μ˜€λ‹€.

 

 

ν•΄κ²° 방법은 host key λ₯Ό λ°”κΏ”μ£Όλ©΄ λ˜λŠ” κ±°λΌμ„œ μœ„μ˜ 곡식 ν¬μŠ€νŒ…μ„ 따라가면 λœλ‹€.

일단 기쑴의 github.com 의 host key λ₯Ό μ‚­μ œν•΄μ€€λ‹€.

$ ssh-keygen -R github.com

host key μ‚­μ œ

 

그런데, λ‚˜μ˜ 경우 IP μ£Όμ†Œλ‘œ λ“±λ‘λ˜μ–΄ μžˆμ–΄μ„œ μ΄λ ‡κ²Œ 해도 기쑴의 key 값을 μ‚­μ œν•˜μ§€λŠ” μ•Šμ€ 것을 확인헀닀.

 

 

μœ„κ°€ 기쑴에 λ“±λ‘λ˜μ–΄μžˆλ˜ 것이고, μ•„λž˜κ°€ μƒˆλ‘­κ²Œ μΆ”κ°€λœ 것이닀.

github.com 의 IP μ£Όμ†Œκ°€ 20.200.245.247 μ΄λ―€λ‘œ,

κ²°κ΅­ 쀑볡 λ“±λ‘λ˜λŠ” ν˜„μƒμ΄ λ°œμƒν•œλ‹€.

 

 

κ·Έλž˜μ„œ κ·Έλƒ₯ ~/.ssh/known_hosts νŒŒμΌμ„ 직접 νŽΈμ§‘ν–ˆλ‹€.

$ vi ~/.ssh/known_hosts

(λ˜λŠ” $ ssh-keygen -R 20.200.245.247 둜 μ‚­μ œν•΄μ€˜λ„ λœλ‹€.)

 

 

 

직후 λ‹€μ‹œ push λ₯Ό μ‹œλ„ν•˜λ©΄ key fingerprint λ₯Ό ν™•μΈν•˜κ³  push λ₯Ό ν•  수 μžˆλ‹€.

μžλ™μ μœΌλ‘œ ν•΄λ‹Ή IP 의 host key λ₯Ό μΆ”κ°€ν•΄μ£ΌλŠ”λ°, μ΄λ•Œ github 의 SSH key fingerprint κ°€ λ§žλŠ”μ§€ ν™•μΈν•˜κ³  μΆ”κ°€ν•΄μ•Ό ν•œλ‹€.

(λ˜λŠ” μœ„μ˜ github ν¬μŠ€νŒ…μ„ 따라 직접 ~/.ssh/known_hosts 에 좔가해쀄 μˆ˜λ„ μžˆλ‹€.)

 

github 의 SSH key fingerprints λŠ” λ‹€μŒ μ‚¬μ΄νŠΈμ—μ„œ 확인할 수 μžˆλ‹€.

https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/githubs-ssh-key-fingerprints

 

GitHub's SSH key fingerprints - GitHub Docs

Public key fingerprints can be used to validate a connection to a remote server.

docs.github.com

SSH key fingerprints

 

 

λ‚˜μ˜ 경우, ECDSA key fingerprint λ₯Ό ν™•μΈν•˜κ³  push ν•  수 μžˆμ—ˆλ‹€.

fingerprint 확인 ν›„ push

 

λ°˜λ“œμ‹œ fingerprint κ°€ λ§žλŠ”μ§€ ν™•μΈν•˜κ³  'yes' 타이핑 ν•  것!

그리고 ν˜Ήμ‹œλ‚˜ 이 뒀에도 계속 github λ₯Ό 신뒰할건지 λ¬Όμ–΄λ³Έλ‹€λ©΄, known_hosts 에 λ¬Έμ œκ°€ μžˆλŠ” κ²ƒμ΄λ―€λ‘œ λ‹€μ‹œ 확인할 것!

λ‚˜μ˜ κ²½μš°μ—”, known_hosts νŒŒμΌμ— 두 host key κ°€ λ“±λ‘λ˜μ–΄ μžˆμ–΄μ„œ 계속 확인 λ©”μ‹œμ§€κ°€ λ–΄μ—ˆλ‹€.

κ·Έλž˜μ„œ λ‹€μ‹œ ν•΄λ‹Ή νŒŒμΌμ„ μˆ˜μ •ν•΄μ€€ λ’€ μ§„ν–‰ν•˜λ‹ˆ push κ°€ 잘 λ˜μ—ˆλ‹€!