我目前正在尝试使用IBM Tivoli Identity Manager(IBM Security Identity Manager)a.k.a. ITIM将Linux服务设置到我工作的Linux开发服务器,并且遇到了一些问题。我们所有的Linux服务器都使用ssh进行连接。我们的最终目标是使用Identity Manager在我们的网络上实现单点登录。
在ITIM网络界面中,我选择了MANAGE SERVICES选项,并显示了如下页面,我点击CREATE按钮创建新服务:
然后我接下来会看到一个页面,我选择了我想要的服务类型,在这个页面中我选择了POSIX LINUX选项,因为我想连接到Linux服务器。
然后在下一页上,我输入了我要连接的Linux服务器的信息,服务器的域名是phongdev.fit.edu,一个用于开发工作的服务器。
在此页面上注意有一个标题为TIVOLI DIRECTORY INTEGRATOR(TDI)的字段,其中有TDI安装的默认信息,在我的情况下,TDI安装在与安装ITIM相同的服务器上,因此localhost域名应该没事的。但是,当我使用netstat命令检查服务器时,该端口上没有运行任何东西,16231,所以我查找了在google上启动TDIDispatcher的说明,并被告知运行以下命令,/ etc / init.d / ITIMAd restart at at命令行似乎成功运行,但仍未在服务器上的端口16231上运行。
由于我们的服务器使用SSH,ITIM需要设置基于密钥的身份验证,我使用ssh在此Linux服务器上设置了密钥和密码,并在ITIM的下一个屏幕上输入了数据,如下所示,但是正如您所看到的,当我选择TEST CONNECTION按钮时会产生错误:
我检查了日志,日志中没有关于这些错误的信息,我不确定下一步在尝试解决这个问题时,我怀疑它可能与TDI Dispatcher没有出现的事实有关在16231端口上运行。
答案 0 :(得分:0)
TDI可能在不同的端口上运行。您没有指定TDI是在Windows还是Linux上运行,所以我的答案是假设Linux,因为这是我最熟悉的。
您可以通过查看TDI / timsol目录中的solution.properties文件找到您的端口号。它应列为api.remote.naming.port
。
TDI在默认端口1099上运行。一旦启动TDI(服务ITIMAd启动,或者你在系统上启动它),使用ps auxw | grep -i rmi
(或类似的东西)来查找进程。然后使用netstat -anp | grep PID
,其中PID是TDI RMI进程的进程ID。您应该立即看到它正在侦听的端口。我现在无法访问TDI服务器以获取确切的命令,但您应该明白这一点。
这是一篇关于更改RMI端口#的ISIM 6(TDI 7上的ITIM 5.1应该是相同的)的好文章:
如果您遇到错误CTGIMT600E且TDI 6或更低版本上有多个网络接口,则可能需要将服务器IP(或主机名)指定为java属性,以便TDI RMI绑定在正确的接口上。修改<tdi_home>/ibmdisrv
并插入-Djava.rmi.server.hostname=<yourhost>
。有关更多信息,请参阅以下文章:
http://www-01.ibm.com/support/docview.wss?uid=swg21381101
如果您仍然遇到问题,请在测试连接时查看ITIM msg.log和trace.log并查找线索。另请查看TDI ibmdi.log,它将位于您的TDI目录下。这也可以帮到你。
答案 1 :(得分:0)
除了Matt所说的(链接特别有用)之外,var / ibm / tivoli / common / TDI日志应该告诉你启动它时TDI的问题是什么 - 如果有问题的话。 在那些日志中的某处应该提到它所听取的端口号。 除非有升级或多次尝试配置RMI调度程序,否则我不明白为什么端口不应该是16231或1099.