บายพาสลายเซ็น GPG ตรวจสอบเฉพาะสำหรับที่เก็บเดียว


34

ฉันได้อ่านบทความต่อไปนี้: ฉันจะหลีกเลี่ยง / เพิกเฉยการตรวจสอบลายเซ็น gpg ของ apt ได้อย่างไร

มันแสดงวิธีการกำหนดค่าaptที่จะได้ตรวจสอบลายเซ็นของแพคเกจที่ทั้งหมด

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

นั่นคือทั้งหมดที่เก็บอย่างเป็นทางการควรใช้ตรวจสอบลายเซ็น GPG ตามปกติยกเว้นสำหรับrepo ท้องถิ่น

ฉันจะทำยังไงต่อไป?

หากล้มเหลวสิ่งนั้นจะได้ประโยชน์อะไร (การรักษาความปลอดภัยที่ชาญฉลาด) ของการลงนามแพ็คเกจในระหว่างการสร้างอัตโนมัติ (บางเมตาแพคเกจและบางโปรแกรม) จากนั้นทำทุกอย่างที่ปลอดภัยaptกำหนด? หลังจากโฮสต์ทั้งหมดที่มี repo นั้นจะเป็นคีย์ GPG ลับที่อยู่


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

@ Celada: นั่นเป็นความเห็น (นั่นคือ "ดีกว่าอย่างเคร่งครัด") หรือมีเหตุผลสำหรับคำสั่งของคุณ? ฉันถามเพราะจนถึงขณะนี้ฉันไม่เห็นเหตุผลว่าจะปรับปรุงความปลอดภัยหรือด้านอื่น ๆ ได้อย่างไร ครั้งเดียวที่มันจะมีประโยชน์บ้างถ้าฉันตั้งใจจะเผยแพร่ repo ของฉันหลังจากทั้งหมด
0xC0000022L

ฉันถือความเห็นอย่างมีเหตุผล :-) หากที่เก็บข้อมูลถูกลงชื่อดังนั้นอย่างน้อยคนเลวต้องได้รับรหัสลงนามซึ่งคุณอาจเก็บไว้ในที่เดียวและอาจอยู่ในกล่อง dev หรืออย่างน้อยก็ไม่สามารถอ่านได้โดย เซิร์ฟเวอร์ HTTP มิฉะนั้นจะไม่มีการป้องกันเลย กล่าวอีกนัยหนึ่งฉันแค่ตั้งใจจะบอกว่าไม่มีข้อเสียในการลงนามดังนั้นคุณอาจลงชื่อด้วยแม้ว่าความได้เปรียบนั้นมีเพียงเล็กน้อย และเนื่องจากมันจะง่ายต่อการตั้งค่านั่นคือสิ่งที่ฉันจะไปด้วย
Celada

@Celada: นี่เป็นที่เก็บข้อมูลสำหรับใช้งานในท้องถิ่นเท่านั้น ใครจะสามารถเข้าถึงได้ ใช้กรณี: โฮสต์ที่มีภาชนะบรรจุแขก ทั้งโฮสต์และคอนเทนเนอร์จะสามารถเข้าถึงได้ ไม่มีการวางแผนการเข้าถึงสาธารณะ แต่ฉันเดาว่าฉันจะตอบคำถามต่อไปอีกสักระยะหนึ่ง
0xC0000022L

ยุติธรรมพอเราจะดูว่ามีใครรู้คำตอบสำหรับคำถามของคุณหรือไม่ ผมไม่ทราบว่าสิ่งที่เครื่องมือที่คุณวางแผนกำลังที่จะใช้ในการสร้าง repo แต่ผมขอแนะนำให้reprepro เครื่องมืออื่น ๆ จำนวนมากเช่นdput(หรือสิ่งที่ Debian ใช้เอง) นั้นมีความซับซ้อนมากและดูเหมือนว่าจะมีค่าใช้จ่ายมากเกินไปสำหรับโฆษณาเฉพาะกิจเท่านั้น repreproจะดูแลการสร้าง repo ด้วยรูปแบบไดเรกทอรีที่ถูกต้องและไฟล์ดัชนีโดยอัตโนมัติโดยไม่จำเป็นต้องติดตั้งเซิร์ฟเวอร์ฐานข้อมูลขนาดใหญ่ ... และมันจะลงนามในผลลัพธ์ด้วยโดยทั่วไปจะไม่มีการทำงานเพิ่มเติมในส่วนของคุณ
Celada

คำตอบ:


48

คุณสามารถตั้งค่าตัวเลือกในsources.list:

deb [trusted=yes] http://localmachine/debian wheezy main

trustedตัวเลือกคือสิ่งที่จะปิดการตรวจสอบจีพีจี ดูman 5 sources.listรายละเอียดที่

หมายเหตุ: สิ่งนี้ถูกเพิ่มเข้ามาใน apt 0.8.16 ~ exp3 ดังนั้นมันจึงเป็นเสียงฮืด ๆ (และแน่นอนว่าเจสซี่) แต่ไม่บีบ


ขอบคุณมัด นี่คือสิ่งที่ฉันกำลังมองหา ฉันเชื่อ1.0.1ubuntu2.7ว่าจะมีฟีเจอร์นั้นอยู่แล้วพร้อมระบุหมายเลขเวอร์ชั่น
0xC0000022L

@ 0xC0000022L ใช่มันควรจะเป็น
Derobert

นี่เป็นคำตอบที่ดีที่สุดถ้าคุณจำเป็นต้องเข้าถึงที่เก็บที่ไม่ได้ลงชื่อซ้ำ ๆ มีการตอบคำถามที่เชื่อมโยงกับคำถามเดิมที่เชื่อมโยงกับคำถามเดิมที่นี่ซึ่งแสดงวิธีการทำต่อที่เก็บชั่วคราว
dragon788

11

เพื่อให้แน่ใจว่าคุณเห็นคำเตือนขณะใช้ที่เก็บข้อมูลที่ไม่ปลอดภัยให้ใช้ allow-insecure = ใช่ดีกว่าแทนด้านล่าง

deb [ allow-insecure=yes ] ...

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