ทำให้คีย์ ssh ของฉันหมดอายุโดยอัตโนมัติ


9

บางครั้งฉันใช้sshเพื่อเชื่อมต่อกับเครื่องระยะไกล เมื่อฉันป้อนข้อความรหัสผ่านหนึ่งครั้งฉันสามารถใช้งานได้sshอีกครั้งโดยไม่ต้องใช้ข้อความรหัสผ่าน แต่แม้ว่าฉันจะกลับมาอีกนานในภายหลังมันก็ยังไม่ถามฉันเพราะกุญแจถูกแคช ฉันสามารถทำได้ssh-add -Dเพื่อลบคีย์ออกจากแคช แต่ฉันต้องการให้มันเกิดขึ้นโดยอัตโนมัติหลังจากพูด 1 ชั่วโมง ฉันจะทำสิ่งนั้นได้อย่างไร

คำตอบ:


11

โปรแกรมที่แคชคีย์ ssh ของคุณคือโปรแกรม ssh-agent ถ้าคุณดูที่หน้า man คุณสามารถเห็นตัวเลือก relivent นี้:

-t life  Set a default value for the maximum lifetime of identities added
         to the agent.  The lifetime may be specified in seconds or in a
         time format specified in sshd_config(5).  A lifetime specified
         for an identity with ssh-add(1) overrides this value.  Without
         this option the default maximum lifetime is forever.

คุณสามารถแก้ไขโปรแกรม ssh-agent ในโปรแกรมเริ่มต้นของคุณ ไปที่System > Preferences > Startup Programsค้นหาSSH Key Agentและผนวก-t 3600ไปยังคอมมอน การทำเช่นนี้จะทำให้คีย์ของคุณหมดอายุในหนึ่งชั่วโมง

ข้อความแสดงแทน

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


1

แต่น่าเสียดายที่คำตอบที่เลือกไม่ได้ดูเหมือนถูกต้อง (อีกต่อไป): GNOME โดยพวงกุญแจไม่ให้เกียรติตัวเลือกที่อายุการใช้งานเนื่องจากข้อผิดพลาด 525574 วิธีแก้ปัญหาเป็นตัวอย่างสำหรับการปิดใช้งาน GNOME Keyring สำหรับคีย์ SSHแต่คุณต้องssh-add -t 60mใช้คีย์ด้วยตนเองเมื่อใช้ (หรือสคริปต์)


0

คุณสามารถเพิ่มงาน cron สำหรับสิ่งนั้น


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