您当前的位置:首页 > 计算机 > 系统应用 > Linux

龙蜥/openanolis/统信服务器操作系统1020a 上面rsh rlogin rexec 类的服务配置(RHEL8/centos8也应该是生效的)

时间:07-20来源:作者:点击数:
  1. dnf install rsh rsh-server -y
  2. systemctl enable rsh.socket
  3. systemctl start rsh.socket
  4.  firewall-cmd --permanent --add-port=514/tcp
  5.  firewall-cmd --reload
  6. 编辑配置文件,主要配置文件有3个,用户目录的.rhosts /etc/hosts.equiv  /etc/securetty

默认编辑用户目录的.rhosts就可以了,格式如下:

192.168.122.1  uos

这代表远端主机 (192.168.122.1) 上的uos用户 可以以当前用户身份登陆到本机而不需要输入密码执行命令。假设当前用户为 test,那么远端主机可以用命令 rsh -l test 192.168.122.213 pwd  以test用户登陆到本机(192.168.122.213)执行pwd命令并返回结果。

.rhosts 的条目含义为,允许的远端主机 允许的远端主机用户  ,然后远端主机的用户会映射到.rhosts目录所在的用户来执行。

当然,如果远端主机的用户和当前目录所在的用户名一样,就不用指定-l直接 rsh -l 192.168.122.213 pwd 就能免密在远端执行命令了。

如果需要放开任意主机过来执行命令,直接在.rhosts里面写一个+号(表示任意主机)就可以,但远端用户名必须和当前用户名相同,如果不相同,那得写2个+号,空格隔开 表示任意主机的任意用户。

如果需要通过远端主机登陆本机以root用户来执行命令,还需要编辑 /etc/securetty

echo "rsh" >> /etc/securetty

如果rlogin,rexec也需要用root来执行,还需要加入rlogin rexec到这个文件(防火墙端口记得放开)。

另外.rhosts文件权限最好设置为600.

如果要全局设置远端主机,可以设置在 /etc/hosts.equiv文件里,这个文件的主机会被映射为本地主机。 

参考资料:

man pam_rhosts

 man hosts.equiv  

/etc/pam.d/rsh

以前玩solaris的时候只知道一个+号走天下,因为安装集群oracle什么的,两台或者多台机器用户名是一样的,直接一个+号也不考虑安全的因素就搞定了。这两天因为rsh客户端用户名和服务器上的用户名不一致需要-l 指定的时候才发现,还是对pam_rhosts这个pam模块以及rhosts文件的规则没有细看导致老是权限被拒绝再认真学习了下。

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门