在安装 Oracle RAC 前,需为各节点的 oracle 用户配置安全外壳协议(SSH)。本文将详细说明如何在 Oracle Linux 5 Update 8 环境下,实现两个节点之间的 SSH 互信配置,确保节点间可免密码登录,从而满足 RAC 安装对主机间安全通信与无缝访问的要求,提升系统部署效率与操作便利性。
1、 规划
2、 切换至需配置SSH互信的系统用户,例如执行命令:su oracle。
3、 通过执行 ssh-keygen 命令生成一对用于安全认证的公钥和私钥。具体操作如下:运行命令 `ssh-keygen -t rsa -f ~/.ssh/ssh1`,系统将开始创建基于 RSA 算法的密钥对。执行过程中,工具会自动检测并创建用于存储密钥的目录,此处为 `/home/oracle/.ssh`。随后,系统提示输入密码短语(passphrase)以增强私钥的安全性。在本例中,用户选择不设置密码保护,因此连续两次直接按下回车键,表示留空。完成设置后,私钥将被保存在指定路径 `/home/oracle/.ssh/ssh1`,而对应的公钥则保存在同目录下的 `ssh1.pub` 文件中。整个过程结束后,系统还会显示该密钥对的指纹信息(fingerprint),用于唯一标识该密钥,其值为:9f:88:ca:0c:dc:1d:ef:2d:21:24:36:92:53:dc:4f:9a,关联主机账户为 oracle@chenrong。该公钥可用于配置免密登录远程服务器,将公钥内容追加至目标主机的 `~/.ssh/authorized_keys` 文件即可实现基于密钥的身份验证,从而提升登录效率与安全性。生成的私钥应严格保管,避免泄露,确保整个认证机制的安全性。此方法广泛应用于 Linux 系统间的安全远程访问场景。
4、 进入当前用户家目录下的 .ssh 文件夹,执行查看命令后显示两个文件:ssh1 为私钥文件,应妥善保管,不可泄露;ssh1.pub 为公钥文件,可对外分发,用于身份验证。两个密钥文件通常成对生成,用于安全连接服务器。
5、 复制一份私钥文件,并将其重命名为identity,命令为:cp ssh1 identity。
6、 将公钥内容追加至本地 authorized_keys 文件中,可执行命令:cat ssh1.pub >> authorized_keys,以实现免密登录验证。
7、 将公钥文件复制到SSH2服务器,使用scp命令将本地的ssh1.pub文件传输至IP地址为192.168.0.22的远程主机,目标路径为/home/oracle/.ssh/目录下,并重命名为ssh1.pub。执行命令后需输入远程用户oracle的密码进行身份验证。文件大小为397字节,传输速度约为0.4KB/s,耗时极短,仅需约1秒即可完成传输,进度显示为100%。整个过程通过安全通道实现文件复制,确保数据传输的保密性与完整性,为后续免密登录配置奠定基础。
8、 将公钥写入目标主机的授权密钥文件中,可通过以下命令实现:执行 ssh 登录至 IP 地址为 192.168.0.22 的远程主机,将本地生成的公钥文件 ssh1.pub 的内容追加到远程用户 oracle 主目录下的 .ssh/authorized_keys 文件末尾。操作过程中需输入用户 oracle 的登录密码以完成身份验证。该步骤常用于配置 SSH 免密登录,确保公钥正确写入后,即可实现基于密钥的身份认证,提升访问安全性与自动化操作的便利性。
9、 断开 SSH 连接,输入命令 exit 即可退出会话。
10、 执行命令测试:ssh 192.168.0.22 date,返回结果为:2013年12月16日星期一 21:47:48,时区为中国标准时间(CST)。
11、 若在 SSH2 主机上无需密码即可成功执行 date 命令,则表明两台主机间的 SSH 互信已配置成功。

