ฉันสามารถตั้งค่าบัญชีผู้ใช้ของฉันให้ไม่มีรหัสผ่านได้หรือไม่


81

หากฉันพยายามเปลี่ยนรหัสผ่านเป็นไม่มีอะไรโดยเปิด "บัญชีผู้ใช้" ปุ่ม "เปลี่ยน" จะยังคงเป็นสีเทา:

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

ฉันรู้ว่ามีเหตุผลว่าทำไมสิ่งนี้อาจไม่ใช่ความคิดที่ดี แต่ฉันต้องการทราบว่าเป็นไปได้หรือไม่ ฉันใช้ Ubuntu 12.10

คำตอบ:


140

คุณไม่สามารถทำได้โดยใช้เครื่องมือ GUI แต่คุณสามารถใช้เทอร์มินัลได้

  1. ขั้นแรกหากผู้ใช้ของคุณมีสิทธิ์แบบ sudo คุณจะต้องเปิดใช้งานNOPASSWDตัวเลือก มิฉะนั้นsudoจะขอรหัสผ่านแม้ว่าคุณจะไม่มีและจะไม่ยอมรับรหัสผ่านที่ว่างเปล่า

    ในการทำเช่นนั้นให้เปิดไฟล์การกำหนดค่า sudoers ด้วยsudo visudoและเพิ่มบรรทัดต่อไปนี้ในไฟล์โดยแทนที่davidด้วยชื่อผู้ใช้ของคุณ:

    david ALL=(ALL) NOPASSWD:ALL
    

    ปิดโปรแกรมแก้ไขเพื่อใช้การเปลี่ยนแปลงและทดสอบผลกระทบกับ sudo ในเทอร์มินัลใหม่

  2. ลบรหัสผ่านสำหรับผู้ใช้ของคุณโดยใช้คำสั่งนี้:

    sudo passwd -d `whoami`
    

หากคุณเคยได้รับพร้อมท์ให้ใส่รหัสผ่านเพียงแค่พิมพ์และมันก็ใช้ได้ ผมได้ทดสอบคำตอบนี้กับ LightDM หน้าจอล็อคsudo, gksuและการทำงาน แต่มีอีกหนึ่งขั้นตอนที่จะได้รับมันในการทำงานกับpkexec (ขอบคุณ Muru)


1
สำหรับpkexecดูaskubuntu.com/a/614537/158442
muru

การแก้ไข visudo ใหม่ใด ๆ เช่นnopasswdควรจะถูกเพิ่มไว้ที่ส่วนท้ายดังนั้นจึงไม่มีการตั้งค่าอื่น ๆ เขียนทับรายการ
Dean Meehan

4
สิ่งนี้ไม่ได้ผลสำหรับฉัน (Ubuntu 16.04) ผ่านทางล็อกอิน ssh มันยังคงถามหารหัสผ่าน แต่ไม่ยอมรับรหัสผ่าน (ว่างเปล่าหรืออันเก่าหรืออันเดียวสำหรับคีย์ ssh)
Deleet

3
ใน Debian ฉันได้รับข้อความว่า "ขออภัยที่ไม่ทำงานลองอีกครั้ง" passwd david -dเมื่อฉันพยายามเข้าสู่ระบบด้วยรหัสผ่านว่างเปล่าหลังจากคำสั่ง และตอนนี้ฉันไม่สามารถเข้าสู่ระบบด้วยรหัสผ่านเก่าเกินไป
fabriciorissetto

1
ตอนนี้ฉันไม่สามารถติดตั้งซอฟต์แวร์ได้เพราะต้องใช้รหัสผ่าน
มัดธาย

14

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

ทำเช่นนี้ต่อเมื่อผู้ใช้ไม่ใช่ผู้ดูแลระบบเท่านั้น

สิ่งนี้ได้รับการทดสอบบน Ubuntu 12.04 และ 12.10

  1. ตรวจสอบให้แน่ใจว่าคุณคลิกที่ปลดล็อคเพื่อให้สามารถทำงานด้านล่างสำเร็จ:

    ปลดล็อกภาพหน้าจอ

  2. ไปที่บัญชีผู้ใช้และคลิกที่ฟิลด์รหัสผ่าน:

  3. เมื่อหน้าต่างเปิดขึ้นให้คลิกลูกศรลงทางด้านขวาของ "การกระทำ" ...

  4. และเปลี่ยนเป็น "เข้าสู่ระบบโดยไม่ต้องใช้รหัสผ่าน" จากนั้นคลิกที่ "เปลี่ยน":

  5. คุณสามารถเปิดใช้งานการลงชื่อเข้าใช้อัตโนมัติเช่นนี้:

    ภาพหน้าจอ

