จะเก็บรหัสผ่านอย่างปลอดภัยในไฟล์กำหนดค่าบน Linux ได้อย่างไร


0

ฉันมีไฟล์ในระบบ Linux ที่เรียกว่า ".fetchmailrc" และใช้เพื่อกำหนดค่าที่อยู่อีเมลที่ fetchmail จะได้รับจดหมายจาก ดังนั้นฉันต้องพิมพ์รหัสผ่านและที่อยู่อีเมลเป็นข้อความธรรมดา

นี่คือลักษณะของไฟล์. fetchmailrc:

set daemon 1
set logfile /home/user/.fetchmail.log
set no bouncemail
poll pop.gmail.com proto POP3 auth password no dns user "MY_EMAIL" password     "MY_PASSWORD" is user keep ssl

mda "/usr/bin/procmail -d %T"

ฉันเชื่อว่าต้องมีวิธีที่ดีกว่าในการทำเช่นนี้เนื่องจากหากแฮกเกอร์เข้าถึงเซิร์ฟเวอร์ของฉันเขาสามารถอ่านไฟล์และรับข้อมูลประจำตัวของฉันได้อย่างง่ายดาย

ฉันได้ยินมาว่าในระบบ Linux มี PAM (Pluggable Authentication Modules) แต่ฉันไม่รู้ว่าเกี่ยวข้องกับสิ่งที่ฉันพยายามทำหรือไม่

คำตอบ:


2

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

หากรูปแบบที่คุณใช้ในการเข้ารหัสและจัดเก็บรหัสผ่านของคุณมีส่วนเกี่ยวข้องมากขึ้นอาจใช้เวลา "แฮ็กเกอร์" นานขึ้น

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

โมดูล PAM ไม่มีส่วนเกี่ยวข้องกับสิ่งนั้น พวกเขาไม่ได้สำหรับการจัดเก็บรหัสผ่าน แต่ให้วิธีการกำหนดค่าวิธีการรับรองความถูกต้องสำหรับบริการ Linux ที่มีอยู่ ต้องเขียนโปรแกรมที่ต้องการใช้ PAM


1

ใช้บริการเก็บข้อมูลคีย์เคอร์เนล

หากคุณกังวลเกี่ยวกับคนที่ได้รับสิทธิ์การเข้าถึงระบบของคุณซ้ำแล้วซ้ำอีกก็ไม่มีอะไรที่คุณสามารถทำได้หลังจากนั้น (แต่นั่นเป็นฝันร้ายปฏิบัติตามแนวทางปฏิบัติที่ดีที่สุด & สำรองข้อมูลไว้อย่างดี)

อย่างไรก็ตามหากทุกอย่างยังปลอดภัยอยู่คุณสามารถทำได้ดีกว่าการทิ้งรหัสผ่านไว้ในไฟล์ข้อความล้วน (ใครก็ตามที่พบว่าไดรฟ์ระบบกำลังทำงานหรือปิดระบบสามารถอ่านได้) ทำสิ่งที่ชอบ:

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

การใช้ fetchmail เพื่อใช้เคอร์เนลพวงกุญแจอาจเป็นงานเล็กน้อย
dirkt

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