Linux rsh 命令超详细教程|远程 Shell 命令用法与安全须知
Linux 学习资料 https://pan.baidu.com/s/1A6qqBk2ViE_Le2cQjSowkQ?pwd7uz81. 命令简介rsh - 远程 ShellrshRemote Shell命令用于连接到远程主机并在该主机上执行指定的命令。它通过网络与远程主机建立连接允许用户在本地终端输入命令在远程主机上执行并将结果返回到本地终端。重要安全警告由于 rsh 在传输过程中不加密数据包括认证信息和命令输出存在严重的安全风险。在现代网络环境中它已被更安全的 SSHSecure Shell 所取代。强烈建议仅在受信任的、隔离的内部网络或测试环境中使用。2. 语法格式bash运行rsh [选项] 主机 [命令]参数说明主机要连接的远程主机的主机名或 IP 地址。命令要在远程主机上执行的命令。如果省略此参数rsh 会尝试启动一个远程登录会话类似于 rlogin。3. 常用选项及说明表格选项说明-d启用 Socket 层的调试功能用于故障排查。-l 用户名指定用于登录远程主机的用户名。如果不指定则默认使用本地当前登录的用户名。-n将输入重定向到 /dev/null。通常用于在后台运行 rsh 命令时防止其从标准输入读取数据而挂起。4. 示例用法示例 1执行简单的远程命令连接到远程主机 server1.example.com并执行 uptime 命令查看其运行时间。bash运行rsh server1.example.com uptime示例 2指定远程用户登录使用用户 alice 的身份登录到远程主机 192.168.1.100并列出其家目录的内容。bash运行rsh -l alice 192.168.1.100 ls -la示例 3执行多条命令在远程主机上依次执行多个命令用分号分隔。bash运行rsh server1 whoami; date; pwd示例 4运行后台任务将 rsh 命令放入后台运行并使用 -n 选项避免其等待输入。bash运行rsh -n server1 /path/to/long_running_script.sh 示例 5配合管道和重定向在本地压缩一个目录并将压缩后的数据流通过 rsh 传输到远程主机进行解压。bash运行tar czf - /local/dir | rsh server1 cd /remote/dir tar xzf -5. 注意事项安全性这是使用 rsh 最核心的问题。所有通信均为明文极易遭受中间人攻击和窃听。在生产环境或任何不安全的网络如互联网中必须使用 ssh 替代。服务依赖远程主机必须运行 rsh 服务端通常是 rshd 或 in.rshd 守护进程。现代 Linux 发行版默认通常不安装或启用此服务。主机信任配置rsh 传统上依赖于 /etc/hosts.equiv 和用户家目录下的/.rhosts 文件进行基于主机 / IP 的认证。这种机制安全性很低配置不当会严重削弱系统安全。网络与防火墙确保本地和远程主机之间的网络防火墙允许 rsh 服务端端口默认是 TCP 514的通信。命令执行环境远程命令在远程用户的非交互式 Shell 中执行其环境变量如 PATH可能与交互式登录会话不同可能影响命令查找和行为。退出状态码rsh 命令本身的退出状态码即是远程执行命令的退出状态码可以在本地通过 $? 变量获取。