ssh-agent: อย่าส่งต่อการตรวจสอบสิทธิ์สำหรับพวงกุญแจทั้งหมด


10

ฉันมีสองคีย์ ssh ส่วนตัว:

  • หนึ่งในการเข้าถึงของฉันบุคลากรเครื่อง
  • หนึ่งในการเข้าถึงเซิร์ฟเวอร์ที่ฉันงาน

ฉันจะเพิ่มคีย์ทั้งสองเพื่อตัวแทน ssh ssh-addของฉันด้วย

ตอนนี้เมื่อฉันssh -A root@jobsrvต้องการส่งต่อการรับรองความถูกต้องของตัวแทนสำหรับคีย์งานของฉันเท่านั้น (อันที่ฉันใช้เชื่อมต่อjobsrv)

ฉันต้องการสิ่งนี้เพราะทุกคนที่มีสิทธิ์เข้าถึงรูทjobsrvสามารถใช้เอเจนต์ของฉันเพื่อพิสูจน์ตัวตนกับเครื่องส่วนตัวของฉัน

มีวิธีที่จะบรรลุความโดดเดี่ยวนี้ได้หรือไม่?


คุณตรวจสอบตัวเลือก -i ใน man page ของ ssh หรือไม่?
มนุษย์คนหนึ่งกำลัง

1
@Stillakid ใช่ssh -A -i myjobkey_rsa root@jobsrvยังอนุญาตให้เครื่อง jobsrv เข้าถึงตัวแทนเครื่องท้องถิ่นของฉันและรับรองความถูกต้องบนเซิร์ฟเวอร์ personnal ของฉันด้วยคีย์อื่น ๆ (personnal) ...
Totor

ตรวจสอบด้วย ssh-keysign?
มนุษย์คนหนึ่งกำลัง

คำตอบ:


2

ในการบังคับssh(1)ใช้คีย์เฉพาะแม้ว่าจะssh-agent(1)มีหลาย ๆคีย์ให้ใช้IdentityFileและIdentitiesOnlyคำสั่งใน~/.ssh/configเช่น:

Host example.com
    IdentityFile ~/.ssh/keys/special.pem
    IdentitiesOnly yes

ดูssh_config(5)รายละเอียดที่


นี้ไม่ได้ทำงาน IdentitiesOnlyใช้เมื่อคุณพยายามเชื่อมต่อกับเซิร์ฟเวอร์ระยะไกล เมื่อคุณเชื่อมต่อแล้วหาก-Aเปิดใช้งานการส่งต่อเอเจนต์พวงกุญแจทั้งหมดจะถูกส่งต่อ
Totor

พวงกุญแจไม่ได้ถูกส่งต่อ มันคือการขอรับรองความถูกต้องที่จะถูกส่งต่อใน
bahamat

@ บาฮามัตแน่นอนความผิดของฉัน อย่างไรก็ตามวิธีนี้ใช้ไม่ได้ผล
2559

2

น่าเสียดายที่ฉันเชื่อว่ามันเป็นไปไม่ได้ที่จะบรรลุเป้าหมายนี้ได้อย่างง่ายดายในขณะนี้ หนึ่งสามารถใช้สองตัวแทน (หนึ่งสำหรับแต่ละคีย์) เพื่อให้ไม่มีตัวแทนที่ถือทุกปุ่ม แต่มันก็ค่อนข้างยุ่งยากที่จะทำงานด้วย

นี่คือเหตุผลที่เปิดรายงานข้อผิดพลาด (การปรับปรุง) มีรายงานที่คล้ายกันนี้ด้วย

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