ฉันจะป้องกันผู้ใช้รายอื่นจากการเข้าถึงโฮมไดเร็กตอรี่ของฉันได้อย่างไร?


9

ฉันพยายาม จำกัด การเข้าถึงโฮมไดเร็กตอรี่ของฉันเพื่อป้องกันไม่ให้ผู้ใช้รายอื่นเข้าถึง, แม้แต่ผู้ใช้รายนั้นก็มีsudoสิทธิ์.

ฉันได้ลองคำสั่งต่อไปนี้เพื่อให้บรรลุสิ่งนี้

sudo chmod 0750 /home/user    
sudo chmod 0755 /home/user

แต่ถ้าผู้ใช้รายอื่นมีsudoสิทธิ์พวกเขาสามารถเปลี่ยนการอนุญาตได้อย่างง่ายดายโดยใช้

sudo chmod 0755 /home/user

มีวิธีอื่นอีกไหม?

คำตอบ:


13

คุณทำอย่างนั้นไม่ได้ หากคุณให้สิทธิ์ sudo แก่ผู้ใช้เขาสามารถเรียกใช้คำสั่งหรือเข้าถึงไฟล์ใด ๆ ในระบบนั้น หากคุณไม่ไว้วางใจผู้ใช้ของคุณให้เขาเข้าถึง sudo ที่ จำกัด เพื่อรันคำสั่งเพียงไม่กี่คำโดยแก้ไขไฟล์ / etc / sudoers สร้างกลุ่มใหม่admins

เพิ่มบรรทัดไปยัง / etc / sudoers

%admins ALL =  <Full path to command 1>, <Full path to command 2>

5

วิธีเข้ารหัสโฟลเดอร์ / home ของคุณ:

ก่อนดำเนินการใด ๆ คุณควรตรวจสอบให้แน่ใจว่าคุณมีข้อมูลสำรองของโฮมไดเร็กตอรี่และไฟล์สำคัญ

ติดตั้งยูทิลิตี้การเข้ารหัส:

เปิดสถานี

กดCtrl+ Alt+T

เรียกใช้:

sudo apt-get update
sudo apt-get install ecryptfs-utils cryptsetup

คุณจะต้องเข้ารหัสโฮมไดเรกทอรีของคุณในขณะที่คุณไม่ได้ลงชื่อเข้าใช้คุณจะต้องมีบัญชีผู้ใช้อื่นที่มีสิทธิ์ผู้ดูแลระบบ

คุณสร้างขึ้นหนึ่งรายการจากUser Accountsหน้าต่างของ Ubuntu :

กดปุ่มบนแผงและเลือกyour nameUser Accounts

สร้างใหม่และทำให้มันเป็นuser accountadministrator

ตั้งค่าโดยการกดpasswordpassword box

หลังจากสร้างบัญชีผู้ใช้log outเดสก์ท็อปของคุณ

เลือกของคุณnew user accountบนหน้าจอเข้าสู่ระบบและlog inด้วย

เปิดสถานี

กดCtrl+ Alt+T

เรียกใช้แทนที่userด้วยชื่อของคุณuser account:

sudo ecryptfs-migrate-home -u user

คุณจะต้องให้รหัสผ่านบัญชีผู้ใช้ของคุณ หลังจากที่คุณทำไดเรกทอรีบ้านของคุณจะถูกเข้ารหัส

original user accountออกจากระบบและกลับเข้าสู่ระบบเป็นของคุณ

อย่ารีบูตระบบของคุณก่อนเข้าสู่ระบบอีกครั้ง!

หลังจากที่คุณเข้าสู่ระบบกดRun this action nowปุ่มเพื่อสร้างข้อความรหัสผ่านการกู้คืน

เก็บข้อความรหัสผ่านนี้ไว้ในที่ที่ปลอดภัย - คุณจะต้องใช้หากคุณต้องกู้คืนไฟล์ของคุณด้วยตนเองในอนาคต

คุณสามารถเรียกใช้ecryptfs-unwrap-passphraseคำสั่งเพื่อดูวลีรหัสผ่านนี้ได้ตลอดเวลา

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


1
มันจะทำงานเฉพาะเมื่อคุณออกจากระบบ sudoหากคุณถูกบันทึกไว้ในสมุดที่ติดตั้งและสามารถมองเห็นได้ด้วย
Serpens

และหากผู้ใช้รายอื่นได้รับการพิจารณาเพียงพอเขาจะได้รับข้อความรหัสผ่านการเข้ารหัสของคุณจาก RAM
Serpens

ซับซ้อนเกินไปและมีความเสี่ยง
Tulains Córdova

@ user1598390: ใช่มันเป็นความจริง แต่ถามว่า KVK: ฉันจะเข้ารหัสที่บ้านได้อย่างไร
kyodake

4

คุณสามารถเปลี่ยนการอนุญาตสำหรับโฮมไดเร็กตอรี่ของคุณเพื่อป้องกันไฟล์ส่วนตัวของคุณ ในการตรวจสอบการอนุญาตในไดเรกทอรีหลักของคุณกดCtrl+ Alt+ Tเพื่อเปิดหน้าต่าง Terminal พิมพ์บรรทัดต่อไปนี้ที่พร้อมต์แล้วกด Enter แทนที่<username> (aka lori)ด้วยชื่อผู้ใช้ของคุณเอง

