はじめに
このドキュメントでは、Dockerコンテナ内でCisco Secure Client VPNを使用する方法について説明します。
前提条件
要件
次の項目に関する知識があることが推奨されます。
- Cisco Secure Clientパッケージは、ローカルデスクトップにダウンロードして、Dockerコンテナ内で使用できます。(クライアントパッケージをダウンロードするには、『Cisco Secure Client』のWebページを参照してください)。
- Cisco Secure Clientは、Dockerバージョン5.1.10以降と互換性があります。
- Dockerの導入では、Cisco Secure Client DEBまたはRPM CLIパッケージを使用する必要があります(パッケージはCLIのみの使用に最適化されており、Dockerの場合がこれに該当します)。
使用するコンポーネント
このドキュメントの情報は、Cisco Secure Clientバージョン5.1.10 RPMまたはDEB CLIパッケージに基づいています。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
ライセンス情報
ライセンスの詳細については、『Cisco Secure Client発注ガイド』を参照してください。
セットアップ
Dockerファイル
- Cisco Secure Clientが依存するパッケージのインストール。
- ロギングの有効化.
ENV CSC_LOGGING_OUTPUT=STDOUT
注意:有効にすると、ログは進行中の他のアクティビティとともにCLIにインラインで出力されます。
- ホストからDEB/RPMパッケージをコピーします。
- VPNエージェントを起動するには、エージェントを実行したまま再起動します。必要に応じて、entry.shという名前のファイルがDockerコンテナのエントリポイントとして追加されます。このスクリプトは、後で使用するためにコンテナにコピーする必要があります。
#!/bin/bash
wait_forever() {
while true; do
sleep infinity &
wait $!
done
}
start_service() {
if [ -f /opt/cisco/secureclient/bin/vpnagentd ]; then
echo "Starting VPN agent..."
while true; do
/opt/cisco/secureclient/bin/vpnagentd -execv_instance &
SERVICE_PID=$!
wait $SERVICE_PID
echo "VPN agent exited. Restarting..."
sleep 1
done
fi
}
start_service
wait_forever
- パッケージをインストールします。
- RHELの場合:
RUN cd /tmp && \
dnf install -y ./cisco-secure-client-cli.rpm && \
rm -rf /tmp/cisco-secure-client-cli.rpm
- Ubuntuの場合:
RUN cd /tmp && \
apt-get install -y ./cisco-secure-client-cli.deb && \
rm -rf /tmp/cisco-secure-client-cli.deb
- entry.shをエントリポイントとしてDockerコンテナに追加します。
ENTRYPOINT ["/entry.sh"]