ในการให้รหัสผ่านแก่ผู้ใช้อีกครั้งหลังจากรันโพรซีเดอร์นี้คุณไม่สามารถใช้ GUI ( ข้อผิดพลาด # 882255 ) ได้คุณต้องใช้บรรทัดคำสั่ง:

  1. เข้าสู่ระบบในฐานะผู้ใช้รายอื่นด้วย priveleges ผู้ดูแลระบบ (โปรดจำไว้ว่าต้นฉบับดั้งเดิมไม่สามารถทำงานด้วยสิทธิ์ผู้ดูแลระบบหากไม่มีรหัสผ่านโดยใช้วิธีนี้)

  2. รันสิ่งต่อไปนี้ในเทอร์มินัล:

    sudo passwd <username>
    

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


ฉันมีคำถามว่าตัวเลือก "เข้าสู่ระบบโดยไม่มีรหัสผ่าน" ทำอะไรได้จริง? มันเป็นพื้นทำpasswd -dและลบรหัสผ่านหรือไม่
Alaa Ali

ฉันก็ไม่แน่ใจ 100% แต่passwd -dเป็นวิธีที่รวดเร็วในการลบรหัสผ่านสำหรับบัญชี มันจะตั้งชื่อบัญชีที่ไม่มีรหัสผ่าน มีให้รูทเท่านั้น
มิทช์

มีให้รูทเท่านั้นหรือ ไม่มีใครคุณสามารถใช้มันเพื่อลบรหัสผ่านของผู้ใช้ =) ฉันคิดว่านี่เป็นสิ่งที่ตัวเลือก "เข้าสู่ระบบโดยไม่ต้องใช้รหัสผ่าน" มันเพียงลบรหัสผ่านของคุณนั่นคือเหตุผลที่คุณจะไม่สามารถตรวจสอบตัวเอง นั่นเป็นเพียงความโง่
Alaa Ali

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

7

ฉันคิดว่าเป็นไปได้ที่จะทำเช่นนี้ แต่จะทำให้คุณมีปัญหาเมื่อคุณพยายามติดตั้งการปรับปรุงหรือสิ่งอื่นที่ต้องใช้ sudo; ตามที่คุณต้องการบัญชีที่มีการเข้าถึง sudo (และรหัสผ่าน) เพื่อติดตั้ง

ตัวเลือกที่ดีที่สุดของคุณดูเหมือนจะเป็น:

  • ใช้บัญชี Guest ที่ไม่มีรหัสผ่าน จึงออกจากบัญชีเริ่มต้นด้วยรหัสผ่าน
  • ไปที่บัญชีโดยไม่ต้องใช้รหัสผ่าน? ไม่แนะนำให้ทำอย่างนี้: เพิ่มบัญชีผู้ใช้ใหม่ (ด้วยรหัสผ่าน) จากนั้นเปลี่ยนเป็นบัญชีที่ว่างเปล่า เพื่อทำสิ่งนี้:
    1. สร้างผู้ใช้ (ผ่าน GUI หรือ useradd ฯลฯ ) จากนั้น
    2. CTRL- ALT- Tเพื่อเปิดเทอร์มินัล ต่อไป,
    3. gksu gedit nano -B /etc/shadowจากนั้นค้นหาผู้ใช้ใหม่และเปลี่ยนแฮชรหัสผ่านที่มีอยู่ด้วย: U6aMy0wojraho- ดังนั้นจึงมีลักษณะดังนี้:newuser:U6aMy0wojraho:13996:0:99999:7:::
  • ทางออกที่ดีที่สุดสำหรับคำถามของคุณ: เลือกที่จะเข้าสู่ระบบบัญชีของคุณโดยอัตโนมัติซึ่งเป็นประโยชน์หลักที่คุณจะได้รับ เพื่อทำสิ่งนี้:

    1. กดCTRL- ALT- T(เพื่อเปิดเทอร์มินัล) ในเทอร์มินัลพิมพ์:

      sudo gedit /etc/lightdm/lightdm.conf
      

      เพิ่มบรรทัด:

      autologin-user=YOURUSERNAME
      autologin-user-timeout=0
      

      แทนที่YOURUSERNAME- ด้วยชื่อผู้ใช้จริงในระบบของคุณ


ขอบคุณสำหรับการชี้ทางเลือก ฉันรู้ว่าการไม่มีรหัสผ่านไม่ใช่ความคิดที่ดี แต่ฉันต้องการทราบว่าเป็นไปได้หรือไม่ (ฉันได้อัปเดตคำถาม)
Flimm

