802.1Xは、リストデバイスを許可し、ネットワークへの不正アクセスを防止するための管理ツールです。このドキュメントでは、コマンドラインインターフェイス(CLI)を使用して、スイッチでMACベースの認証を設定する方法について説明します。
802.1X認証には、サプリカント(クライアント)、オーセンティケータ(スイッチなどのネットワークデバイス)、および認証サーバ(RADIUS)の3つの主要コンポーネントがあります。 Remote Authentication Dial-In User Service(RADIUS)は、認証、許可、アカウンティング(AAA)プロトコルを使用するアクセスサーバで、管理に役立つスタティックIPアドレスは192.168.1.100、オーセンティケータのスタティックIPアドレスは192.168.1.101です。
・ Sx350Xシリーズ
・ SG350XGシリーズ
・ Sx550Xシリーズ
・ SG550XGシリーズ
・ 2.4.0.94
ステップ1:RADIUSサーバになるスイッチにSSHで接続します。デフォルトのユーザ名とパスワードはcisco/ciscoです。新しいユーザ名またはパスワードを設定している場合は、クレデンシャルを入力します。
注: SSHまたはTelnet経由でSMBスイッチにアクセスする方法については、 here.
ステップ2:スイッチの特権EXECモードから、次のように入力してグローバルコンフィギュレーションモードに入ります。
RADIUS#configureステップ3:radius server enableコマンドを使用して、RADIUSサーバを有効にします。
RADIUS(config)#radius server enableステップ4:秘密キーを作成するには、グローバルコンフィギュレーションモードでradius server nas secret keyコマンドを使用します。パラメータは次のように定義されます。
・ key:特定のグループのデバイスとユーザ間の通信に使用する認証キーと暗号化キーを指定します。範囲は0 ~ 128文字です。
・ default:秘密キーを持たないNASとの通信に適用されるデフォルトの秘密キーを指定します。
・ ip-address:RADIUSクライアントホストのIPアドレスを指定します。IPアドレスには、IPv4、IPv6、またはIPv6zアドレスを指定できます。
RADIUSサーバNAS秘密キー キー {default|ip-address}この例では、キーとしてexampleを使用し、オーセンティケータのIPアドレスとして192.168.1.101を使用します。
RADIUS(config)#radius server nas secret key例192.168.1.101ステップ5:RADIUSサーバグループ設定モードに入り、グループが存在しない場合は、グローバルコンフィギュレーションモードでradius server groupコマンドを使用します。
RADIUSサーバグループ group-nameこの記事では、グループ名としてMAC802を使用します。
RADIUS(config-radius-server-group)#radius server group MAC802ステップ6:ユーザを作成するには、グローバルコンフィギュレーションモードでradius server userコマンドを使用します。パラメータは次のように定義されます。
・ user-name:ユーザ名を指定します。長さは1 ~ 32文字です。
・ group-name:ユーザグループ名を指定します。グループ名の長さは1 ~ 32文字です。
・ unencrypted-password:ユーザパスワードを指定します。長さは1 ~ 64文字です。
radiusサーバユーザユーザ名 user-name group group-name password unencrypted-passwordこの例では、イーサネットポートのMACアドレスをユーザ名として、MAC802をグループ名として、unencrypted-passwordをexampleと使用します。
RADIUS(config-radius-server-group)#radius server user username 54:EE:75:XX:XX group MAC802 password example注: MACアドレスのオクテットの一部がぼやけている。パスワードの例は、強力なパスワードではありません。このパスワードは例としてのみ使用されているため、より強力なパスワードを使用してください。また、このコマンドは図の中で長すぎるので、コマンドを自動的にラップすることに注意してください。
ステップ7:(オプション)現在のコンフィギュレーションセッションを終了し、特権EXECモードに戻るには、endコマンドを使用します。
RADIUS(config-radius-server-group)#endステップ8:(オプション)任意のファイルを送信元から宛先にコピーするには、特権EXECモードでcopyコマンドを使用します。この例では、実行コンフィギュレーションをstartup-configに保存します。
RADIUS#copy running-config startup-configステップ9:(オプション)startup-configファイルを上書きするかどうかを尋ねるメッセージが表示されます。はいのはY、いいえのはNと入力します。スタートアップ設定ファイルを上書きするには、Yと入力します。
ステップ1:オーセンティケータになるスイッチにSSHで接続します。デフォルトのユーザ名とパスワードはcisco/ciscoです。新しいユーザ名またはパスワードを設定している場合は、代わりにクレデンシャルを入力します。
注: SSHまたはTelnet経由でSMBスイッチにアクセスする方法については、 here.
ステップ2:スイッチの特権EXECモードから、次のように入力してグローバルコンフィギュレーションモードに入ります。
オーセンティケータステップ3:802.1Xをグローバルに有効にするには、グローバルコンフィギュレーションモードでdot1x system-auth-controlコマンドを使用します。
オーセンティケータ(config)#dot1x system-auth-controlステップ4:radius-server hostグローバルコンフィギュレーションモードコマンドを使用して、RADIUSサーバホストを設定します。パラメータは次のように定義されます。
・ ip-address:RADIUSサーバのホストIPアドレスを指定します。IPアドレスには、IPv4、IPv6、またはIPv6zアドレスを指定できます。
・ hostname:RADIUSサーバのホスト名を指定します。IPv4アドレスへの変換のみがサポートされます。長さは1 ~ 158文字で、ホスト名の各部分の最大ラベル長は63文字です。
・ auth-port auth-port-number:認証要求のポート番号を指定します。ポート番号が0に設定されている場合、ホストは認証に使用されません。範囲は0 ~ 65535です。
・ Acc-port acct-port-number:アカウンティング要求のポート番号。0に設定されている場合、ホストはアカウンティングに使用されません。指定しない場合、ポート番号のデフォルトは1813です。
・ timeout timeout :タイムアウト値を秒単位で指定します。範囲は1 ~ 30です。
・ retransmit retries:再試行の再送信の数を指定します。範囲は1 ~ 15です。
・ deadtime deadtime:トランザクション要求によってRADIUSサーバがスキップされる時間(分)を指定します。範囲は0 ~ 2000です。
・ key key-string:デバイスとRADIUSサーバ間のすべてのRADIUS通信の認証キーと暗号化キーを指定します。このキーは、RADIUSデーモンで使用される暗号化と一致する必要があります。空の文字列を指定するには、「」と入力します。長さは0 ~ 128文字です。このパラメータを省略すると、グローバルに設定されたRADIUSキーが使用されます。
・ key encrypted-key-string:key-stringと同じですが、キーは暗号化形式です。
・ priority priority:サーバが使用される順序を指定します。0は最も高い優先順位です。プライオリティの範囲は0 ~ 65535です。
・ usage {login|dot1.x|all}:RADIUSサーバの使用タイプを指定します。可能な値は次のとおりです。
o login:RADIUSサーバがユーザログインパラメータ認証に使用されることを指定します。
o dot1.x:RADIUSサーバが802.1xポート認証に使用されることを指定します。
o all:RADIUSサーバをユーザログイン認証および802.1xポート認証に使用することを指定します。
radius-server host {ip-address|hostname} [auth-port auth-port-number][acct-port acct-port-number][timeout timeout][retransmit retries][deadtime deadtime][key-string][priority][usage] {ログイン|dot1.x|all}]この例では、hostパラメータとkeyパラメータだけが使用されます。ここでは、IPアドレス192.168.1.100をRADIUSサーバのIPアドレスとして、exampleという単語をキーストリングとして使用します。
オーセンティケータ(config)#radius-server host 192.168.1.100 keyの例ステップ5:MACベースの認証では、サプリカントのユーザ名はサプリカントデバイスのMACアドレスに基づいています。次に、認証プロセスの一部として、スイッチからRADIUSサーバに送信されるこのMACベースのユーザ名の形式を定義します。次のフィールドは次のように定義されます。
・ mac-auth type:MAC認証タイプを選択します
o eap:スイッチ(RADIUSクライアント)とRADIUSサーバ間のトラフィックにEAPカプセル化されたRADIUSを使用します。RADIUSサーバは、MACベースのサプリカントを認証します。
o radius:MACベースのサプリカントを認証するスイッチ(RADIUSクライアント)とRADIUSサーバ間のトラフィックに対して、EAPカプセル化なしでRADIUSを使用します。
・ groupsize:ユーザ名として送信されるMACアドレスの区切り記号の間のASCII文字の数。オプションは、区切り記号の間の1、2、4、または12のASCII文字です。
・ separator:MACアドレスで定義された文字グループ間の区切り文字として使用される文字。区切り文字として、ハイフン、コロン、またはドットを使用できます。
・ case:ユーザ名を小文字または大文字で送信します。オプションは小文字または大文字です。
dot1x mac-auth mac-auth type username groupsize groupsizeセパレータの区切り文字のケース。この例では、mac認証タイプとしてeapを使用し、グループサイズ2、区切り文字としてコロンを使用し、ユーザ名を大文字で送信します。
オーセンティケータ(config)#dot1x mac-auth eap username groupsize 2 separator :大文字ステップ6:次のコマンドを使用して、ホストのMACアドレスの代わりにスイッチがMACベースの認証に使用するパスワードを定義します。パスワードとしてexampleという言葉を使用します。
Authenticator(config)#dot1x mac-auth passwordの例ステップ7:インターフェイスを設定するためにインターフェイス設定モードに入るには、interface Global Configuration modeコマンドを使用します。GigabitEthernet1/0/1はエンドホストが接続されているため、設定します。
注: RADIUSサーバに接続されているポートは設定しないでください。
Authenticator(config)#interface GigabitEthernet1/0/1注: 複数のポートを同時に設定する場合は、interface rangeコマンドを使用します。
rangeコマンドを使用してポート1 ~ 4を設定するには、次の例を参照してください。
オーセンティケータ(config)#interface range GigabitEthernet1/0/1-4ステップ8:IEEE802.1X認証ポートで単一のホスト(クライアント)または複数のホストを許可するには、インターフェイス設定モードでdot1x host-modeコマンドを使用します。パラメータは次のように定義されます。
・ multi-host:複数ホストモードを有効にします
o 許可されたクライアントが少なくとも1つ存在する場合、ポートは許可されます。
o ポートが不正で、ゲストVLANが有効になっている場合、タグなしトラフィックはゲストVLANに再マップされます。タグ付きトラフィックは、ゲストVLANまたは認証されていないVLANに属していない限り、ドロップされます。ゲストVLANがポートで有効になっていない場合、非認証VLANに属するタグ付きトラフィックだけがブリッジされます。
o ポートが承認されると、スタティックVLANメンバーシップポート設定に基づいて、ポートに接続されているすべてのホストからのタグなしトラフィックとタグ付きトラフィックがブリッジされます。
o 認証プロセス中に、RADIUSサーバによって割り当てられたVLANに、認可ポートからのタグなしトラフィックが再マップされるように指定できます。タグ付きトラフィックは、RADIUSが割り当てたVLANまたは認証されていないVLANに属していない限り、ドロップされます。ポートでのRADIUS VLAN割り当ては、[ポート認証]ページで設定されます。
・ single-host:単一ホストモードを有効にします
o 許可されたクライアントがある場合、ポートは許可されます。1つのポートで許可できるホストは1つだけです。
o ポートが不正で、ゲストVLANが有効になっている場合、タグなしトラフィックはゲストVLANに再マップされます。タグ付きトラフィックは、ゲストVLANまたは認証されていないVLANに属していない限り、ドロップされます。ゲストVLANがポートで有効になっていない場合、非認証VLANに属するタグ付きトラフィックだけがブリッジされます。
o ポートが承認されると、承認されたホストからのタグなしトラフィックおよびタグ付きトラフィックは、スタティックVLANメンバーシップポート設定に基づいてブリッジされます。他のホストからのトラフィックはドロップされます。
o ユーザは、認証プロセス中にRADIUSサーバによって割り当てられたVLANに、許可されたホストからのタグなしトラフィックが再マッピングされるように指定できます。タグ付きトラフィックは、RADIUSによって割り当てられたVLANまたは認証されていないVLANに属していない限り、ドロップされます。ポートでのRADIUS VLAN割り当ては、[ポート認証]ページで設定されます。
・ multi-sessions:マルチセッションモードを有効にします
o シングルホストモードとマルチホストモードとは異なり、マルチセッションモードのポートには認証ステータスはありません。このステータスは、ポートに接続された各クライアントに割り当てられます。
o 認証されていないVLANに属するタグ付きトラフィックは、ホストが許可されているかどうかにかかわらず、常にブリッジされます。
o 非認証VLANに属していない不正ホストからのタグ付きトラフィックおよびタグなしトラフィックは、VLANで定義および有効になっている場合はゲストVLANに再マップされ、ポートでゲストVLANが有効になっていない場合はドロップされます。
o 認証プロセス中に、RADIUSサーバによって割り当てられたVLANに、認可ポートからのタグなしトラフィックが再マップされるように指定できます。タグ付きトラフィックは、RADIUSが割り当てたVLANまたは認証されていないVLANに属していない限り、ドロップされます。ポートでのRADIUS VLAN割り当ては、[ポート認証]ページで設定します。
dot1x host-mode ホストモードこの例では、ホストモードをマルチセッションに設定します。
Authentication(config-if)#dot1x host-mode multi-sessionsステップ9:ポートに認証方式を設定するには、次のコマンドを使用してMACベースの認証を有効にします。
Authentication(config-if)#dot1x authentication macステップ10:デバイスでポートベースの認証と許可を有効にするには、port-controlコマンドを使用してポート制御値を設定します。管理ポートの承認状態をautoに選択します。これにより、デバイスでポートベースの認証と許可を有効にできます。インターフェイスは、デバイスとクライアント間の認証交換に基づいて、許可された状態または不正な状態の間を移動します。
Authentication(config-if)#dot1x port-control autoステップ11:(オプション)現在のコンフィギュレーションセッションを終了し、特権EXECモードに戻るには、endコマンドを使用します。
Authentication(config-if)#endステップ12:(オプション)任意のファイルをソースから宛先にコピーするには、特権EXECモードでcopyコマンドを使用します。この例では、実行コンフィギュレーションをstartup-configに保存します。
Authentication#copy running-config startup-configステップ13:(オプション)メッセージが表示され、startup-configファイルを上書きするかどうかを確認します。はいのはY、いいえのはNと入力します。スタートアップ設定ファイルを上書きするには、Yと入力します。
これで、CLIを使用してスイッチにMACベースの認証を設定できました。次の手順に従って、MACベースの認証が機能していることを確認します。
ステップ1:デバイスのアクティブな802.1X許可ユーザを表示するには、特権EXECモードでshow dot1x usersコマンドを使用します。
オーセンティケータ#show dot1x usersステップ2:802.1Xインターフェイスまたは指定されたインターフェイスステータスを表示するには、特権EXECモードでshow dot1xコマンドを使用します。
オーセンティケータ#show dot1x interface gigabitethernet1/0/1