ベンダー固有のカスタム設定の作成
場合によっては、デバイスのベンダーに基づいて構成(custom-config
)をカスタマイズする必要があります。
シェルスクリプトを使用して、ZTP 中にデバイスにカスタム設定を追加できます。これらのファイルは、TFTPディレクトリまたはURLでポイントするHTTPサーバ上にあります。
ztp.json ファイルを構成するときは、プラットフォーム固有セクションの custom-config フィールドに bash ファイル名を指定します。
junos_custom.sh
Juniper Junos OSおよびJunos OS Evolvedデバイスの構成をカスタマイズするには、ZTPプロセス中に実行されるbashスクリプトファイルである containers_data/tftp/junos_custom.sh
に構成を追加します。
デバイスシステムエージェントが自動的にインストールされる前に、Syslog、NTP、SNMP認証などのJunos設定コマンドを実行できます。
デュアルREセットアップのJunos OSおよびJunos OS Evolvedプラットフォームには、 set system commit synchronize
コマンドが必要です。この設定がないと、ZTP プロセスは失敗します。コマンドを junos_custom.sh
ファイルに追加することをお勧めします。
サンプル junos_custom.sh
ファイルを参照してください。
#!/bin/sh SOURCE_IP=$(cli -c "show conf interfaces em0.0" | grep address | sed 's/.*address \([0-9.]*\).*/\1/') # Syslog SYSLOG_SERVER="192.168.59.4" SYSLOG_PORT="514" # NTP NTP_SERVER="192.168.59.4" # SNMP SNMP_NAME="SAMPLE" SNMP_SERVER="192.168.59.3" # Syslog cli -c "configure; \ set system syslog host $SYSLOG_SERVER any notice ; \ set system syslog host $SYSLOG_SERVER authorization any ; \ set system syslog host $SYSLOG_SERVER port $SYSLOG_PORT ; \ set system syslog host $SYSLOG_SERVER routing-instance mgmt_junos ; \ commit and-quit" cli -c "configure; \ set system syslog file messages any notice ; \ set system syslog file messages authorization any ; \ commit and-quit" # NTP cli -c "configure; \ set system ntp server $NTP_SERVER routing-instance mgmt_junos ; \ set system ntp source-address $SOURCE_IP routing-instance mgmt_junos ; \ commit and-quit;" # SNMP cli -c "configure; \ set snmp name $SNMP_NAME; \ set snmp community public clients $SNMP_SERVER/32 ; \ set snmp community public routing-instance mgmt_junos ; \ set snmp routing-instance-access access-list mgmt_junos ; \ commit and-quit"
外部 AAA 認証( authentication-order
など)を設定した場合は、デバイス システム エージェント device-user
と device-user-password
を AAA システムに複製する必要があります。そうしないと、デバイスシステムエージェントが認証エラーを生成します。
eos_custom.sh
Arista EOS デバイスの構成をカスタマイズするには、ZTP プロセス中に実行される bash スクリプト ファイルである containers_data/tftp/eos_custom.sh
に構成を追加します。
EOS 設定コマンドを実行して、SSH ログイン バナー、またはデバイス システム エージェントが自動的にインストールされる前に設定する必要があるその他のシステム設定を設定できます。
サンプル eos_custom.sh
ファイルを参照してください。
#!/bin/sh FastCli -p 15 -c $'conf t\n service routing protocols model multi-agent\n hardware tcam\n system profile vxlan-routing\n banner login\n ######################################################## UNAUTHORIZED ACCESS TO THIS DEVICE IS PROHIBITED ########################################################\n EOF\n'
ZTPプロセス中に、EOSバナーのログインが「デバイスはゼロタッチプロビジョニングモードです...".デフォルトでは、ZTP スクリプトはこれを恒久的な設定にコピーします。
これを防ぐには、別のbanner login
を設定したり、no banner login
を設定したりするスクリプト(eos_custom.sh
など)を指すcustom-config
を設定する必要があります。
\n
の後には必ずスペースが必要です。
nxos_custom.sh(オンボックスエージェント)
Cisco NX-OS デバイスの設定をカスタマイズするには、ZTP プロセス中に実行される bash スクリプト ファイルである containers_data/tftp/nxos_custom.sh
に設定を追加します。
SSHログインバナーなどのシステム設定を設定するNX-OS設定コマンドや、デバイスシステムエージェントが自動的にインストールされる前に設定する必要があるその他のシステム設定を実行できます。
サンプル nxos_custom.sh
ファイルを参照してください。
copp profile strict
を追加するには、custom-config
ファイルを使用する必要があります。
#!/bin/sh /isan/bin/vsh -c "conf ; copp profile strict ; banner motd ~ ######################################################## BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER ######################################################## Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec gravida, arcu vitae tincidunt sagittis, ligula massa dignissim blah, eu sollicitudin nisl dui at massa. Aliquam erat volutpat. Vitae pellentesque elit at pulvinar volutpat. Etiam lacinia derp lacus, non pellentesque nunc venenatis rhoncus. ######################################################## ~"
nxos_custom.sh(オフボックスエージェント)
Apstra ZTP を使用してオフボックス エージェントで使用する Cisco NX-OS デバイスを準備する場合は、 custom-config
ファイルで次の NX-OS 設定コマンドを有効にする必要があります。
feature nxapi feature bash-shell feature scp-server feature evmed copp profile strict nxapi http port 80
次の nxos_custom.sh
を使用して、これらをバナーとともに追加できます。
#!/bin/sh /isan/bin/vsh -c "conf ; feature nxapi ; nxapi http port 443 ; feature bash-shell ; feature scp-server ; feature evmed ; copp profile strict ; banner motd ~ ######################################################## BANNER BANNER BANNER BANNER BANNER BANNER BANNER BANNER ######################################################## Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec gravida, arcu vitae tincidunt sagittis, ligula massa dignissim blah, eu sollicitudin nisl dui at massa. Aliquam erat volutpat. Vitae pellentesque elit at pulvinar volutpat. Etiam lacinia derp lacus, non pellentesque nunc venenatis rhoncus. ######################################################## ~"
sonic_custom.sh
エンタープライズ SONiC デバイスの構成をカスタマイズするには、ZTP プロセス中に実行される bash スクリプトファイルである containers_data/tftp/sonic_custom.sh
に構成を追加します。
デバイス システム エージェントが自動的にインストールされる前に、Radius 認証の設定などの EOS 設定コマンドを実行できます。
サンプル sonic_custom.sh
ファイルを参照してください。
#!/bin/bash sed -i s/"#Banner.*"/"Banner /etc/issue.net"/ /etc/ssh/sshd_config cat >& /etc/issue.net << EOF Provisioned by AOS Date: $(date) EOF service ssh restart