2

มันเป็นอินเทอร์เฟซ GUI และนั่นคือสิ่งที่ทำให้คุณไม่สามารถใช้รหัสผ่านว่างเปล่าได้

หากมีวิธีที่จะต้องทำผ่านทางสถานี

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


2

ดูเหมือนว่ารหัสผ่านที่ว่างเปล่าไม่ตรงกับข้อกำหนดความซับซ้อนของรหัสผ่าน

นี่คือสิ่งที่ฉันพบ man passwd

As a general guideline, passwords should consist of 6 to 8 characters including one or
       more characters from each of the following sets:

       ·   lower case alphabetics

       ·   digits 0 thru 9

       ·   punctuation marks

       Care must be taken not to include the system default erase or kill characters.  passwd will reject any password which is not
       suitably complex.

แก้ไข:น่าเสียดายที่คุณไม่สามารถตั้งรหัสผ่านให้ว่างผ่าน UI นั้นได้

http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/quantal/gnome-control-center/quantal-proposed/view/head:/panels/user-accounts/um-password-dialog.c#L358

เป็นฟังก์ชั่นที่ตัดสินใจว่าจะเปิดใช้งานปุ่ม "เปลี่ยน" หรือไม่

    if (strlen (password) < MIN_PASSWORD_LEN) {
            can_change = FALSE;
            if (password[0] == '\0') {
                    tooltip = _("You need to enter a new password");
            }
            else {
                    tooltip = _("The new password is too short");
            }
    }
    else if (strcmp (password, verify) != 0) {
            can_change = FALSE;
            if (verify[0] == '\0') {
                    tooltip = _("You need to confirm the password");
            }
            else {
                    tooltip = _("The passwords do not match");
            }
    }
    else if (!um->old_password_ok) {
            can_change = FALSE;
            if (old_password[0] == '\0') {
                    tooltip = _("You need to enter your current password");
            }
            else {
                    tooltip = _("The current password is not correct");
            }
    }
    else {
            can_change = TRUE;
            tooltip = NULL;
    }

    gtk_widget_set_sensitive (um->ok_button, can_change);

รหัสผ่านขั้นต่ำ len 6 คือฮาร์โค้ด :(

http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/quantal/gnome-control-center/quantal-proposed/view/head:/panels/user-accounts/um-password-dialog.c#L39

#define MIN_PASSWORD_LEN 6

1
มันคือ "สิ่งที่คุณเรียกว่าแนวทางปฏิบัติมากกว่ากฎที่เกิดขึ้นจริง" ...
Oli

แต่บรรทัดสุดท้ายบอกว่า "passwd จะปฏิเสธรหัสผ่านใด ๆ ที่ไม่ซับซ้อนอย่างเหมาะสม" ดังนั้นมันอาจจะไม่อนุญาตให้ใช้รหัสผ่านที่ว่างเปล่าฉันเชื่อว่า
thefourtheye

แต่อีกครั้งรายการเหล่านั้นไม่มีข้อกำหนด คุณไม่จำเป็นต้องใช้ตัวละครและตัวละคร แต่อย่างใดพวกเขาแค่แนะนำให้คุณใช้รหัสผ่านที่แข็งแกร่งกว่า PAM ดูแลกฎเกณฑ์ในสิ่งที่คุณต้องการจริง ๆ
Oli

2
คุณสามารถตั้งรหัสผ่านที่ว่างpasswdด้วย-dตัวเลือก
Flimm

ได้. อ่านในหน้าคน นั่นเป็นเหตุผลที่ฉันพูดว่า "ไม่สามารถตั้งรหัสผ่านให้ว่างผ่าน UI นั้น"
thefourtheye

1

มันเป็นไปได้ที่จะเปลี่ยนรหัสผ่านหลังจากการลบ คุณต้องบูตในโหมดการกู้คืน ที่นี่คุณจะได้พบกับการสอนที่ดี: http://www.psychocats.net/ubuntu/resetpassword

พูดสั้น ๆ เกี่ยวกับสิ่งที่คุณจะพบในลิงค์ด้านบน:

  1. คุณต้องรีบูตเข้าสู่โหมดการกู้คืน (เพื่อให้เมนูบูตปรากฏขึ้นคุณต้องกดปุ่ม Shift ค้างไว้ในระหว่างการบูตเครื่อง)
  2. ในเมนู boot-up เลือกตัวเลือก "Drop to root shell prompt"

  3. พิมพ์บนคอนโซลทีละหนึ่ง

    ls /home
    passwd username
    passwd susan
    exit
    

    จากนั้นรีบูตเครื่องตามปกติ


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