ฉันมีเซิร์ฟเวอร์คอมไพล์การพัฒนาที่ปรับใช้กับเซิร์ฟเวอร์สดเมื่อlive
สาขาถูกส่งไป ผู้ใช้ทุกคนมีการเข้าสู่ระบบของตัวเองและดังนั้นpost-receive
ตะขอซึ่งการปรับใช้สดจะถูกเรียกใช้ภายใต้ผู้ใช้ของตนเอง
เพราะฉันไม่ต้องการที่จะรักษากุญแจสาธารณะของผู้ใช้ในฐานะกุญแจที่ได้รับอนุญาตบนเซิร์ฟเวอร์ระยะไกลสดฉันได้สร้างชุดของคีย์ที่เป็นของระบบ git เพื่อเพิ่มไปยังเซิร์ฟเวอร์สดระยะไกล (ในpost-receive
เบ็ดฉันกำลังใช้$GIT_SSH
เพื่อตั้งค่าไพรเวตคีย์ด้วย-i
ตัวเลือก)
ปัญหาของฉันคือเนื่องจากผู้ใช้ทุกคนอาจต้องการปรับใช้เพื่อใช้งานจริงคีย์ส่วนตัวของระบบ git จะต้องเป็นกลุ่มอย่างน้อยสามารถอ่านได้และ SSH ไม่ชอบสิ่งนี้
นี่คือตัวอย่างข้อผิดพลาด:
XXXX@XXXX /srv/git/identity % ssh -i id_rsa XXXXX@XXXXX
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0640 for 'id_rsa' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
bad permissions: ignore key: id_rsa
ฉันได้มองไปรอบ ๆ โดยคาดหวังว่าจะพบบางสิ่งในทางที่บังคับให้ ssh เพิ่งผ่านการเชื่อมต่อ แต่ฉันไม่พบอะไรเลยนอกจากมีคนสุ่มสี่สุ่มห้าบอกว่าคุณไม่ควรอนุญาตการเข้าถึงอะไรนอกจากผู้ใช้คนเดียว