通过Remote ssh实现AIX和RedHat之间的脚本调用
工作中遇到在AIX中执行完一段脚本后,需要远程调用一台RedHat中的脚本,用到了remote ssh,记录下来。
1. 在AIX上安装ssh
AIX光盘中自带有ssh的安装包,由于我的AIX是在VIO下管理,因此通过ftp上传ISO文件到AIX服务器上,执行loopmount
loopmount -i /CZZ7YML.iso -m /mnt -o "-V cdrfs -o ro"
如果是插入光盘到光驱,mount的方式是:mount -rv cdrfs /dev/cd0 /DVD
执行smitty installp
1). 选择"Install Software Bundle"
2). directory选择"/mnt"
3). 选择最下面的openssh_client,按回车
4). “ACCEPT new license agreement”选择YES,按回车进行安装
5). 同样在第3步选择openssh_server,进行安装
2. 导出public keys
由于是在AIX上远程调用RedHat中的脚本,因此需要在AIX端导出公共密钥,然后再导入到RedHat中,方法是:
1. 在AIX端执行命令 ssh-keygen -t dsa -P '' -f //.ssh/id_dsa (// 代表home目录)
bash-3.2# ssh-keygen -t dsa -P '' -f //.ssh/id_dsa
Generating public/private dsa key pair.
Created directory ''.
Your identification has been saved in //.ssh/id_dsa.
Your public key has been saved in //.ssh/id_dsa.pub.
The key fingerprint is:
9f:ec:c8:6d:21:92:89:8f:e2:09:26:7d:a1:48:d9:7a root@vega56
The key's randomart image is:
+--[ DSA 1024]----+
| |
| |
| |
| o |
| o ... oS |
|.o....+ .o.. |
|+ooE.o . .+. |
|o.oo. .. +. |
| .o. o.o |
+-----------------+
拷贝生成的id_dsa.pub到RedHat服务器上
2. 在RedHat端执行命令cat id_dsa.pub >> ~/.ssh/authorized_keys
到此, AIX和RedHat直接的远程访问完成,下面检验一下:
在AIX端执行: ssh root@rhel ls
rhel是RedHat的访问地址, 上述命令意思是通过root用户调用RedHat中的ls脚本, 可以看到RedHat当前目录的文件列表在AIX端显示,因此测试成功
注:此方法同样适用于RedHat和RedHat之间,区别是在2.1中执行ssh-keygen -t dsa -P '' -f /root/.ssh/id_dsa, home目录是/root