目次
なぜSSH待ち受けポート番号を変更する?
SSHサーバは、デフォルトではTCPポート22番で接続を待ち受けます。デフォルトのTCP22番ポートをそのまま利用していると、悪意を持つユーザが不正アクセスを試みようとするリスクが高くなります。もちろん、認証するので簡単には不正アクセスされることはありません。しかし、不正アクセスを試みられると利用可能なVTYラインが無駄に消費されてしまうことも考えられます。そこで、セキュリティ対策として、SSHの待ち受けポート番号をデフォルトの22番から変更します。
Cisco IOS SSH待ち受けポート番号の変更
Cisco IOSでSSH待ち受けポート番号を変更するための手順は次の通りです。
- 通常のSSHを受け付けるための設定を行う
- VTYラインをrotaryグループにグループ化する
- SSH待ち受けポート番号を指定してrotaryグループに関連付ける
- 変更したポート番号のみを許可するACLを適用する
通常のSSHを受け付けるための設定を行う
通常のTCPポート22番でSSHを待ち受ける設定を行います。そのための設定コマンドは以下の通りです。
(config)#ip domain-name <domain-name>
(config)#username <user> password <cisco>
(config)#crypto key generate rsa
(config)#line vty 0 4
(config-line)#transport input ssh
(config-line)#login local
<hostname> : ホスト名
<domain-name> : ドメイン名
<user> : 認証に利用するユーザ名
<password> : 認証に利用するユーザ名に対するパスワード
crypto key generate rsaコマンドを入力したあとは、生成する鍵のビット長を指定してください。
VTYラインをrotaryグループにグループ化する
rotaryグループによって、VTYラインをグループ化できます。SSHの待ち受けポート番号を受け付けるVTYラインをrotaryグループでグループ化します。ラインコンフィグレーションモードで次のコマンドを利用します。
(config-line)#rotary <group-number>
<group-number> : rotaryグループ番号
SSH待ち受けポート番号を指定してrotaryグループに関連付ける
SSHの待ち受けポート番号を指定してrotaryグループに関連付けます。グローバルコンフィグレーションモードで次のコマンドを利用します。
<port-number> : SSH待ち受けポート番号
<rotary-group-number> : 関連付けるrotaryグループ番号
指定したポート番号のSSHアクセスはrotaryグループに関連付けたVTYラインで受け付けることになります。
変更したポート番号のみを許可するACLを適用する
ここまでの設定だけでは、デフォルトのTCPポート22番でのSSHアクセスも可能です。VTYラインにACLを適用して変更したポート番号のSSHアクセスのみを受け付けるようにします。
(config)#line vty 0 4
(config-line)#access-class <ACL-num> in
<ACL-num> : 拡張ACL番号。1~199
<port-number> : 指定したSSH待ち受けポート番号
Cisco IOS SSH待ち受けポート番号変更の設定例
以下のネットワーク構成のR1で、SSH待ち受けポート番号を2021に変更します。
Step1:通常のSSHを受け付けるための設定を行う
R1で通常のSSHを受け付ける設定を行います。以下の表のパラメータを利用します。
ホスト名 | R1 |
ドメイン名 | n-study.com |
鍵のビット長 | 1024 |
認証用のユーザ名/パスワード | cisco/cisco |
R1
hostname R1 ip domain-name n-study.com ! username cisco password cisco ! crypto key generate rsa ! line vty 0 4 login local transport input ssh
crypto key generate rsaコマンドを入力したら、以下のような表示になります。鍵のビット長を指定します。
R1(config)#crypto key generate rsa The name for the keys will be: R1.n-study.com Choose the size of the key modulus in the range of 360 to 2048 for your General Purpose Keys. Choosing a key modulus greater than 512 may take a few minutes. How many bits in the modulus [512]: 1024 % Generating 1024 bit RSA keys, keys will be non-exportable...[OK]
Step2:VTYラインをrotaryグループにグループ化する
デフォルトのVTYライン0から4をrotaryグループ1にグループ化します。
R1
line vty 0 4 rotary 1
Step3:SSH待ち受けポート番号を指定してrotaryグループに関連付ける
R1のSSH待ち受けポート番号として2021を指定して、rotaryグループ1に関連付けます。
R1
ip ssh port 2021 rotary 1
Step4:変更したポート番号のみを許可するACLを適用する
TCPポート2021のみSSHアクセスができるように、VTYラインにACLを適用します。
R1
access-list 100 permit tcp any any eq 2021 ! line vty 0 4 access-class 100 in
Step5:R1へのSSHアクセスを確認する
R2からR1へのSSHアクセスを確認します。デフォルトのTCPポート22では、SSHでアクセスできません。TCPポート2021とするとR2からR1へSSHでログインできることがわかります。
R2
R2#ssh -l cisco 192.168.12.1 % Connection refused by remote host R2#ssh -l cisco -p 2021 192.168.12.1 Password: R1>
Ciscoのキホン
- Ciscoルータのメモリ領域とコンフィグレーションレジスタ
- Ciscoルータの起動シーケンス
- 設定のための準備
- Cisco機器の設定ファイル running-configとstartup-config
- Cisco機器の設定の流れ
- Cisco CLIの基礎知識 ~コマンドの種類とモード~
- Cisco機器のインタフェース
- Cisco CLIのヘルプと補完
- Cisco CLIの主なエラーメッセージ
- Cisco 設定コマンドの削除
- default interfaceコマンド ~インタフェースの設定を初期化~
- Cisco コマンドの一括入力
- doコマンド ~コンフィグレーションモードからEXECコマンドを実行~
- interface rangeコマンド ~複数インタフェースの一括設定~
- showコマンド表示のフィルタ ~見たい情報だけを適切に表示~
- Cisco機器の時刻設定
- Cisco IOS 名前解決の設定
- terminal lengthコマンド ~コマンド出力の表示行数の設定~
- debugコマンド ~リアルタイムの動作確認~
- CLIログイン時に自動的に特権EXECモードに移行する
- Cisco 設定ファイルの保存とバックアップ
- 設定ファイルのバージョン管理 ~archiveコマンド~
- IOSファイルシステムの操作
- Catalystスイッチの管理 ~スイッチにIPアドレスを設定する意味~
- VTYアクセス(Telnet/SSH)によるリモート管理
- Cisco IOS SSH待ち受けポート番号の変更
- terminal monitorコマンド ~Telnet/SSHのログイン先のログを表示~
- 多段階Telnetのセッション中断
- Cisco パスワードの最小文字数設定
- ログイン試行の制限 ~login block-forコマンド~
- Cisco 初期設定の例
- CDP ~つながっている機器はなに?~
- Ciscoルータ パスワードリカバリ
- Catalystスイッチのパスワードリカバリ