如何启用SSL协议,并能够在使用DBeaver连接时捕获SSL协议交互流量?
如果方便的话,能否提供一个假数据的ssl包?
非常感谢
如何启用SSL协议,并能够在使用DBeaver连接时捕获SSL协议交互流量?
如果方便的话,能否提供一个假数据的ssl包?
非常感谢
DBServer |
ECPApp |
| 10.1.30.231 | 10.1.30.232 |
《WebGateway系列(4): 配置HTTPS访问IRIS的Web服务》中介绍了在Web服务器中配置SSL/TLS以实现从客户端浏览器到Web服务器之间的安全连接,从Web服务器到IRIS之间是否也可以通过配置SSL/TLS建立起安全连接呢?尤其是在Web服务器与IRIS没有安装在同一台Server上的情况下,这段连接的安全性也是需要考虑的。答案是肯定的,接下来我们就来介绍下配置Web Gateway使用SSL/TLS连接到IRIS的基本步骤。
1.首先,我们先准备一下所需要的证书。通讯的双方为Web Gateway 和 IRIS Super Server, 双方都需要准备好各自的证书和key。IRIS自带的Public Key Infrastructure(PKI)功能内置了OpenSSL,可以用来生成服务器端及客户端的证书和key。在使用此功能时,IRIS可以同时作为CA Server和CA Client,作为CA Server时可以生成自签名的证书,可以批准CA Client的证书申请并将证书下发给CA Client。
1)配置本地证书颁发机构服务器,生成sever端的证书和key。
2)配置本地证书颁发机构客户端,如下
3)将证书签名请求提交到证书颁发机构服务器
4)进程未决证书签名请求
发放证书。
至此,Client以及Server端证书和key都已准备完成。
大家好,我可以在RSA和DSA之间进行选择。 ECC似乎不受支持。有没有不使用外部二进制(例如curl)的解决方法?
RY
有一个简单的新方法可以在Windows和Mac上的InterSystems IRIS 2019.1(和2018.1.2)的SSL/TLS配置中添加证书授权(CA)证书。 你可以通过输入以下内容要求IRIS使用操作系统的证书存储。
%OSCertificateStore
在 "包含受信任证书颁发机构X.509证书的文件 "栏中输入:%OSCertificateStore。 这里有一张如何在门户中这样做的图片:
这里有一个描述这个问题的文档链接。 它在 "包含受信任的证书颁发机构证书的文件 "的选项列表中。
这就是你需要做的所有事情! 现在,这个配置将接受由操作系统证书库中列出的任何CA颁发的证书。
%Net.SSH软件包支持SSH(安全外壳)通信。本主题简要介绍此包中的类。
%Net.SSH.Session表示SSH会话。要使用此类,请执行以下操作:
Connect()实例方法连接到服务器。AuthenticateWithKeyPair()或AuthenticateWithUsername()向服务器验证身份。%Net.SSH.Session的其他方法执行进出远程系统的单个文件的SCP(安全复制)操作、执行远程命令、传输TCP通信或执行SFTP操作。例如,使用SFTP将会话用于SFTP操作。此方法通过引用返回可用于SFTP操作的%Net.SSH.SFTP实例。
重要提示:有关可以使用这些类的受支持平台的信息,请参阅%Net.SSH.Session和%Net.SSH.SFTP的类参考。
以下方法显示了如何通过SFTP在服务器上写入文件列表:
Method SFTPDir(ftpserver, username, password) As %Status
{
set ssh = ##class(%Net.SSH.Session).%New()
do ssh.Connect(ftpserver)
do ssh.AuthenticateWithUsername(username,password)
//open an SFTP session and get that returned by reference
do ssh.OpenSFTP(.sftp)
//get a list of files
do sftp.Dir(".",.files)
set i=$ORDER(files(""))
while i'="" {
write $listget(files(i),1),!
set i=$ORDER(files(i))
}
quit $$$OK
}
/// Demonstrates the execution of a remote command (by default, uname -a).
ClassMethod TestExecute(host As %String, username As %String, password As %String, command As %String = "uname -a", pTimeout As %Integer = -1) As %Status
{
Set s = ##class(%Net.SSH.Session).%New()
Set sc = s.Connect(host)
Quit:$$$ISERR(sc) sc
If pTimeout'=-1 {
Set sc = s.SetTimeout(pTimeout)
Quit:$$$ISERR(sc) sc
}
Set sc = s.AuthenticateWithUsername(username,password)
Quit:$$$ISERR(sc) sc
Set sc = s.Execute(command,.tDevice)
Quit:$$$ISERR(sc) sc
Set $ZT="Trap"
For {
Use tDevice
Read X
Use $P
If X'[$C(13) {
For i=1:1:$L(X,$C(10)) Write $P(X,$C(10),i),!
} Else {
Write X
}
}
Exit
Use $P
Close tDevice
Quit sc
Trap
Set sc = $S($ZE["<READ>":$$$OK,1:$$$ERROR($$$CacheError,$ZE))
Goto Exit
}
/// Demonstrates the use of port forwarding to whatismyipaddress.com via the remote SSH server.
ClassMethod TestForwardPort(host As %String, username As %String, password As %String, remotehost As %String = "whatismyipaddress.com", remoteport As %Integer = 80) As %Status
{
Set s = ##class(%Net.SSH.Session).%New()
Set sc = s.Connect(host)
Quit:$$$ISERR(sc) sc
Set sc = s.AuthenticateWithUsername(username,password)
Quit:$$$ISERR(sc) sc
Set sc = s.ForwardPort(remotehost,remoteport,.tDevice)
Quit:$$$ISERR(sc) sc
Set $ZT="Trap"
Use tDevice
Write "GET / HTTP/1.0"_$C(13,10,13,10)
Write *-3 // Flush
// Now the response
For {
Use tDevice
Read X
Use $P
If X'[$C(13) {
For i=1:1:$L(X,$C(10)) Write $P(X,$C(10),i),!
} Else {
Write X
}
}
Exit
Use $P
Close tDevice
Quit sc
Trap
Set sc = $S($ZE["<READ>":$$$OK,1:$$$ERROR($$$CacheError,$ZE))
Goto Exit
}