ฉันตรวจสอบประสบการณ์ Unix ที่มีค่ามากกว่าครึ่งศตวรรษและไม่มีเพื่อนร่วมงานของฉันและตัวฉันเองก็ไม่เคยตั้งรหัสผ่านให้กับกลุ่ม ( sg
และgpasswd
) สิ่งที่จะเป็นกรณีการใช้งานทั่วไปสำหรับรหัสผ่านกลุ่มหรือมันสวยมากเพียงเพราะเหตุผลในอดีต?
ฉันตรวจสอบประสบการณ์ Unix ที่มีค่ามากกว่าครึ่งศตวรรษและไม่มีเพื่อนร่วมงานของฉันและตัวฉันเองก็ไม่เคยตั้งรหัสผ่านให้กับกลุ่ม ( sg
และgpasswd
) สิ่งที่จะเป็นกรณีการใช้งานทั่วไปสำหรับรหัสผ่านกลุ่มหรือมันสวยมากเพียงเพราะเหตุผลในอดีต?
คำตอบ:
ฉันไม่เคยเห็นคุณลักษณะนี้ใช้เลยแม้แต่ครั้งเดียว SA ส่วนใหญ่ไม่ทราบด้วยซ้ำว่าโรงงานนี้มีอยู่จริง ในการดูหน้า man สำหรับgpasswd
มีหมายเหตุนี้:
หมายเหตุเกี่ยวกับรหัสผ่านกลุ่ม
Group passwords are an inherent security problem since more than one person is permitted to know the password. However, groups are a useful tool for permitting co-operation between different users.
ฉันคิดว่าพวกเขาเป็นความคิดตามธรรมชาติในการเลียนแบบรูปแบบของผู้ใช้ที่มีรหัสผ่านซึ่งทำให้รู้สึกถึงการทำซ้ำที่ใช้โมเดลเคสกับกลุ่มเช่นกัน แต่ในทางปฏิบัติพวกมันไม่ได้มีประโยชน์อะไรเลย
แนวคิดด้วยรหัสผ่านกลุ่มคือหากคุณต้องการเข้าถึงกลุ่มเฉพาะ (สิ่งที่คุณไม่ได้อยู่ในรายการในฐานะสมาชิก) คุณสามารถทำได้โดยใช้newgrp
คำสั่งและถูกท้าทายด้วยรหัสผ่านเพื่อเข้าถึง ถึงกลุ่มทางเลือกเหล่านี้
ปัญหาใหญ่ของพวกเขาคือมีเพียงรหัสผ่านเดียวสำหรับแต่ละกลุ่มดังนั้นบังคับให้ผู้คนแบ่งปันรหัสผ่านเดียวนี้เมื่อหลายคนต้องการเข้าถึงกลุ่มนี้โดยเฉพาะ
สภาพแวดล้อมส่วนใหญ่ที่ฉันเจอมักจะทำให้คนอยู่ในกลุ่มรองจากนั้นให้กลุ่มเหล่านี้สามารถเข้าถึงไฟล์บนระบบไฟล์และสิ่งนี้ก็มีความพึงพอใจต่อการใช้งานทั้งหมดที่เกิดขึ้น
เมื่อมีการsudo
ให้สิทธิ์เพิ่มเติมสามารถส่งมอบตามความจำเป็นให้กับกลุ่มได้โดยไม่ จำกัด กรณีการใช้งานใด ๆ ที่อาจมีการให้รหัสผ่านกลุ่ม หากคุณต้องการอนุญาตให้ผู้ใช้มีสิทธิ์มากขึ้นมันจะง่ายกว่ามากในการสร้างบทบาทsudo
และจากนั้นอนุญาตให้มีชื่อผู้ใช้หรือกลุ่มที่พวกเขาอยู่ในสิทธิ์ในการยกระดับสิทธิ์ที่มีเพื่อให้พวกเขาสามารถทำงานบางอย่าง
ในที่สุดความสามารถในการสร้างรายการควบคุมการเข้าถึง (ACLs) ให้ความยืดหยุ่นเล็กน้อยสุดท้ายที่โมเดลสิทธิ์ผู้ใช้ / กลุ่ม / อื่น ๆ ไม่สามารถให้คนเดียวได้ซึ่งจะช่วยลดความต้องการใด ๆ ที่เป็นไปได้สำหรับรหัสผ่านกลุ่ม
sudo
และ ACL แล้ว ฉันเดาว่าudev
มาพร้อมกับเนื้อเรื่องที่คล้ายกันแน่นอนโดยเน้นไปที่อุปกรณ์ อ่านน่าสนใจ
นี่คือการใช้งานจริงสำหรับรหัสผ่านกลุ่มที่ฉันใช้กับตัวเองในเซิร์ฟเวอร์การทำงานของเราเนื่องจากบันทึกระบุว่าบัญชีของฉันถูกบังคับโดยไม่ใช้ความรุนแรง (หรืออาจเป็นการโจมตีด้วยพจนานุกรม)
ฉันใช้ssh-keygen
และputtygen
สร้างคู่คีย์เพื่อใช้จากเวิร์กสเตชันและคอมพิวเตอร์ที่บ้าน รหัสที่ใช้จากบ้านต้องใช้รหัสผ่าน ฉันเพิ่มกุญแจสาธารณะทั้งสองไปที่.ssh/authorized_keys
สร้างกลุ่มmarionette
ด้วยรหัสผ่านและไม่มีสมาชิก ในฐานะที่เป็น root ฉันใช้visudo
ในการเพิ่มบรรทัดต่อไปนี้
Cmnd_Alias SUDOING = /bin/bash, /usr/bin/sudo -i
%marionette ALL=NOPASSWD:SUDOING
ฉันได้ปิดการใช้งานรหัสผ่านบัญชีของฉันคุณไม่มีใครสามารถเข้าสู่ระบบได้ ตอนนี้ฉันเข้าสู่ระบบด้วยกุญแจของฉันและเข้าสู่กลุ่มที่มีการป้องกันด้วยรหัสผ่านเท่านั้นnewgrp marionette
ทำให้ฉันสามารถใช้รูตsudo -i
ได้
โดยไม่ต้องNOPASSWD:
ตัวเลือกที่จะต้องของบัญชีผู้ใช้รหัสผ่าน ถ้ามันเป็นความพิการและคนกลุ่มนี้ไม่ได้คุณจะไม่สามารถที่จะNOPASSWD
sudo -i
นอกจากนี้ยังจะต้องใช้รหัสผ่านบัญชีผู้ใช้ของคุณหากรายการคำสั่งของคุณไม่มี/bin/bash
หรืออะไรก็ตามที่รูทของคุณใช้โดยค่าเริ่มต้น
ขณะนี้จะทำให้เส้นทางไป sudoing อีกไม่กี่ก้าวก็เพิ่มความปลอดภัยที่ดี หากคุณเลือกที่จะสร้างบัญชีทั้งหมดของคุณแบบนี้ให้สร้างบัญชี Local หนึ่งบัญชีด้วยรหัสผ่านและสิทธิ์ sudo แต่ปฏิเสธรายการ ssh จาก/etc/ssh/sshd_config
โดยเพิ่มสิ่งต่อไปนี้:
DenyUsers root caan
DenyGroups root daleks
นี่เป็นสิ่งจำเป็นสำหรับการเข้าถึงในพื้นที่ในกรณีที่คุณติดตั้งและลืมสำรองข้อมูลคีย์การเข้าถึงของคุณ
sudo
ใช้newgrp
คำสั่งPOSIX แทน ยังคงเป็นคำตอบที่ยอดเยี่ยม
newgrp
) และ "ใหม่" ( sudo
) ด้วยมูลค่าเพิ่มที่ชัดเจน นี่สมควรได้รับความชื่นชม
ฉันไม่เคยเห็นกรณีใช้งานสำหรับรหัสผ่านนั้นด้วย และนั่นคือประมาณ 20 ปีของประสบการณ์ * ระวัง
กรณีใช้งานเดียวที่อยู่ในใจของฉันคือตั้งค่าเป็น "!" - ถูกล็อคดังนั้นไม่มีใครที่ไม่ได้เป็นสมาชิกของกลุ่มนั้นสามารถเปลี่ยนได้ด้วยnewgrp
คำสั่ง
ถ้าฉันดู / etc / group บน SLES หรือ / etc / gshadow บนระบบที่ใช้ RedHat สิ่งนี้น่าจะเป็นกรณีการใช้งาน "ทั่วไป" SLES ไม่ได้สนใจที่จะสร้างกลไกเงาสำหรับรหัสผ่านนั้น
newgrp ntp
อยู่แล้วการ!
ล็อคการเปลี่ยนแปลงทำได้อย่างไร
!
man newgrp
: ผู้ใช้จะถูกปฏิเสธการเข้าถึงหากรหัสผ่านกลุ่มว่างเปล่าและผู้ใช้ไม่อยู่ในรายการในฐานะสมาชิก
ฉันขอแนะนำกรณีการใช้งาน
ก่อนอื่นให้ฉันบอกว่าเราคุ้นเคยกับคำว่า "ผู้ใช้" จนเราไม่ได้คิดถึงมัน แต่ "ผู้ใช้" ไม่ได้จริงๆใช้ ตัวอย่างเช่นที่บ้านเรามีคอมพิวเตอร์สามเครื่อง - แล็ปท็อปของภรรยาของฉันแล็ปท็อปของฉันและคอมพิวเตอร์ตั้งโต๊ะทั่วไป เมื่อฉันใช้แล็ปท็อปของภรรยาของฉันฉันเข้าสู่ระบบด้วยบัญชีผู้ใช้ของเธอ เมื่อเธอใช้แล็ปท็อปของฉันเธอลงชื่อเข้าใช้ด้วยบัญชีผู้ใช้ของฉัน หากใครต้องการเดสก์ท็อปเขาหรือเธอจะใช้บัญชีทั่วไปหนึ่งบัญชี เราเห็นที่นี่ว่าสิ่งที่ระบบคอมพิวเตอร์เรียกว่า "ผู้ใช้" ไม่ใช่ผู้ใช้จริงๆแต่เป็นเวิร์กโฟลว์ - ชุดของกิจกรรม
นี่คือคำถาม: ทำไมฉันไม่สามารถมีมากกว่าหนึ่งกิจกรรม - กิจกรรมหนึ่งสำหรับงานที่แตกต่างกันทุกอย่างที่ฉันมี ฉันสามารถ. ที่คอมพิวเตอร์ในที่ทำงานของฉันฉันได้สร้าง (ทดลอง) ผู้ใช้หลายคนเพื่อให้ฉันสามารถมุ่งเน้นไปที่งานปัจจุบัน ฉันกำหนดให้ผู้ใช้เหล่านี้ทั้งหมดอยู่ในกลุ่มเดียวกันดังนั้นฉันจึงสามารถเข้าถึงไฟล์ของฉันได้ไม่ว่าจะเป็นผู้ใช้ที่ฉันกำลังใช้อยู่
ดังนั้น gpasswd ตรงไหนในนี้
พฤติกรรมเริ่มต้นของ Ubuntu คือการสร้างกลุ่มพิเศษสำหรับผู้ใช้ทุกคน
เกิดอะไรขึ้นถ้าเราตัดสินใจที่จะคิดเกี่ยวกับกลุ่มหลักเหล่านี้เป็นผู้ใช้และคิดเกี่ยวกับผู้ใช้ระบบเป็นขั้นตอนการทำงาน ?
ผู้ใช้ใหม่เหล่านี้จะต้องใช้รหัสผ่านในการเข้าสู่ระบบใช่ไหม นี่คือสถานที่ของ gpasswd ฉันยังต้องคิดหาวิธีการเข้าสู่ระบบกับกลุ่ม (จนถึงจุดนี้สิ่งที่ฉันรู้คือคุณสามารถสลับกลุ่มด้วย gpasswd หากคุณเข้าสู่ระบบแล้ว)