我创建了一个 bash 脚本,该脚本创建了一些用户,然后创建了一个 .ssh 文件夹并复制到他们的authorized_keys 文件中。我已确保将所有者组设置为特定用户,并且仅对所有者具有读写执行权限。授权密钥本身也是如此,只不过它仅具有所有者权限的读写权限。我发现,如果我使用 mv 命令将它们的authorized_keys 文件从脚本运行的位置移动到它们的 .ssh 文件夹,它们将无法通过 ssh 登录,但是如果我使用 cp 命令复制它们的文件,它就可以正常工作。知道为什么吗?
移动前对authorized_keys 文件执行 ls -lh :
[root@localhost Users]# ls -lh
total 8.0K
-rwxr-xr-x. 1 root root 653 Nov 25 16:31 CreateUserAccounts.sh
-rw-r--r--. 1 root root 403 Nov 25 15:13 user1_authorized_keys
.ssh 上的 ls -lhart:
[root@localhost user1]# ls -lhad .ssh
drwx------. 2 user1 user1 4.0K Nov 25 16:31 .ssh
ls -lh 授权密钥
[root@localhost .ssh]# ls -lh
total 4.0K
-rw-------. 1 user1 user1 403 Nov 25 15:13 authorized_keys