今日の相互接続されたデジタル環境では、システム管理者やIT専門家は、リモートシステムにアクセスし、安全でないネットワークを介してファイルを転送するための安全な方法を必要としています。ssh プロトコルは、機密データを平文で送信する脆弱なレガシー・プロトコルに取って代わり、安全なリモート・アクセスのゴールド・スタンダードとして登場しました。この包括的なガイドでは、基本的な概念から高度な実装戦略まで、セキュアシェル技術について知っておくべきことをすべて解説します。
単一のリモート・サーバーを管理する場合でも、複雑なマルチシステム環境をオーケストレーションする場合でも、sshのセキュア・シェル機能を理解することは、効率的なリモート運用を可能にしながら堅牢なネットワーク・セキュリティを維持するために不可欠です。
SSH(セキュア・シェル)とは
Secure Shell (SSH)は、安全でないネットワーク上でクライアントとサーバシステム間の安全な通信を提供するために設計された暗号ネットワークプロトコルです。SSH は、リモートコンピュータとローカルコンピュータの間で送信されるすべてのデータを暗号化し、リモートログインセッションやファイル転送の機密性、完全性、および認証を保証します。
SSH プロトコルはクライアントサーバモデルで動作し、ssh クライアントは通常TCP ポート 22 で動作している ssh サーバへの接続を開始します。このアーキテクチャにより、リモートシステムへの安全なアクセスが可能になると同時に、 安全でないプロトコルを悩ませる盗聴、コネクションハイジャック、中間者攻撃から 保護されます。
SSH はTelnet や rlogin や FTP のような、ユーザ名やパスワードやデータを平文で 送るレガシーなプロトコルに代わる安全なプロトコルです。強力な暗号化と強固な認証方法を実装することで、SSH は事実上すべてのオペレーティングシステムで安全なリモート管理のバックボーンとなっています。
プロトコルの多様性は、単純なリモートシェルアクセスにとどまりません。SSH はSFTP(ssh file transfer protocol) やSCP のようなプロトコルによる安全なファイル転送を可能にし、他のネットワークサービス用の安全なトンネルを作り、ポート転送やグラフィカルアプリケーション用のX11 転送のような高度な機能をサポートします。
SSHの仕組み
SSH のセキュリティモデルは、リモート通信の包括的な保護を保証する、 洗練された三層のプロトコルアーキテクチャに依存しています。このアーキテクチャを理解することは、なぜ SSH が伝統的なリモートアクセスの方法と比較してこのような強固なセキュリティを提供するのかを説明するのに役立ちます。
セキュアシェルプロトコルは、トランスポート層、ユーザー認証層、および接続層を通してセキュリティを実装する。各層は特定の機能を果たすと同時に、連携して ssh クライアントとリモートホスト間の安全な通信チャネルを作成します。
SSH接続プロセス
ssh接続を確立する際、プロセスは明確に定義されたシーケンスに従い、クライアントとサーバーシステム間の暗号化されたプロキシ接続を作成する。
接続は、sshクライアントがTCPポート22でsshサーバに接続したとき に開始する。両システムは SSH プロトコルのバージョンとソフトウェア実装を指定する識別文字列を交換します。この最初のハンドシェイクによって互換性が保証され、安全な通信の基盤が確立されます。
次に、クライアントとサーバは暗号化アルゴリズム、鍵交換メカニズム、 メッセージ認証コードをネゴシエートする。このネゴシエーションにより、セッションを保護するための、 相互にサポートされる最強の暗号化方式が選択される。最近の ssh 実装では、一般的にAES (Advanced Encryption Standard)暗号、およびDiffie-HellmanやElliptic Curve のような安全な鍵交換プロトコルが使用されています。
その後、システムは鍵交換を行い、鍵そのものをネットワーク上に送信することなく、共有セッション暗号鍵を生成する。このプロセスは公開鍵暗号の原理を採用し、完全に信頼されていないネットワーク上でも安全なチャネルを作成する。
最後に、サーバは検証のためにクライアントにホスト鍵を提示する。クライアントは、この鍵をknown_hostsファイルと照合して、サーバの身元を確認し、中間者攻撃(man-in-the-middle attack)を防ぐ。ホスト認証が成功した後にのみ、システムはユーザ認証に進む。
認証方法
SSHは複数の認証方法をサポートしているため、組織はそれぞれのリスク許容度と運用要件に適したセキュリティ・ポリシーを導入することができる。
パスワード認証は、最も基本的な方法で、ユーザが従来のユーザ名とパスワードの組 み合わせを提供する。パスワード認証は実装が簡単な反面、ブルートフォース攻撃やクレデンシャルの盗難に脆弱であるため、高セキュリティ環境には適していない。
公開鍵認証は、暗号鍵ペアを利用することで、より強力なセキュリティを提供する。ユーザは、ローカルシステム上で秘匿される秘密鍵と、リモートサーバ上に保存される公開鍵からなるssh 鍵ペアを生成する。認証中、クライアントは秘密鍵を送信することなく、秘密鍵の所有 を証明するため、パスワード関連の脆弱性が排除される。
ホスト鍵の検証プロセスにより、サーバのなりすまし攻撃から保護されます。リモートシステムに初めて接続する際、ssh クライアントはサーバのホスト鍵指紋をknown_hosts ファイルに記録します。後続の接続では、提示されたホスト鍵をこの保存された指紋と比較することで、サーバの ID を検証します。
多要素認証は、 ssh キーと 時間ベースのワンタイムパスワードの両方を要求するなど、複数の検証 方法を組み合わせたものです。このアプローチは、最大限の保護を必要とする機密性の高いシステムに対して、徹底的な防御セキュリティを提供します。
SSHキー認証
SSH鍵は、パスワードをネットワーク経由で送信することなく、 リモート・システムを認証するための最も安全で便利な方法である。この鍵ベースの認証システムは、非対称暗号の原理を利用し、解読不可能な認証メカニズムを実現しています。
ssh 鍵ペアは、数学的に関連する 2 つのコンポーネントで構成される。ユーザのローカルコンピュータに秘匿される秘密鍵と、認証を必要とするあらゆる ssh サーバに自由に配布できる公開鍵である。これらの鍵の間の数学的な関係により、機密性の高い秘密を公開することなく、暗号学的に身元を証明することができます。
秘密鍵はユーザーのデジタル・アイデンティティとなり、適切なファイル・パーミッションと、理想的にはパスフレーズで保護されなければならない。漏洩した場合、攻撃者は対応する公開鍵を含むシステム上で、正当なユーザーになりすますことができる。 このため、システムのセキュリティを維持するためには、適切な鍵管理が重要になる。
公開鍵は、ターゲット・システム上のユーザの~/.ssh/authorized_keysファイルに保存され、サーバによる認証試行の検証を可能にする。公開鍵には機密情報が含まれないため、セキュリティ上の懸念なく、システム間で自由に コピーすることができます。
鍵生成には通常ssh-keygenコマンドを使用し、RSA、ECDSA、Ed25519 などの堅牢な アルゴリズムを使用して鍵ペアを作成する。最近の実装では、優れたセキュリティ特性とパフォーマンス特性から、 Ed25519 鍵を推奨している。
ssh-keygen -t ed25519 -C "[email protected]"
ssh鍵管理のベスト・プラクティスとしては、定期的な鍵のローテーション、異なるシス テムや目的に対する一意の鍵の使用、企業環境における自動化された鍵発見とライフ サイクル管理の実装などが挙げられる。鍵管理の不備は、大組織におけるセキュリティ・インシデントの主要な原因であると認識されており、従業員が退職した後も、鍵の紛失によってバックドア・アクセスが永続的に行われています。
一般的なSSHの使用例
セキュア・シェル・テクノロジーの多用途性により、現代のITインフラにおける多くのリモート・アクセスやファイル転送シナリオに不可欠なものとなっている。
リモート・シェル・アクセスは、最も基本的なSSHのユースケースであり、システム管理者がローカルで作業しているかのようにリモート・システム上でコマンドを実行することを可能にします。この機能は、日常的なメンテナンス・タスクから、分散したインフラストラクチャーにわたる複雑なトラブルシューティング手順まで、あらゆるものをサポートします。
SCP (Secure Copy Protocol)およびSFTP プロトコルを使用した安全なファイル転送は、安全でない FTP 転送に代わる暗号化された方法を提供します。これらのsshベースのファイル転送プロトコルは、自動化されたバックアップ手順やアプリケーション展開ワークフローをサポートしながら、データの機密性と完全性を保証します。
システム管理者は、ソフトウェアのインストール、設定の更新、ログの分析、およびパフォーマンスの監視を含むリモートシステム管理タスクのためにSSHに大きく依存しています。何百台、何千台ものリモートサーバーを中央から安全に管理する能力は、 SSHをスケーラブルなインフラ運用に不可欠なものにしています。
Ansible、Puppet、Chefのような構成管理ツールは、サーバーの構成とアプリケーションのデプロイを自動化するための主要な通信メカニズムとしてSSHを利用しています。この統合により、暗号化通信によるセキュリティを維持しながら、インフラストラクチャー・アズ・コードの実践が可能になる。
X11転送により、ユーザーはローカルにインターフェイスを表示しながら、リモートシステム上でグラフィカルアプリケーションを実行することができる。この機能は、GUIベースの管理ツールや、リモートサーバーにホストされている開発環境にアクセスする際に特に有用である。
SSHトンネリング機能は、このプロトコルを、暗号化が組み込まれていないサービスへ安全に接続するための多目的なネットワーキング・ツールに変えます。データベース管理者はデータベースサーバーに安全にアクセスするために頻繁にSSHトンネルを使用し、開発者はファイアウォールの背後にある開発環境に到達するためにトンネリングを使用します。
SSHと他のプロトコル
SSHと他のプロトコルとの比較を理解することは、SSHのセキュリティ上の利点と、より広いネットワークアーキテクチャの中での適切な使用例を強調します。
SSHとTelnetの比較
SSHとTelnetの比較は、SSHがレガシーなリモートアクセスプロトコルに取って代わ って広く採用される原動力となった、根本的なセキュリティの向上を示してい る。
Telnetは、ユーザー名やパスワードを含むすべてのデータを平文でネットワークに送信する。このため、Telnet通信はネットワークにアクセスできる人なら誰でも傍受可能であり、潜在的な攻撃者に機密性の高い認証情報やセッションデータをさらすことになる。 ネットワーク・パケット・キャプチャ・ツールは、Telnetのログイン認証情報やコマンド・シーケンスを簡単に明らかにすることができる。
対照的に、SSH は ssh クライアントと ssh サーバ間のすべてのトラフィックを強力な 暗号アルゴリズムを使って暗号化します。この暗号化によって盗聴を防ぎ、傍受されたトラフィックが攻撃者にとって有益なものでないことを保証します。
認証メカニズムもプロトコルによって大きく異なる。Telnetはもっぱらパスワード認証に依存しており、認証情報の盗難やブルートフォース攻撃に対して脆弱である。SSHは、パスワードの送信を完全に排除する強固な公開鍵認証を含む、 複数の認証方法をサポートしている。
最新のセキュリティ標準とコンプライアンス・フレームワークは、リモート・アクセスに暗号化通信を普遍的に要求しており、本番環境でのTelnetの使用を事実上禁止している。 Telnetは、孤立したネットワークセグメントやレガシーシステムではまだ登場するかもしれないが、SSHは、すべての深刻なリモートアクセス要件の標準となっている。
SSHとSSL/TLSの比較
SSHとSSL/TLSは暗号化と認証を提供するが、ネットワーク・セキュリティーにおける役割は異なる。
SSL/TLS(Secure Sockets Layer/Transport Layer Security)は、主にウェブ通信と、 HTTPS、SMTPS、FTPSなどの アプリケーションレベルのプロトコルを保護します。これらのプロトコルは、ウェブ・ブラウザーとサーバー間、または電子メール・クライアントとサーバー間の転送中のデータを保護することに重点を置いています。
SSH はリモートシェルアクセス、安全なファイル転送、他のネットワークサービスのための安全なトンネルの作成に特化しています。ssh プロトコルは、リクエストとレスポンスのウェブ通信ではなく、対話的なコマンド実行や大量のデータ転送に最適化された セッションベースの暗号化を提供します。
認証アプローチもプロトコルによって異なる。SSL/TLSはサーバ認証に認証局とX.509証明書を使うのに対し、SSHはホスト鍵と直接鍵認証を使う。SSL/TLSのユーザー認証は通常アプリケーション層で行われますが、 SSHはユーザー認証をプロトコルの機能として扱います。
どちらのプロトコルも強力な暗号化を採用しているが、その統合パターンは 大きく異なる。SSL/TLSは既存のアプリケーションと透過的に統合できますが、SSHはそのプロトコル用に設計された特定のsshクライアントとサーバーを必要とします。
一般的なSSH実装
SSHのエコシステムには、さまざまなオペレーティングシステムやユースケース用に設計された、数多くのクライアントとサーバーの実装が含まれており、OpenSSHは最も広く採用されているソリューションとしてリードしています。
OpenSSH は、 Linux ディストリビューション、macOS、BSD 変種を含むUnix 系オペレーティングシステム全体で、事実上の標準 SSH 実装を代表するものです。OpenBSDプロジェクトによって開発されたOpenSSHは、クライアントとサーバーの両方の機能を提供し、豊富な設定オプションと強力なセキュリティデフォルトを備えています。オープンソースであるため、徹底したセキュリティ監査と迅速な脆弱性パッチ適用が可能です。
PuTTYはWindows環境で最も人気のあるSSHクライアントとして、SSH接続を管理するためのグラフィカルなインターフェイスを提供し、様々な認証方法をサポートしています。その古さにもかかわらず、PuTTYは活発にメンテナンスされており、WindowsユーザがUnix/Linuxシステムにアクセスするために必要不可欠な機能を提供しています。
Tectia SSHや Bitviseのような商用sshソフトウェア・ソリューションは、鍵の集中管理、高度なコンプライアンス・レポート、専任のテクニカル・サポートのような企業向け機能を提供している。これらのソリューションは、商用グレードのサポートと特化したセキュリティ機能を必要とする組織を対象としている。
TermiusやMobaXtermのような最新のクロスプラットフォームクライアントは、接続の同期、セッションの記録、統合されたファイル転送機能などの機能により、複数のオペレーティングシステム間で統一されたsshアクセスを提供します。これらのツールは、多様なインフラ環境を管理するユーザーにとって特に魅力的です。
モバイルsshクライアントは、スマートフォンやタブレットからのセキュアなリモートアクセスを可能にし、緊急時のシステム管理や監視に不可欠です。人気のあるモバイル実装には、Android用のConnectBotや、iOSとAndroidの両プラットフォーム用のTermiusがあります。
プラットフォームの可用性は実装によって異なるが、ssh機能は事実上すべての最新オペレーティングシステムに存在する。この普遍的な可用性により、採用されている特定の技術スタックに関係なく、安全なリモートアクセスが可能であることが保証される。
必須SSHコマンドと使い方
基本的なsshコマンドをマスターすることで、多様なインフラ環境における効率的で安全なリモート・システム管理が可能になります。
基本的な ssh コマンド構文はssh user@hostname のパターンに従っており、指定された ユーザ名を使用して、指定されたリモートホストへの接続を開始します。追加オプションは、接続の動作、認証方法、およびセッションの特性を変更します。
ssh [email protected]
ssh-keygen を使用した鍵生成は、安全な認証に不可欠な暗号鍵ペアを作成します。このコマンドはさまざまな鍵の種類とサイズに対応しており、Ed25519 鍵は セキュリ ティとパフォーマンスに優れているため、新規導入に推奨されています。
ssh-keygen -t ed25519 -f ~/.ssh/id_ed25519_server1
ssh-copy-id ユーティリティは、ローカルの公開鍵をリモートシステムのauthorized_keysファイルに自動的にコピーすることで、公開鍵の導入を簡素化します。このコマンドは、複数のシステム間で鍵ベースの認証を確立するプロセスを合理化します。
ssh-copy-id -i ~/.ssh/id_ed25519_server1.pub [email protected]
単一コマンド実行により、対話型シェル・セッションを確立することなく、リモート・システム上で特定のコマンドを実行できる。この機能は、自動化スクリプトや監視システムにとって非常に貴重である。
ssh [email protected] "df -h /var/log"
ssh エージェントは、秘密鍵の安全な保管と管理を提供するため、複数の ssh セッションでパスフレーズを繰り返し入力する必要がなくなります。エージェント転送は、セキュリティを維持しながら、この利便性をマルチホップ接続に拡張します。
カスタムポート接続は、非標準ポートでsshサーバーを実行しているシステムに対応するもので、自動化された攻撃の試みを減らすための基本的なセキュリティ対策として採用されることが多い。
ssh -p 2222 [email protected]
SSHのセキュリティと設定
強固なSSHコンフィギュレーションとセキュリティ・プラクティスを導入することで、運用効率を維持しながら、一般的な攻撃ベクトルから保護することができます。
サーバサイドのセキュリティ強化は、アクセスを制限し、脆弱な機能を無効にし、 徹底した防御を実装することに重点を置く。主な堅牢化対策としては、パスワード認証を無効にして 鍵ベースの認証を優先する、SSH による root ログインを防ぐ、AllowUsersディレクティブやAllowGroupsディレクティブによってユーザーアクセスを制限する、などがあります。
# /etc/ssh/sshd_config
PasswordAuthentication no
PermitRootLogin no
AllowUsers admin developer
Port 2222
デフォルトのsshポートを22から別の値に変更することで、自動スキャンやブルートフォース攻撃への露出を減らすことができる。 適切な認証セキュリティの代わりにはならないが、ポートの変更はログのノイズやカジュアルな攻撃の試みを大幅に減少させる。
~/.ssh/configファイルによるクライアント側の構成は、ホスト固有の設定、 鍵ファイル、および接続オプションを定義することで、接続管理を合理化します。このアプローチは、複数のシステム間で一貫した設定を保証することで、セキュリティと使いやすさの両方を向上させます。
# ~/.ssh/config
Host production-server
HostName prod.example.com
User admin
IdentityFile ~/.ssh/id_ed25519_prod
Port 2222
一般的な ssh セキュリティの脆弱性には、弱いホスト鍵検証、不十分な鍵管理慣行、および誤った サーバー設定が含まれる。定期的なセキュリティ監査によって、適切な設定を検証し、 孤立した鍵を特定し、組織のセキュリティポリシーの遵守を確認する必要がある。
接続タイムアウトの設定により、放置されたセッションがリソースを消費し、攻撃ベクトルとなる可能性を防ぎます。適切なClientAliveIntervalと ClientAliveCountMaxの値を設定することで、正当な使用パターンに対応しながらセキュリティを維持することができます。
SSHトンネリングとポートフォワーディング
SSHのトンネリング機能は、基本的なリモートアクセスを超えてその有用性を拡張し、ネイティブな暗号化がないサービスやネットワーク制限の背後に存在するサービスへの安全な接続を可能にします。
ポート転送は、ローカルシステムとリモートシステム間のトラフィックを暗号化する安全なトンネルを作成し、sshのセキュリティ保証を他のネットワークプロトコルに効果的に拡張します。この機能は、データベース、ウェブアプリケーション、およびその他のサービスに、信頼されていないネットワークを介して安全にアクセスする場合に特に有用です。
ポート転送の種類
ローカルポート転送(-Lオプション)は、ローカルポートからSSHトンネルを経由してリモートネットワーク上のサービスに接続をリダイレクトする。このアプローチは、宛先へのすべてのトラフィックを暗号化するローカルエンドポイントを作成することで、リモートサービスへの安全なアクセスを可能にします。
ssh -L 8080:webserver:80 [email protected]
このコマンドは、ローカルポート8080への接続がSSHセッションを通してjumphost.example.com経由でウェブサーバーのポート80に転送されるトンネルを作成します。
リモートポート転送(-R オプション) は、リモートシステム上にリスナーを作成し、 ssh トンネルを介して接続を転送することで、ローカルサービスをリモートネットワークに公開します。この手法により、ネットワークに直接接続することなく、ローカルシステム上で実行されているサービスへの外部アクセスが可能になる。
ssh -R 9000:localhost:3000 [email protected]
動的ポート転送(-D オプション) はSOCKS プロキシを作成し、任意の ネットワークトラフィックを ssh トンネル経由でルーティングできるようにします。この方法は、SOCKSプロキシ設定をサポートするアプリケーションに対して、効果的にVPNのような接続を作成する。
ssh -D 1080 [email protected]
アプリケーションは、localhost:1080をSOCKSプロキシとして使用し、安全なsshトンネルを経由してトラフィックをルーティングするように設定できます。
高度なトンネリングシナリオでは、複数の転送タイプを組み合わせて複雑なセキュアネットワークパスを作成し、ssh通信セキュリティによるエンドツーエンドの暗号化を可能にすることがよくあります。
SSHの歴史と発展
セキュア・シェル・テクノロジーの進化は、ネットワーク・セキュリティに対する意識の広範な進展と、サイバー空間における攻撃者と防御者の間の持続的な軍拡競争を反映している。
Tatu Ylönenは、1995年にヘルシンキ工科大学で、大学のネットワークインフラを標的にした パスワードスニッフィング攻撃に対応して、オリジナルのSSHプロトコルを作った。ネットワーク盗聴ツールの高度化により、Telnetやrloginのような従来のリモートアクセスプロトコルは、クレデンシャル盗難に対して危険なほど脆弱になっていました。
最初のプロトコルバージョンであるSSH-1は、暗号化されたリモートアクセスの 重要な必要性を認識する組織によって、すぐに広く採用されるようになりました。しかし、セキュリティ研究者たちはやがて SSH-1 の暗号の弱点を発見し、プロトコルの完全な再設計が必要になりました。
SSH-2の開発は、改良された暗号アルゴリズム、よりよい鍵交換メカニズム、 より堅牢なメッセージ認証によって、これらのセキュリティ上の懸念に対処しました。SSH-2 は標準プロトコルのバージョンとなり、最近のすべての ssh 実装の基礎となっています。
OpenBSDプロジェクトは1999年にOpenSSHの開発を開始し、 ライセンスの制限なしにオペレーティングシステムのディストリビューションに含めることができるフリーでオープンソースの実装を作りました。この開発は、SSHがUnixライクなシステム全体に 普遍的に採用されるために非常に重要であることを証明しました。
Internet Engineering Task Force (IETF)はRFC ドキュメント 4251-4254 を通して SSH-2 を標準化し、異なるベンダーやプラットフォーム間で相互運用可能な実装を可能にする正式なプロトコル仕様を提供しました。この標準化により、異なるソースからの ssh クライアントと ssh サーバが確実に通信できるようになりました。
最近のSSHの開発は、耐量子暗号アルゴリズムの実装、高スループットアプリケーションのための性能向上、現代のID管理システムとの統合に焦点を当てています。プロトコルの基本的なアーキテクチャは健全なままであり、新たなセキュリティ上の課題に対処するための進化的な改良が必要なだけです。
SSHの広範な採用は、リモート・システム管理の慣行を根本的に変革し、現代のインターネット・サービスのバックボーンを形成する分散インフラストラクチャの安全な管理を可能にしました。今日のクラウド・コンピューティング・プラットフォーム、DevOpsの実践、自動化されたインフラ管理は、SSHセキュア・シェル・テクノロジーが提供するセキュリティ基盤なしには不可能でしょう。
統計的な分析によると、95%以上の企業の Unix と Linux インフラストラクチャがリモート管理のために SSH に依存しており、現存するセキュリティプロトコルの中で最も普遍的に展開されているもののひとつです。このユビキタス性はSSHの技術的な卓越性と、相互接続された世界での安全な運用のための重要性の両方を反映しています。
SSHは、後方互換性と運用の信頼性を維持しながら、新たな課題に対応するために進化し続けている。 リモートワークがますます普及し、サイバー脅威がより巧妙になるにつれ、sshセキュア・シェルは、包括的なネットワーク・セキュリティ戦略にとって不可欠な要素であり続けている。
結論
SSH は、堅牢な暗号化、柔軟な認証オプション、およびネットワークベースの攻撃から保護する多目的トンネリング機能を提供することにより、安全なリモートアクセスに革命をもたらしました。基本的なリモートシェルアクセスから複雑なポート転送シナリオまで、ssh プロトコルは最新の IT インフラにおける安全なシステム管理とファイル転送操作の基盤として機能します。
Telnetのような脆弱なプロトコルからセキュアシェルの包括的なセキュリティモデルへの進化は、リモート通信に適切な暗号保護を実装することの重要性を示しています。鍵ベースの認証、適切なコンフィギュレーション管理、定期的なセキュリティ監査など 、SSHのベストプラクティスを採用する組織は、効率的なリモートオペレーションを可能にすると同時に、全体的なセキュリティ体制を大幅に強化します。
サイバー脅威が進化し続け、リモートアクセスの要件が拡大する中、SSHはリモートシステムへの安全で信頼性の高い接続を維持するために不可欠なツールであり続けています。 SSHを正しく実装するには、その技術的な基礎、セキュリティの意味、そして今日の分散コンピューティング環境におけるセキュリティと生産性の両方を最大にするための運用のベストプラクティスを理解する必要があります。