Thay đổi vỏ đăng nhập không nhất thiết ngăn người dùng xác thực (ngoại trừ trong một số dịch vụ kiểm tra xem vỏ của người dùng có được đề cập đến không /etc/shells).
Mọi người vẫn có thể xác thực các dịch vụ khác nhau mà hệ thống của bạn cung cấp cho người dùng unix và vẫn có thể được phép thực hiện một số hành động mặc dù có thể không chạy trực tiếp các lệnh tùy ý.
Thay đổi shell thành /bin/falsehoặc /usr/sbin/nologinsẽ chỉ ngăn chúng chạy các lệnh trên các dịch vụ có thể được sử dụng để chạy các lệnh (đăng nhập bảng điều khiển, ssh, telnet, rlogin, rexec ...), do đó chỉ ảnh hưởng đến ủy quyền cho một số dịch vụ.
Chẳng sshhạn, điều đó vẫn cho phép họ thực hiện chuyển tiếp cổng.
passwd -lsẽ vô hiệu hóa xác thực mật khẩu, nhưng người dùng vẫn có thể được phép sử dụng các phương thức xác thực khác (như authorized_keysvới ssh).
Với pamLinux, ít nhất, bạn có thể sử dụng pam_shellsmô-đun để hạn chế xác thực hoặc ủy quyền cho người dùng có vỏ được phép (những thứ được đề cập trong /etc/shells). Đối với ssh, bạn sẽ muốn thực hiện ở cấp ủy quyền ( account) như để sshdsử dụng xác thực pam cùng với các phương thức xác thực khác (như authorized_keys) hoặc bạn có thể thực hiện với các sshd_configchỉ thị trong /etc/ssh/sshd_config(như AllowUsersvà bạn bè).
Coi chừng rằng việc thêm một số hạn chế trong ủy quyền pam toàn cầu sẽ có khả năng ngăn croncông việc chạy như những người dùng đó.
/bin/falsecó vẻ phổ biến hơn/bin/true.