検証環境
- NetEngine AR651W
- Version: V300R022C00SPC100
SSH アクセスにより機器を管理する
ここでは設定変更や状態確認等の管理をする目的で AR ルータに SSH アクセスできるようにするための設定方法を記載します。
VTY ユーザインターフェースの作成
AR ルータに対して SSH 接続する場合、VTY ユーザインターフェースという仮想インターフェースが使用されます。VTY ユーザインターフェース 1 つに付き 1 ユーザが SSH ログインできます。
◆user-interface maximum-vty
user-interface maximum-vty は、作成できる VTY ユーザインターフェースの最大数の設定です。よって、この設定によって機器に同時に SSH ログインできるユーザ数が決まります。
user-interface maximum-vty <0-15>
この設定のデフォルト値は 5 です。
◆user-interface vty
user-interface vty を作成するコマンドです。
user-interface vty <開始値> <終了値>
- 開始値は 0-15
- 終了値は [開始値+1]-15
user-interface maximum-vty
の設定値より大きい値は設定できない
この設定コマンドを実行すると、user-interface vty に移行します。
デフォルトでは以下のように 0 及び 1-4 の user-interface vty が設定されています。
user-interface vty 0
authentication-mode aaa
user privilege level 15
user-interface vty 1 4
VTY ユーザインターフェースの設定
user-interface vty コマンドを実行すると、user-interface vty 設定ビューに移行します。下記の設定は user-interface vty 設定ビューで行う設定です。
認証モードの設定
VTY ユーザインターフェースでは以下の 2 つの認証をサポートしています。
- AAA 認証
- ユーザとパスワードによる認証
- パスワード認証
- パスワードのみによる認証
authentication-mode {aaa|password}
- aaa → AAA 認証
- password → password 認証
ただし、SSH 接続で使用できる認証方式は AAA 認証のみです。従って、認証モードの設定では AAA 認証を設定してください。
設定例:
[Huawei-ui-vty0]authentication-mode aaa
インバウンドプロトコルの設定
対象の VTY ユーザインターフェースにてサポートするプロトコルの設定です。
protocol inbound {all|ssh|telnet}
- all → ssh と telnet の両方
- ssh → ssh のみサポート
- telnet → telnet のみサポート
SSH を許可する場合は all または ssh を設定します。
デフォルト値は all です。
ユーザレベルの設定
ユーザレベルは、アクセス権の制御を行う設定です。
ユーザレベルは 0-15 があり、対応するレベル以下のコマンドが実行可能です。
ユーザ レベル | コマンド レベル | 名前 | 説明 |
0 | 0 | Visit level | このレベルのコマンドには、ping コマンドや tracert コマンド などのネットワーク診断に使用されるコマンドや、 Telnet などのリモートアクセス コマンドが含まれます。 |
1 | 0,1 | Monitoring level | このレベルのコマンドは、表示コマンドなど、 システムのメンテナンスに使用されます。 ※一部の表示コマンドはこのレベルでは使用できません。 たとえば、display current-configuration コマンドと display Saved-configuration コマンドは、レベル 3 の管理コマンドです |
2 | 0,1,2 | Configuration level | このレベルのコマンドは、ルーティングや すべてのネットワーク層のコマンドなど、 ユーザーに直接提供されるネットワークサービスを 構成するために使用されます。 |
3-15 | 0,1,2,3 | Management level | このレベルのコマンドは、基本的なシステム操作を制御し、 ファイルシステム、FTP、TFTP ダウンロード、ユーザー管理、 コマンド レベル設定、障害診断用のデバッグ コマンドなどの サービスのサポートを提供するために使用されます。 |
user privilege level <0-15>
デフォルト値は 0 です。
細かい権限管理をしない限りは基本的には 15 と設定して全権限有りにすれば OK です。
[Huawei-ui-vty0]user privilege level 15
なお、ユーザレベルの設定はユーザに対しても行えます。後述の SSH 認証タイプがパスワード認証の場合はユーザに対するユーザレベルが適用され、RSA または ECC 認証の場合は VTY ユーザインターフェースで設定したユーザレベルが適用されます。
その他オプション設定
◆アイドルタイムアウトの設定
idle-timeout <0-35791[分]> [<0-59[秒]>]
- 分単位でアイドルタイムアウトを指定
- デフォルトは 5 分
ユーザ認証用のユーザの設定
SSH ログイン時の認証で使用するユーザを設定する必要があります。
設定手順は以下の通りです。
aaa
- AAA 設定ビューに移行します
local-user <ユーザ名> password cipher <パスワード>
- ユーザを作成します
local-user
privilege level <0-15><ユーザ名>
- 作成したユーザを指定して、ユーザレベルを指定します
- 基本的にはユーザレベル 15(全権限有り)を指定すれば OK です
local-user
<ユーザ名>
service-type ssh- 作成したユーザを指定して、ssh を許可します
- ssh 以外のサービスも許可したい場合は、ssh を含み複数のサービスをスペース区切りで指定します
設定例:
[Huawei]aaa
[Huawei-aaa]local-user sshuser password cipher sshpass123
Info: Add a new user.
[Huawei-aaa]local-user sshuser privilege level 15
[Huawei-aaa]local-user sshuser service-type ssh
[Huawei-aaa]
SSH 関連の設定
ユーザの SSH 認証タイプの設定
SSH ログインで使用するユーザ毎に以下コマンドで許可する SSH 認証タイプを設定します。
ssh user <ユーザ名> authentication-type <type>
- type は以下の何れかから指定
- all → すべての認証方式
- ecc → ECC(公開鍵、秘密鍵を使用)
- rsa → RSA(公開鍵、秘密鍵を使用)
password
→ 最もシンプルなパスワード認証はこれを指定- password-ecc → パスワードと ECC の組み合わせ
- password-rsa → パスワードと RSA の組み合わせ
- type は以下の何れかから指定
設定例:
[Huawei]ssh user admin authentication-type password
(RSA、ECC 認証の場合)公開鍵の設定
rsa peer-public-key <key-name>
またはecc peer-public-key <key-name>
- RSA or ECC public key ビューに移行します
public-key-code begin
を実行- public key 編集ビューに移行します
SSH クライアントの公開鍵を入力します
- 入力する公開鍵は、公開鍵形式に準拠した 16 進文字列である必要があります
public-key-code end
を実行peer-public-key end
を実行ssh user <ユーザ名> assign { rsa-key | ecc-key } <key-name>
- RSA または ECC 公開鍵を SSH ユーザーに割り当てます
SSH サーバ機能の有効化設定
SSH 接続を許可するインターフェースの設定
機器のどのインターフェースから SSH 接続を許可するかを設定します。
ssh server permit interface {IF名|all}
- IF名はスペース区切りで複数指定することが可能
- all → すべてのインターフェースを許可
デフォルトでは許可されているインターフェースはありません。
SSH サーバの有効化設定
SSH サーバを以下コマンドで有効化します。
stelnet server enable
デフォルトでは SSH サーバは無効になっています。
(オプション)SSH 待ち受けポート番号の変更
ssh server port <22,1025-55535>
デフォルトのポートは 22 です。
SSH 関係の確認コマンド
display ssh server status
- SSH サーバの設定情報を表示
[Huawei]display ssh server status
SSH version :2.0
SSH connection timeout :60 seconds
SSH server key generating interval :0 hours
SSH Authentication retries :3 times
SFTP Server :Disable
Stelnet server :Enable
Scp server :Disable
SSH server ciper :aes128-ctr aes192-ctr aes256-ctr
SSH server mac :hmac-sha2-256
SSH server key :diffie-hellman-group-exchange-sha1 diffie-hellman-group14-sha1 diffie-hellman-group14-sha256 diffie-hellman-group15-sha512
display tcp status
- TCP ポートの待受け状態を表示
[Huawei]display tcp status
TCPCB Tid/Soid Local Add:port Foreign Add:port VPNID State
e8b8ca00 8 /1 0.0.0.0:22 0.0.0.0:0 23553 Listening
e96cd5c8 52 /1 0.0.0.0:443 0.0.0.0:0 23553 Listening
display ssh user-information
- SSH ユーザの設定情報を表示
[Huawei]display ssh user-information
-------------------------------------------------------------------------------
Username Auth-type User-public-key-name
-------------------------------------------------------------------------------
admin password null
-------------------------------------------------------------------------------
display ssh server session
- 現在の SSH セッションの情報を表示
[Huawei]display ssh server session
--------------------------------------------------------------------
Conn Ver Encry State Auth-type Username
--------------------------------------------------------------------
VTY 0 2.0 AES256CTR run password admin
--------------------------------------------------------------------