当我尝试使用 scp 拉取权限为 777 的文件时,为什么 Unix 会要求输入密码?

当我尝试使用 scp 拉取权限为 777 的文件时,为什么 Unix 会要求输入密码?

让我们考虑一下我有一个/home/base/alpha.txt权限为 777 的文件,-rwxrwxrwxuser@host.现在,从 ie 系统中host1user1user1@host1尝试使用以下命令提取上述文件:

scp user@host:/home/base/alpha.txt .

根据文件权限 777,每个人都拥有读写执行权限,即任何人都应该能够读取、写入和执行上述文件。那么为什么 Unix 要求输入user@host密码呢?

答案1

文件权限适用于主机。该文件仍然需要使外部可见;您正在使用 SSH(通过 scp)这样做,SSH 会要求您输入密码。这发生在涉及目标文件的任何事情之前; SSH 服务器对连接用户进行身份验证,并且仅在完成(成功)后才涉及scp目标主机并访问目标文件。

如果您想要无密码 SSH 访问,您可以设置密钥来执行此操作。

user顺便说一句,由于您以on身份登录host,因此 的相关权限alpha.txt仅适用于user。如果user是 的所有者alpha.txtalpha.txt则只需对其所有者可读。

相关内容