ls –ld /home/lori

ที่จุดเริ่มต้นของบรรทัดสิทธิ์สำหรับไฟล์จะแสดงรายการ

“The r stands for “read,” the w stands for “write,” and the x stands   for “execute.” Directories will start with a “d” instead of a “-“. You’ll also notice that there are 10 spaces which hold value. You can ignore the first, and then there are 3 sets of 3. The first set is for the owner, the second set is for the group, and the last set is for the world.”

ดังนั้นโฮมไดเร็กตอรี่ที่แสดงด้านล่างนี้มีอ่าน, เขียน, และดำเนินการอนุญาตสำหรับเจ้าของและอ่านและดำเนินการอนุญาตสำหรับกลุ่มและโลก

ป้อนคำอธิบายรูปภาพที่นี่

หากต้องการเปลี่ยนการอนุญาตเหล่านี้ให้พิมพ์บรรทัดต่อไปนี้ที่พรอมต์และกด Enter

sudo chmod 0750 /home/lori

พิมพ์รหัสผ่านของคุณเมื่อได้รับแจ้งและกด Enter

ป้อนคำอธิบายรูปภาพที่นี่

กดลูกศรขึ้นสองครั้งเพื่อใช้ls –ld /home/<username>คำสั่งอีกครั้งเพื่อตรวจสอบการอนุญาต ขอให้สังเกตว่าการอนุญาตสำหรับโลกนั้นมีขีดคั่น (-) นั่นหมายความว่าโลกไม่สามารถอ่านเขียนหรือดำเนินการอะไรในโฮมไดเร็กตอรี่ของคุณ

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

เพื่อปิดหน้าต่าง terminal พิมพ์ที่รวดเร็วและกดexitEnter

ป้อนคำอธิบายรูปภาพที่นี่

ตอนนี้เมื่อผู้ใช้รายอื่นในระบบพยายามเข้าถึงโฮมไดเร็กตอรี่ของคุณ, กล่องโต้ตอบต่อไปนี้จะปรากฏขึ้น

ป้อนคำอธิบายรูปภาพที่นี่

คุณสามารถตั้งค่า Ubuntu ให้ใช้สิทธิ์เฉพาะเมื่อตั้งค่าโฮมไดเรกทอรีสำหรับผู้ใช้ใหม่ที่คุณสร้าง ในการทำเช่นนี้คุณจะต้องแก้ไขไฟล์กำหนดค่าผู้ใช้ เมื่อต้องการทำสิ่งนี้ให้พิมพ์คำสั่งต่อไปนี้ที่พร้อมต์แล้วกด Enter

gksudo gedit /etc/adduser.conf

ป้อนคำอธิบายรูปภาพที่นี่

ป้อนรหัสผ่านของคุณในกล่องแก้ไขรหัสผ่านบนกล่องโต้ตอบที่แสดงแล้วกด Enter หรือคลิกตกลง

ป้อนคำอธิบายรูปภาพที่นี่

เลื่อนลงไปที่DIR_MODEคำสั่งในadduser.confไฟล์ ชุดหมายเลขเป็น0755ค่าเริ่มต้น เปลี่ยนเพื่อให้สอดคล้องกับการอนุญาตประเภทต่าง ๆ (r, w, x) ที่คุณต้องการให้กับผู้ใช้ประเภทต่างๆ (เจ้าของกลุ่มโลก) เช่น0750หรือ0700ตามที่กล่าวไว้ก่อนหน้านี้ คลิกบันทึก

ป้อนคำอธิบายรูปภาพที่นี่

ปิด gedit โดยเลือก Quit จากเมนู File คุณสามารถคลิกปุ่ม X ที่มุมซ้ายบนของหน้าต่างเพื่อปิด gedit

ป้อนคำอธิบายรูปภาพที่นี่

ปิดหน้าต่างเทอร์มินัลโดยคลิก X ที่มุมบนซ้ายของหน้าต่าง

ป้อนคำอธิบายรูปภาพที่นี่

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


นำมาจาก (ซึ่งมีการอ้างอิงบทความอื่นด้วย): http://www.howtogeek.com/190084/how-to-prevent-other-users-from-accessing-your-home-directory-in-ubuntu-14.04/


1
ฉันลองก่อนหน้านี้ แต่ถ้าผู้ใช้คนอื่นรู้เกี่ยวกับ sudo chmod 0755 \ home \ user1 คำสั่งแล้วมันก็ไม่มีประโยชน์
KVK

วิธีอื่นจะเข้ารหัสไดเรกทอรี / home ของคุณ! ซึ่งฉันแนะนำ ...
RiddleMeThis

ฉันจะเข้ารหัสบ้านของฉันได้อย่างไร
KVK

@KVK คุณต้องทำเมื่อคุณติดตั้งผมเชื่อ
ทิม

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