我已经按照这个设置了一个加密的主目录加密主目录使用方法。
为了获得 ssh 访问权限,我已添加auth required pam_encfs.so
到/etc/pam.d/sshd
$ cat /etc/pam.d/sshd | egrep -v ^#
auth required pam_env.so # [1]
auth required pam_env.so envfile=/etc/default/locale
auth required pam_encfs.so
@include common-auth
account required pam_nologin.so
@include common-account
@include common-session
session optional pam_motd.so # [1]
session optional pam_mail.so standard noenv # [1]
session required pam_limits.so
登录后它确实可以工作一小段时间,但 5-10 分钟后主目录将被卸载。如果我本地登录,一切都运行正常。甚至从另一台机器登录 ssh 也是如此。
似乎每次 cron 启动时都会进行卸载:
/var/log/身份验证
Feb 22 19:01:01 xxxxx sshd[12746]: Accepted password for USER from xxx.xxx.xxx.xxx port 39769 ssh2
Feb 22 19:01:01 xxxxx sshd[12746]: pam_unix(sshd:session): session opened for user USER by (uid=0)
Feb 22 19:05:01 xxxxx CRON[13248]: pam_unix(cron:session): session opened for user root by (uid=0)
Feb 22 19:05:01 xxxxx CRON[13248]: pam_unix(cron:session): session closed for user root
答案1
检查中的参数/etc/security/pam_encfs.conf
。在我的系统上,我看到了以下行
encfs_default --idle=1
当文件系统闲置 1 分钟且没有打开任何文件时,它会触发卸载。将idle
参数设置为 0 可禁用自动卸载。如果您愿意,可以在挂载点特定的行中设置它,而不是默认值。