プロトコルの SSL インスタンスを追加することで、ユーザープロトコルの SSL オフロードを実装できます。以下の例は、ユーザープロトコルに対して SSL オフロードを行う方法を示しています。この設定では、バックエンドサービスへのトラフィックは暗号化されません。
注意: この例では、証明書とキーのペアを追加または更新し、それを仮想サーバーにバインドすることに関する詳細は提供していません。詳細については、
SSL 証明書を参照してください。
次のコマンドは、mqtt.lua をトランスポート値「SSL」に含めて MQTT_SSL プロトコルを追加します。
import extension http://10.217.24.48/extensions/mqtt.lua mqtt_code
add user protocol MQTT_SSL -transport SSL -extension mqtt_code
次のコマンドは、ユーザー負荷分散仮想サーバーを追加し、それにバックエンドサービスをバインドします。
add service mqtt_svr1 10.217.24.48 USER_TCP 1501
add service mqtt_svr2 10.217.24.48 USER_TCP 1502
add lb vserver mqtt_lb USER_TCP –lbMethod ROUNDROBIN
bind lb vserver mqtt_lb mqtt_svr1
bind lb vserver mqtt_lb mqtt_svr2
次のコマンドは、新しく追加されたプロトコル MQTT_SSL 用のユーザー仮想サーバーを追加します。MQTT_SSLを使用すると、Citrix ADCアプライアンスでSSLオフロードを実行することになります。これは、MQTT_SSLがSSLトランスポートで設定されているためです。また、このコマンドは、前の手順で設定した負荷分散仮想サーバーに defaultlb を設定します。
add user vserver mqtt_vs MQTT_SSL 10.217.24.28 8765 -defaultLb mqtt_lb
SSL オフロードでは、SSL 機能を有効にして、認証キーをユーザー仮想サーバーにバインドする必要もあります。詳しくは、次のトピックを参照してください:
例:
enable ns feature SSL
add SSL certKey mqtt_svr_cert_key -cert server1.cert -key server1.key
bind ssl vserver mqtt_vs -certkeyName mqtt_svr_cert_key