วิธีการลบคีย์ที่ละเมิดในระบบคอมไพล์เมื่อคุณพยายามผลักดันการเปลี่ยนแปลงของคุณ?


38

ฉันได้ทำการค้นหาและทดสอบโซลูชันที่แตกต่างกันมากมาย แต่ไม่ประสบความสำเร็จ!

เมื่อฉันต้องการที่จะผลักดันรหัสของฉันฉันได้รับข้อผิดพลาดต่อไปนี้:

Warning: the ECDSA host key for 'git.mywebsite.ir' differs from the key for the IP address '164.138.23.11'
Offending key for IP in /home/alireza/.ssh/known_hosts:10
Matching host key in /home/alireza/.ssh/known_hosts:1
Are you sure you want to continue connecting (yes/no)? yes

ฉันควรทำอย่างไรเพื่อลบข้อความนี้ทุกครั้งที่มีการเปลี่ยนแปลง ความคิดใด ๆ

รายการคีย์

คำตอบ:


81

มันบอกว่า:

คีย์ที่ละเมิดสำหรับ IP ใน /home/alireza/.ssh/known_hosts: 10

ดังนั้นด้วยเหตุผลบางอย่างคุณต้องลบบรรทัดที่10ใน known_hosts

รันคำสั่งนี้เพื่อลบบรรทัดที่ 10 ใน known_hosts:

sed -i '10d' ~/.ssh/known_hosts

หรือใช้ ssh-keygen

ssh-keygen -R git.mywebsite.ir

อ้างจากคน

 -R hostname
         Removes all keys belonging to hostname from a known_hosts file.
         This option is useful to delete hashed hosts (see the -H option
         above).

6
ssh-keygen -R git.mywebsite.irแก้ไขปัญหาของฉัน
ALH

ใช้งานไม่ได้สำหรับฉันมันถามคำถามต่อไป
Waruna Ranasinghe

2
sed -i '1d' ~ / .ssh / known_hosts หรือลบหมายเลขบรรทัดด้วยตนเอง ทำงานให้ฉันได้ไหม
Sumit Kumar Saha

หากคุณกำลังใช้งานสิ่งนี้ใน Terminal บน Mac คุณจะต้องทำ sed -i '' '10d' ~ / .ssh / known_hosts เพื่อหลีกเลี่ยงข้อผิดพลาด "อักขระพิเศษเมื่อสิ้นสุดคำสั่ง l" เนื่องจากต้องการ นามสกุลที่จะระบุ
ลุ

ถ้าคุณต้องการที่จะลบที่สำคัญตามที่อยู่ ssh-keygen -R [ipaddress]:portIP: ตัวอย่างของการลบคีย์สำหรับ 192.168.0.1 บนพอร์ต 3456:ssh-keygen -R [192.168.0.1]:3456
Oki Erie Rinaldi

0

คุณต้องแก้ไขไฟล์ known_hosts ของคุณ (อยู่ใน ~ / .ssh / known_hosts) และลบรายการที่เชื่อมโยงกับที่อยู่นี้


ที่อยู่ IP นี้ไม่มีอยู่ในไฟล์ known_hosts
ALH

1
ถูกต้องอาจมีรายการที่มี URL ของ git.mywebsite.ir และที่อยู่ IP อื่น คุณควรลบบรรทัดนี้จาก known_hosts จากนั้นที่อยู่ IP ใหม่จะเชื่อมโยงกับชื่อโฮสต์นี้
kulak

ไม่มีสิ่งใดเป็น URL เว็บไซต์ของฉันในไฟล์รู้จัก _hosts ฉันไม่สามารถหาคอมไพล์ในไฟล์ได้ คุณสามารถดูรูปด้านบนได้ไหม
ALH

0

เมื่อฉันได้รับข้อความ:

คีย์ที่ละเมิดสำหรับ IP ใน /home/myusername/.ssh/known_hosts: 12

สังเกตหมายเลขบรรทัด - ในกรณีของฉัน - 12

ดังนั้นให้เปิดไฟล์ 'known_hosts' และลบแถวที่12

สำหรับฉันแล้วการแก้ไขปัญหา

ประกาศ Ps หากคุณไม่พบโฟลเดอร์. ssh - โฟลเดอร์. sshจะถูกซ่อนและเพื่อให้สามารถดูได้จากตัวจัดการไฟล์ - คุณต้อง "แสดงไฟล์และโฟลเดอร์ที่ซ่อนอยู่" ใน Linux Mint (และเป็นไปได้ใน distro ของคุณด้วย) เมื่ออยู่ในตัวจัดการไฟล์ - มีทางลัดในการแสดง / ซ่อนโฟลเดอร์ที่ซ่อน -> Ctrl + H

ไชโย

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.