Hóa ra nó khá đơn giản với GDM. Tôi giả sử bạn đang sử dụng GDM vì bạn cũng đang sử dụng Gnome. Đầu tiên, tạo guesttài khoản người dùng với mật khẩu trống:
sudo useradd -d /tmp/guest -p $(openssl passwd "") guest
Các openssl passwd "" sẽ trở lại giá trị băm của chuỗi rỗng, do đó thiết lập mật khẩu để trống.
Bây giờ, tất cả những gì bạn cần là hai tập lệnh này:
/etc/gdm/PostLogin/Default
Điều này được thực hiện sau khi bạn đăng nhập và sẽ tạo thư mục /tmp/$guestuser( /tmp/guesttheo mặc định) và sao chép các tệp mặc định từ /etc/skelđó. Để thay đổi tên người dùng mặc định cho người dùng khách, hãy đặt thành tên guestuserkhác ở đầu.
#!/bin/sh
guestuser="guest"
## Set up guest user session
if [[ "$USER" = "$guestuser" ]]; then
mkdir /tmp/"$guestuser"
cp /etc/skel/.* /tmp/"$guestuser"
chown -R "$guestuser":"$guestuser" /tmp/"$guestuser"
fi
exit 0
/etc/gdm/PostSession/Default
Điều này được thực hiện sau khi bạn đăng xuất và sẽ xóa /etc/$guestuserthư mục và tất cả nội dung của nó. Đảm bảo đặt guestusercùng một giá trị trong cả hai tập lệnh.
#!/bin/sh
guestuser="guest"
## Clear up the guest user session
if [[ "$USER" = "$guestuser" ]]; then
rm -rf /tmp/"$guestuser"
fi
exit 0
Cuối cùng, làm cho hai tập lệnh thực thi:
sudo chmod 755 /etc/gdm/PostLogin/Default /etc/gdm/PostSession/Default
Bây giờ, chỉ cần đăng xuất và bạn sẽ thấy guestngười dùng mới của mình . Bạn có thể đăng nhập bằng cách chọn nó và nhấn Enterkhi được nhắc nhập mật khẩu. Người guestdùng sẽ không thể sử dụng sudovì đó là mặc định cho tất cả người dùng. Chỉ người dùng được đề cập rõ ràng trong /etc/sudoershoặc những người là thành viên của các nhóm được đề cập rõ ràng trong sudoers(như , wheelhoặc sudotùy thuộc vào phân phối của bạn) mới có thể sử dụng sudo.
Nếu bạn đang sử dụng phiên bản gần đây của GDM, nó có thể vô hiệu hóa nút đăng nhập trong khi hộp mật khẩu trống. Để giải quyết vấn đề này, bạn có thể yêu cầu GDM không nhắc mật khẩu cho các nhóm cụ thể. Thông báo trước là điều này cũng sẽ bỏ qua menu chọn phiên cho các thành viên của nhóm đó. Nếu bạn muốn làm điều này bạn nên thêm dòng này vào đầu của /etc/pam.d/gdm-password:
auth sufficient pam_succeed_if.so user ingroup guest