วิธีที่เหมาะสมในการติดตั้งแซมบ้าแบ่งปัน


9

ฉันต้องการติดตั้งระบบไฟล์เครือข่าย CIFS ด้วย samba บนระบบ Arch Linux ของฉัน ฉันต้องการติดตั้งระบบไฟล์นี้ทุกครั้งที่ฉันเข้าสู่ระบบ (ทั้งผ่าน ssh, TTY หรือผ่าน KDM)

/etc/fstabฉันจะได้รับสวยใกล้กับสิ่งที่ฉันต้องการโดยการเพิ่มส่วนแบ่งเครือข่ายเพื่อ "ปัญหา" ที่ใหญ่ที่สุดคือต้องใช้การเข้ารหัสรหัสผ่านของฉันอย่างหนัก/etc/fstabหรือสร้างไฟล์ข้อมูลรับรองพร้อมชื่อผู้ใช้และรหัสผ่านของฉัน ดูเหมือนว่าฉันจะไม่ปลอดภัยที่จะเก็บชื่อผู้ใช้และรหัสผ่านของฉันในไฟล์ข้อความธรรมดาแม้ว่าฉันจะตั้งค่าการอนุญาตเป็น 600

มีวิธี "เหมาะสม" ในการเมานต์เครือข่ายที่ใช้ร่วมกันโดยอัตโนมัติหรือไม่ ฉันสามารถทำได้ด้วย PAM (ชื่อผู้ใช้และรหัสผ่านของฉันเหมือนกันทั้งสองเครื่อง) และถ้าเป็นเช่นนั้น


คุณดูpam_cifsหรือยัง "pam_cifs เป็นโมดูล Linux-PAM เพื่อเชื่อมต่อและยกเลิกการต่อเชื่อม CIFS ในการเข้าสู่ระบบแบบต่อผู้ใช้"
CVn

หรือ pam_mount ฉันไม่มีประสบการณ์ที่เฉพาะเจาะจง แต่ดูเหมือนว่าจะได้รับการออกแบบมาเพื่อทำสิ่งนี้
EightBitTony

@EightBitTony การค้นหา pam_mount ทำให้ฉันถามคำถามฉันหวังว่าบางคนอาจบอกฉันได้อย่างชัดเจนว่ามันเป็นวิธีที่จะไปหรือไม่อย่างไร
StrongBad

คำตอบ:


8

วิธีที่ # 1 - /etc/fstab

ฉันรู้ว่าคุณกำลังมองหาทางเลือกอื่น แต่นี่คือวิธีการรับข้อมูลรับรองของคุณโดยเฉพาะจาก/etc/fstabไฟล์:

//WindowsHost/Sharename /LocalMountPoint cifs credentials=/etc/cifsauth 0 0

จากนั้นในไฟล์/etc/cifsauth:

username=someuser
password=somepass

ให้สิทธิ์ของไฟล์นี้คือ600chmod 600 /etc/cifsauth

วิธีที่ # 2 - pam_mount

คุณสามารถติดตั้งpam_mountแล้วตั้งค่าการเมาท์ทั่วไปสำหรับผู้ใช้ทั้งหมดที่เข้าสู่ระบบเช่นนี้:

# /etc/security/pam_mount.conf.xml
<debug enable="1" />
<volume server="server" path="music" mountpoint="~/MyMusicFolder" options="cred=/home/%(USER)/.Music.cred" />

วิธีการนี้จะยังคงมีปัญหาเช่นเดียวกับวิธีการ # 1 /home/%(USER)/.Music.credที่ข้อมูลประจำตัวที่จะถูกเก็บไว้ในแฟ้ม นี่เป็นไฟล์ข้อมูลรับรองประเภทเดียวกันกับวิธีแรกดังนั้นตรวจสอบให้แน่ใจว่าการอนุญาตมี 600 เช่นกัน

วิธีที่ # 3 - ใช้ gvfs-mount

คำถาม & คำตอบ U & L นี้: ฉันจะทำการติดตั้ง cifs ที่แชร์โดยอัตโนมัติโดยไม่ต้องเก็บรหัสผ่านของฉันในรูปแบบธรรมดาได้หรือไม่? มีคำตอบโดย @Gilles ซึ่งอธิบายการใช้พวงกุญแจ GNOMEเพื่อเก็บรักษาข้อมูลรับรอง CIFS ของคุณ

