关于/etc/hosts.equiv和$HOME/.rhosts的区别

首先这两个文件都是和主机间的信任关系相关的,也就是允许另外一台机器上的用户不用输密码就可以rlogin到本机。但是,这两个文件之间的区别在哪里呢?

总结一下:

1.首先这两个文件里面的有效格式是一样的,也就是都可以是下面的格式

主机名

主机名 用户名

+

2.首先明确如果有远程主机想rlogin到本机,本机都要做什么

1)rlogind检查本机/etc/passwd中是否有远程的用户名,没有则拒绝访问

2)如果本机/etc/passwd中有远程的用户名,并且该用户名不是root,则先检查/etc/hosts.equiv,看看里面是否存在远程主机名,如果存在,则允许访问,如果不存在,则去检查$HOME/.rhosts文件.

如果是root,则跳过对etc/hosts.equiv的检查,只检查“/.rhosts”。

3)/etc/hosts.equiv中只有远程主机名的话,表示允许远程主机上的所有非root用户可以登录本地主机,并且不需要密码

/etc/hosts.equiv 文件中如果加入了一台远程主机和一个用户,在远程主机上的那个用户(非root用户)就可以用rlogin登录本地机上的所有非root账号,而且不需要密码。

4)$HOME/.rhosts文件中如果是远程主机名的话,则只信任由远程主机上与.rhosts属主同名的用户,不需要输密码。

请使用浏览器的分享功能分享到微信等