ฉันจะข้ามคำถาม "known_host" ในครั้งแรกที่ฉันเชื่อมต่อกับเครื่องผ่าน SSH ด้วยกุญแจสาธารณะ / ส่วนตัวได้อย่างไร
ฉันจะข้ามคำถาม "known_host" ในครั้งแรกที่ฉันเชื่อมต่อกับเครื่องผ่าน SSH ด้วยกุญแจสาธารณะ / ส่วนตัวได้อย่างไร
คำตอบ:
คำตอบปัจจุบันอื่น ๆ ทั้งหมดหายไป UserKnownHostsFile = / dev / null
หากคุณต้องการที่จะทำเมื่อคุณสามารถใช้:
ssh -o StrictHostKeychecking=no hostname
หากคุณต้องการทำซ้ำคุณควรเพิ่มสิ่งต่อไปนี้ใน ~ / .ssh / config
Host 192.168.0.*
StrictHostKeyChecking no
UserKnownHostsFile=/dev/null
การกำหนดค่านี้บน OpenSSH สำหรับ Windows เพียงแทนที่ด้วย/dev/null
NUL
คำอธิบายที่ดีจาก: http://linuxcommando.blogspot.com/2008/10/how-to-disable-ssh-host-key-checking.html
เปิดStrictHostKeyChecking
ปิดผ่านssh_config
หรือเลือกบรรทัดคำสั่ง
คุณสามารถรับพับลิกคีย์เพิ่มลงในไฟล์ known_hosts จากนั้นรีเฟรช:
ssh-keyscan -t rsa hostname >> .ssh/known_hosts
ssh-keygen -H
rm .ssh/known_hosts.old
$ ssh -o StrictHostKeychecking=no hostname
นี่จะทำให้การตรวจสอบถูกข้ามไปและกุญแจของโฮสต์ระยะไกลจะถูกเพิ่มโดยอัตโนมัติในการเข้าสู่ระบบครั้งแรก (นอกจากนี้ยังมีตัวเลือก CheckHostIP แต่ดูเหมือนจะไม่ปิดใช้งานการตรวจสอบจริง ๆ ว่ามีคีย์อยู่หรือไม่)
ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeychecking=no hostname
ฉันใช้เวลาสักครู่เพื่อค้นหา usecase ที่พบบ่อยที่สุดที่ฉันเคยเห็นคือเมื่อคุณมี ssh tunnels ไปยังเครือข่ายระยะไกล โซลูชันทั้งหมดที่นี่ผลิตคำเตือนที่ทำให้สคริปต์ของฉัน (nagios) เสียหาย
ตัวเลือกที่ฉันต้องการคือ:
NoHostAuthenticationForLocalhost yes
ซึ่งตามชื่อแนะนำนั้นจะใช้กับ localhost เท่านั้น
คุณสามารถปิดการตรวจสอบได้ แต่แน่นอนว่าไม่ปลอดภัย ในสถานการณ์ที่ดีที่สุดสิ่งที่คุณควรทำคือการรับคนที่มีเครื่องเข้ามาแล้วเพื่อคว้ากุญแจโฮสต์สาธารณะและบอก ssh ให้ใช้งาน ie: เอาท์พุทของ:
cat /etc/ssh/ssh_host_rsa_key.pub
เพิ่มชื่อโฮสต์ของเครื่องและเพิ่มบรรทัดนั้นไปยังไฟล์ ~ / .ssh / known_hosts บนเครื่องของคุณ คุณจะพบกับสิ่งที่ดูเหมือน:
myhost.example.com ssh-rsa AAAAB3Netc ...
อีกวิธีหนึ่งถ้าคุณต้องการคว้าลายนิ้วมือของคีย์ซึ่งอาจจะง่ายกว่าในการถ่ายโอนผ่านช่องสัญญาณแบนด์วิดธ์ที่ จำกัด (เช่นโทรศัพท์) คุณสามารถช่วยผู้ช่วยของคุณได้:
ssh-keygen -lf /etc/ssh/ssh_host_rsa_key.pub
หากคุณต้องการปิดการใช้งานการตรวจสอบโฮสต์ชั่วคราวเพื่อให้คุณสามารถเข้าสู่ระบบ LiveCD ตัวอย่างเช่นเปลี่ยนชื่อ~/.ssh/known_hosts
เป็นอย่างอื่นแล้วเปลี่ยนกลับเมื่อดำเนินการเสร็จ
การเล่นชนิดหนึ่ง