จากนั้นคุณสามารถเข้าถึงการแบ่งปัน CIFS โดยใช้GVFS - ระบบไฟล์เสมือน GNOME - เช่นนี้:

$ gvfs-mount smb://username\;workgroupname@hostname/sharename

นี้จะ map หุ้นจากชื่อโฮสต์ที่เรียกว่า sharename $HOME/.vfs/sharename on hostnameและติดมันอยู่ภายใต้ คุณไม่สามารถควบคุมสิ่งนี้ได้ในทางใดทางหนึ่ง มันยากที่จะติดตั้งที่นี่ฉันดูแล้ว!

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


หากคุณสร้างไฟล์แบบซ่อนคำพูด. cifsauth และ 'ชื่อผู้ใช้ =' ไม่จำเป็นต้องใช้ข้อมูลรับรองเท่านั้น = / etc / .cifsauth มากพอ
Rahul Patil

@RahulPatil - คุณกำลังบอกว่าคุณต้องตั้งชื่อหนังสือรับรอง.cifsauthเพื่อที่จะลบusername=หรือว่าคนที่username=ไม่จำเป็นต้องอยู่ด้วยกัน?
slm

ใช่ ... คำตอบที่ดี .. !! +1 สำหรับ pam_mount
Rahul Patil

@RahulPatil - คุณเห็นด้วยกับบิตไหน?
slm

2

ปรากฎว่าpam_mountเป็นวิธีที่จะไป คุณเพิ่มเครือข่ายที่ใช้ร่วมกัน/etc/security/pam_mount.conf.xml

<volume user="yourUserName" fstype="auto" path="//path/to/the/network/share" mountpoint="/path/to/the/mount/point" options="username=yourUserName" />
<mkmountpoint enable="1" remove="true" />

มันควรจะเป็นไปได้ในทางทฤษฎีที่จะใช้%(USER), %(USERUID)และ%(USERGID)ตัวแปรที่จะทำให้มันติดทั่วไป แต่ฉันไม่สามารถรับเป็นส่วนหนึ่งที่จะทำงานใน Arch ลินุกซ์ pam_mountนอกจากนี้คุณยังต้องกำหนดค่าระบบของคุณเพื่อการใช้งาน คุณต้องแก้ไขทั้ง/etc/pam.d/system-authและ login-manager ที่เกี่ยวข้องของคุณ สำหรับ KDM /etc/pam.d/kdeมันเป็น การแก้ไขโดยทั่วไปเกี่ยวข้องกับการเพิ่มoptional pam_mount.soทุกส่วนของไฟล์ทั้งสอง แต่รายละเอียดที่แน่นอนมีความยุ่งยากตั้งแต่เรื่องการสั่งซื้อ ผมทำตามArch วิกิพีเดีย

ด้วยการตั้งค่านี้และชื่อผู้ใช้ / รหัสผ่านเดียวกันบนเซิร์ฟเวอร์และเครื่องของฉันฉันสามารถเมานต์อัตโนมัติโดยไม่ต้องบันทึกไฟล์ข้อมูลรับรองได้ทุกที่


นี่เป็นเรื่องที่ดี ... ตามหลักการแล้วฉันต้องการโซลูชัน fstab - ฉันไม่ชอบpamและที่เหลือเป็นส่วนตัวและฉันสังเกตเห็นว่าพวกเขามีแนวโน้มที่จะคืบคลานเข้าไปในระบบกำหนดค่า - แต่นี่ตอบคำถามอย่างแน่นอน ฉันจะถามได้ไหมว่าทำไมคุณถึงต่อต้านการจัดเก็บข้อมูลรับรอง สิทธิ์ของผู้ใช้และ / หรือความเป็นเจ้าของ / การเข้ารหัสไฟล์ควรมากกว่าที่นั่น ในบางระบบคุณสามารถจัดเก็บข้อมูลดังกล่าวใน vars เฟิร์มแวร์ที่สามารถเข้าถึงได้หลังจากการตรวจสอบสิทธิ์เท่านั้น sshเก็บข้อมูลรับรองตามการอนุญาต fs เช่นนั้นใช่ไหม
mikeserv

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