在 z/os 上实施 ssl
Implementing ssl on z/os
有人知道如何在 z/OS telnet 服务器上实施 SSL 吗?
我尝试查看 IBM 站点并找到了如何使用 MQ 或其他软件实现 ssl,但没有找到如何植入 z/OS 本身的信息。
对于 z/OS-server 上的任何 telnet 连接,您的 telnet 配置数据集中应该有如下内容:
BEGINVTAM
PORT 1234
DEFAULTLUS AB.0001..AB.9999 ENDDEFAULTLUS
DEFAULTAPPL TSO
ENDVTAM
TELNETPARMS
PORT 1234
ENDTELNETPARMS
只需将 PORT
更改为 SECUREPORT
就足以在此连接上启用 SSL/TLS。要为连接配置额外的 TLS 参数,您可以将更多参数添加到 TELNETPARMS
部分或在 TELNETGLOBALS
部分为所有端口定义它们。
改用 TTLSPORT
将允许在端口上使用应用程序透明 TLS (AT-TLS),这需要在 AT-TLS 策略代理中进行额外配置(如果您的安装已经有一个 运行).
有关 "IP Configuration Reference" 和 "IP Configuration Guide" z/OS 通信服务器的更多信息,它们都有关于配置 telnet 服务器的章节。
关于 "out-of-the-box" Telnet 客户端,请确保不要混淆 "telnet" 和 "tn3270"。像 PuTTY 这样的 "out-of-the-box" telnet 客户端通常不支持特定于 3270 的数据流——标准的 telnet 将由 OMVS 在 z/OS 中处理。 TN3270 支持由名为 EZBTNINI 的程序处理,通常 运行 通过名为 TN3270 的 PROC。
TN3270 会话流量可以加密,但必须告知 TN3270 仿真器(如 BlueZone 或 PCOMM)在通过 TTLSPORT 端口与 VTAM 通信时使用隐式或显式 TLS。
要在 z/OS 上将 TLS 与 3270 终端一起使用,您必须 运行 策略代理。假设您在端口 1234 的 TN3270 PROFILE 中有这些语句:
; Add secure port 1234 for TLS
TELNETPARMS
TTLSPORT 1234 ; TTLSPORT for Policy Agent & AT-TLS
CONNTYPE SECURE ; Require TLS
NOSEQUENTIALLU
ENDTELNETPARMS
BEGINVTAM
PORT 1234
DEFAULTLUS
TCP00001..TCP00030
ENDDEFAULTLUS
...other BEGINVTAM block statements
ENDVTAM
这里有一个示例 pagent_TTLS.conf,可用于指定端口 1234 的 TLS 选项:
#----------------------------------------------------------------------
#--- AT-TLS policy for TN3270 --------------------------------------------
TTLSRule TN3270-Server-1234
{
LocalAddr ALL
LocalPortRange 1234
Direction Both
Priority 253
TTLSGroupActionRef gAct-TN3270
TTLSEnvironmentActionRef eAct-TN3270
TTLSConnectionActionRef cAct-TN3270
}
TTLSGroupAction gAct-TN3270
{
TTLSEnabled On
GroupUserInstance 1
}
TTLSEnvironmentAction eAct-TN3270
{
HandshakeRole Server
EnvironmentUserInstance 0
TTLSKeyringParmsRef kyRingParms
}
TTLSConnectionAction cAct-TN3270
{
HandshakeRole ServerWithClientAuth
TTLSCipherParmsRef cipher1234-BlueZone_Ciphers
TTLSConnectionAdvancedParmsRef cAdv-TN3270-1234
CtraceClearText On
Trace 1
}
TTLSConnectionAdvancedParms cAdv-TN3270-1234
{
ApplicationControlled On
SecondaryMap Off
SSLv3 On
TLSv1 On
TLSv1.1 On
TLSv1.2 On
}
TTLSKeyringParms kyRingParms
{
Keyring MackDev
}
TTLSCipherParms cipher1234-BlueZone_Ciphers
{
# Bluezone 3DES Ciphers
V3CipherSuites TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA
V3CipherSuites TLS_RSA_WITH_3DES_EDE_CBC_SHA
# Bluezone AES 128
V3CipherSuites TLS_DHE_RSA_WITH_AES_128_CBC_SHA
V3CipherSuites TLS_RSA_WITH_AES_128_CBC_SHA
V3CipherSuites TLS_DHE_DSS_WITH_AES_128_CBC_SHA
# Bluezone "Strong Only"
V3CipherSuites TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
V3CipherSuites TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
V3CipherSuites TLS_DHE_RSA_WITH_AES_256_CBC_SHA
V3CipherSuites TLS_DHE_RSA_WITH_AES_128_CBC_SHA
V3CipherSuites TLS_RSA_WITH_AES_256_GCM_SHA384
V3CipherSuites TLS_RSA_WITH_AES_128_GCM_SHA256
V3CipherSuites TLS_RSA_WITH_AES_256_CBC_SHA256
V3CipherSuites TLS_RSA_WITH_AES_128_CBC_SHA256
V3CipherSuites TLS_RSA_WITH_AES_256_CBC_SHA
V3CipherSuites TLS_RSA_WITH_AES_128_CBC_SHA
V3CipherSuites TLS_RSA_WITH_3DES_EDE_CBC_SHA
V3CipherSuites TLS_DHE_DSS_WITH_AES_256_CBC_SHA256
V3CipherSuites TLS_DHE_DSS_WITH_AES_128_CBC_SHA256
V3CipherSuites TLS_DHE_DSS_WITH_AES_256_CBC_SHA
V3CipherSuites TLS_DHE_DSS_WITH_AES_128_CBC_SHA
V3CipherSuites TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA
# Bluezone RC4
V3CipherSuites TLS_RSA_WITH_RC4_128_MD5
V3CipherSuites TLS_RSA_WITH_RC4_128_SHA
# Bluezone AES 256
V3CipherSuites TLS_DHE_RSA_WITH_AES_256_CBC_SHA
V3CipherSuites TLS_RSA_WITH_AES_256_CBC_SHA
V3CipherSuites TLS_DHE_DSS_WITH_AES_256_CBC_SHA
}
#--- AT-TLS policy for TN3270 End ----------------------------------------
有人知道如何在 z/OS telnet 服务器上实施 SSL 吗?
我尝试查看 IBM 站点并找到了如何使用 MQ 或其他软件实现 ssl,但没有找到如何植入 z/OS 本身的信息。
对于 z/OS-server 上的任何 telnet 连接,您的 telnet 配置数据集中应该有如下内容:
BEGINVTAM
PORT 1234
DEFAULTLUS AB.0001..AB.9999 ENDDEFAULTLUS
DEFAULTAPPL TSO
ENDVTAM
TELNETPARMS
PORT 1234
ENDTELNETPARMS
只需将 PORT
更改为 SECUREPORT
就足以在此连接上启用 SSL/TLS。要为连接配置额外的 TLS 参数,您可以将更多参数添加到 TELNETPARMS
部分或在 TELNETGLOBALS
部分为所有端口定义它们。
改用 TTLSPORT
将允许在端口上使用应用程序透明 TLS (AT-TLS),这需要在 AT-TLS 策略代理中进行额外配置(如果您的安装已经有一个 运行).
有关 "IP Configuration Reference" 和 "IP Configuration Guide" z/OS 通信服务器的更多信息,它们都有关于配置 telnet 服务器的章节。
关于 "out-of-the-box" Telnet 客户端,请确保不要混淆 "telnet" 和 "tn3270"。像 PuTTY 这样的 "out-of-the-box" telnet 客户端通常不支持特定于 3270 的数据流——标准的 telnet 将由 OMVS 在 z/OS 中处理。 TN3270 支持由名为 EZBTNINI 的程序处理,通常 运行 通过名为 TN3270 的 PROC。
TN3270 会话流量可以加密,但必须告知 TN3270 仿真器(如 BlueZone 或 PCOMM)在通过 TTLSPORT 端口与 VTAM 通信时使用隐式或显式 TLS。
要在 z/OS 上将 TLS 与 3270 终端一起使用,您必须 运行 策略代理。假设您在端口 1234 的 TN3270 PROFILE 中有这些语句:
; Add secure port 1234 for TLS
TELNETPARMS
TTLSPORT 1234 ; TTLSPORT for Policy Agent & AT-TLS
CONNTYPE SECURE ; Require TLS
NOSEQUENTIALLU
ENDTELNETPARMS
BEGINVTAM
PORT 1234
DEFAULTLUS
TCP00001..TCP00030
ENDDEFAULTLUS
...other BEGINVTAM block statements
ENDVTAM
这里有一个示例 pagent_TTLS.conf,可用于指定端口 1234 的 TLS 选项:
#----------------------------------------------------------------------
#--- AT-TLS policy for TN3270 --------------------------------------------
TTLSRule TN3270-Server-1234
{
LocalAddr ALL
LocalPortRange 1234
Direction Both
Priority 253
TTLSGroupActionRef gAct-TN3270
TTLSEnvironmentActionRef eAct-TN3270
TTLSConnectionActionRef cAct-TN3270
}
TTLSGroupAction gAct-TN3270
{
TTLSEnabled On
GroupUserInstance 1
}
TTLSEnvironmentAction eAct-TN3270
{
HandshakeRole Server
EnvironmentUserInstance 0
TTLSKeyringParmsRef kyRingParms
}
TTLSConnectionAction cAct-TN3270
{
HandshakeRole ServerWithClientAuth
TTLSCipherParmsRef cipher1234-BlueZone_Ciphers
TTLSConnectionAdvancedParmsRef cAdv-TN3270-1234
CtraceClearText On
Trace 1
}
TTLSConnectionAdvancedParms cAdv-TN3270-1234
{
ApplicationControlled On
SecondaryMap Off
SSLv3 On
TLSv1 On
TLSv1.1 On
TLSv1.2 On
}
TTLSKeyringParms kyRingParms
{
Keyring MackDev
}
TTLSCipherParms cipher1234-BlueZone_Ciphers
{
# Bluezone 3DES Ciphers
V3CipherSuites TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA
V3CipherSuites TLS_RSA_WITH_3DES_EDE_CBC_SHA
# Bluezone AES 128
V3CipherSuites TLS_DHE_RSA_WITH_AES_128_CBC_SHA
V3CipherSuites TLS_RSA_WITH_AES_128_CBC_SHA
V3CipherSuites TLS_DHE_DSS_WITH_AES_128_CBC_SHA
# Bluezone "Strong Only"
V3CipherSuites TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
V3CipherSuites TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
V3CipherSuites TLS_DHE_RSA_WITH_AES_256_CBC_SHA
V3CipherSuites TLS_DHE_RSA_WITH_AES_128_CBC_SHA
V3CipherSuites TLS_RSA_WITH_AES_256_GCM_SHA384
V3CipherSuites TLS_RSA_WITH_AES_128_GCM_SHA256
V3CipherSuites TLS_RSA_WITH_AES_256_CBC_SHA256
V3CipherSuites TLS_RSA_WITH_AES_128_CBC_SHA256
V3CipherSuites TLS_RSA_WITH_AES_256_CBC_SHA
V3CipherSuites TLS_RSA_WITH_AES_128_CBC_SHA
V3CipherSuites TLS_RSA_WITH_3DES_EDE_CBC_SHA
V3CipherSuites TLS_DHE_DSS_WITH_AES_256_CBC_SHA256
V3CipherSuites TLS_DHE_DSS_WITH_AES_128_CBC_SHA256
V3CipherSuites TLS_DHE_DSS_WITH_AES_256_CBC_SHA
V3CipherSuites TLS_DHE_DSS_WITH_AES_128_CBC_SHA
V3CipherSuites TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA
# Bluezone RC4
V3CipherSuites TLS_RSA_WITH_RC4_128_MD5
V3CipherSuites TLS_RSA_WITH_RC4_128_SHA
# Bluezone AES 256
V3CipherSuites TLS_DHE_RSA_WITH_AES_256_CBC_SHA
V3CipherSuites TLS_RSA_WITH_AES_256_CBC_SHA
V3CipherSuites TLS_DHE_DSS_WITH_AES_256_CBC_SHA
}
#--- AT-TLS policy for TN3270 End ----------------------------------------