SEILのコマンドラインインタフェースでは、キーボードからコマンド文字列を入力してSEILに様々な命令を与えます。
ここでは基本的な入力規則について説明します。
SEILにログインしてコマンドプロンプト"# "または"> "が表示されると、SEILにコマンドを入力して設定や状態確認、通信テストなどができます。コマンドはキーボードから英数字で入力して[Enter] キーの入力で確定します。入力されたコマンドに誤りがなければ、SEILはそのコマンドを実行します。例えば、設定コマンドであれば動作中の設定内容を変更し、参照コマンドであれば標準出力(コンソール画面等)に結果を表示します。
SEILのコマンドラインインタフェースで入力可能なコマンドは大まかに、設定コマンド、参照コマンド、管理コマンド、の三つに分類できます。
※SEILで使用可能なコマンドの一覧についてはコマンドリファレンスをご覧ください。
SEILの動作に変更を加えるコマンドです。
コマンドに続いて動作に必要なキーワードやパラメータを与え、実行後はコンフィグとして残ります。
設定コマンドの多くは以下のような入力形式です。(コマンドごとに1行で記述します)
機能ごとのコマンドに対して操作内容と対象とする識別子を指定し、設定したい情報をキーワードとパラメータのペアで入力していきます。
コマンド 操作内容 設定対象 キーワード パラメータ キーワード パラメータ # ppp add SAMPLE ipcp enable identifier name@example.co.jp # filter add DEFAULT interface pppoe0 action block # httpd disable
上記"ppp"の例では、PPP接続の設定情報として"SAMPLE"という識別子を追加し、「ipcp = enable(有効)」「identifier(認証ID) = name@example.jp」という接続情報を指定しています。他にも必要なパラメータがあれば、キーワードとペアにし、続けて1行で記述します。コマンド実行時に、動作に必要なパラメータが与えられなかった場合、当該パラメータにはシステムの既定値(system-default)が設定されます。
※ 機能により上記の形式と異なる場合もあります。
設定コマンドは一部を除き、コマンド(機能)に対して「追加(add)」「変更(modify)」「削除(delete)」の操作が可能です。また、機能の動作状態を「有効(enable)」「無効(disable)」と切り替えが可能なものもあります。
追加/add
# filter add FILTER1 interface lan1 direction in action block # show config filter filter add FILTER1 interface lan1 direction in action block state disable logging on enable
lan1インタフェースからの入力をすべてブロックするフィルタを追加しています。"state disable"、"logging on"は設定時に指定していませんが、デフォルトとして設定されます。また、とくに指定しなければ、当該フィルタは設定と同時に有効(enable)になります。
変更/modify
# filter modify FILTER1 action pass logging off # show config filter filter add FILTER1 interface lan1 direction in action pass state disable logging off enable
識別子(FILTER1)を指定して、一部のパラメータのみ変更することができます。
但し、"FILTER1"→"FILTER2"といった識別子の変更はできません。また、Configとしては"add"が登録されます。
無効/disable
# filter disable FILTER1 # show config filter filter add FILTER1 interface lan1 direction in action pass state disable logging off disable
識別子を指定して機能を無効にすることができます。無効にしても設定自体は削除されません。
有効/enable
# filter enable all # show config filter filter add FILTER1 interface lan1 direction in action pass state disable logging off enable
個別の識別子を指定せず、"all"ですべてのフィルタについてenable/disableの操作をすることも可能です。
削除/delete
# filter delete FILTER1 # show config filter (削除されたので、何も無い状態の表示になる)
指定した識別子の設定を削除します。機能によってはenable/disableの切り替えのみで、削除することはできない設定もあります。
インタフェースの設定
# interface lan0 address 192.168.0.1/24
lan0インタフェースにIPアドレスを設定する例です。
静的経路情報の設定
# route add default 10.0.0.1
デフォルト経路を指定する場合の例です。
参照コマンドは"show"というコマンドのみ用意されています。"show"に続けて、参照したい内容を指定します。
参照コマンドの例
# show system システム情報をすべて参照する # show log メインメモリに記憶しているログをすべて参照する # show config 設定状態をすべて参照する
上記入力例では実行すると各分類の情報がすべて出力されますが、キーワードを追加入力して特定の項目のみ参照することもできます。
パラメータを指定した参照コマンドの例
# show system memory システム情報中のメインメモリ使用状況のみ参照する # show log level warning ログのレベルを指定し、warningのみ参照する # show config interface コンフィグからインタフェースの設定状態を参照する # show status route 経路情報を参照する # show status ike IKEセッションの状態を参照する
"system"で確認したSEILが"config"の設定内容を元に"status"の動作状態をつくり、経過・結果が"log"に記録されます。何らかのトラブルが発生した時はそれぞれの情報を"show"コマンドで参照し、正しく設定されているか、動作しているか、エラーが記録されないか、等を確認することが原因追究の手段となります。
管理コマンドの例
# save-to flashrom 設定をフラッシュメモリに保存する
# factory-config 設定を初期化する
# update firmware {ADDRESS} {ADDRESS}から最新版のファームウェアを読み込む
通信状態の確認のためにping,traceroute等が使用可能です
# ping 10.0.0.1
# traceroute6 fec0:1::1
トラブルシュート時に特定の機能の動作状態のみをリセットするには"clear"コマンドを使用します。
clearコマンドの例
# clear log メインメモリに記憶しているログを消去する # clear ike IKEのセッション情報を消去する # clear nat-session 現在のNATセッションを消去する clear all log?[y/N] と確認されるので、 [y] を入力すると実行します。
過去のコマンド行を表示させた後に [←] [→]キーでカーソルを移動させ、一部だけを変更して再度実行できるので、入力ミスのためエラーとなったコマンドを再入力する助けとなります。また、一部パラメータの違う設定行を何度も入力する場合や、参照コマンドを何度も実行するとき等に最低限の入力で済みます。
(ただし、ファームウェアのバージョンアップによるコマンドの追加により同じ省略形が使用できなくなる場合があります)
コマンドライン補完の例
# sh[TAB] と入力すると、 # show と補完されます # show con[TAB] と入力すると、 # show config と補完されます # sh con[Enter] と入力すると、 # show config[Enter] であるとして受け付けて、実行します (表示は"sh con"のままです)
※ [?]キーは特殊キーとして扱われるため、識別子など任意の文字列を入力可能な項目で、"?"を文字として使用することはできません。
入力候補表示の例
# s[?]
save-to show snmp sshd syslog
"s"に続いて [?] キーを押すと、"s"で始まるトップレベルコマンドが候補として表示されます
# httpd [?]
disable enable
コマンドの後にスペースを空けて [?] を押すと、入力可能なパラメータの候補が表示されます
# route[?]
route route6
文字列に続いて [?] を押すとコマンド候補が表示され
# route [?]
add delete dynamic modify
スペースを空けて [?] を押すと続けて入力可能なキーワードの候補が表示されます
コマンドを入力して [Enter] で確定した際に入力ミスがあった場合には、エラー箇所を ^ で示します。エラーメッセージとあわせて入力内容を確認し、修正してください。
エラー表示の例
# filter add ISP0 interface ppoe0 direction in action block[Enter]
^ ←エラー箇所を示します(正しくはpppoe0)
error: invalid interface name ←無効なインターフェイス名を指定したエラーメッセージです
入力中にエラー箇所がある場合はコマンドラインの入力補完が効かなくなり、[?] キーを入力するとエラー箇所と正しい候補や入力形式を表示します。
# interface lan0 add 192.1680..1/24[?]
^
<IP address/prefixlen>
"^ " の位置で、IPアドレスの入力方法が誤っていることが分かります。
オンラインマニュアルの参照コマンド
# help[Enter]
List of commands:
administrator obtain privileged access
application-gateway configure application gateway
arp configure ARP
authentication configure authentication realm
bridge configure bridge
bye exit shell
cbq configure CBQ
~省略~
# help ppp[Enter]
NAME:
ppp - configure ppp
SYNOPSIS:
ppp add <name>
ipcp {enable|disable}
ipv6cp {enable|disable}
[keepalive <sec>]
[ipcp-address {on|off}]
[ipcp-dns {on|off}]
~省略~