Cisco ACI の APIC では sshpass が使える
以前に sshpass をインストールするには というメモを書きましたが、sshpass
を使うと ssh
のパスワードをワンライナーで記載することが出来ます。 鍵交換方式が利用出来るのであればベターですが、利用出来ない場合は代替手段になり得ます (但し、スクリプト中で使う場合はパスワードを平文で書く必要があるので、セキュリティリスクについてよく考慮する必要があります。 通常であれば検証環境のみの利用に限定する等、限定的な利用に留めることをお勧めします)。
Cisco ACI のコントローラである『APIC』は CentOS ベースですが、デフォルト状態で sshpass
がインストールされていました。
Linux としてみた APIC の OS バージョン
Cisco ACI 2.2(2i) 環境の APIC 上で確認した場合、CentOS 7.2.1511 と表示されました。
| apic1# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
|
sshpass のインストールパス
APIC 上で確認すると /bin/sshpass
にインストールされていることが分かります。
| apic1# which sshpass
/bin//sshpass
|
APIC 上から sshpass を利用してみる
APIC 上から sshpass
を利用してみます。
APIC から Leaf へログインしてみる
APIC から Leaf にログインしてみます。 sshpass
でパスワードを指定している為、対話的にパスワードを問われず、Leaf へ SSH ログイン出来ていることが分かります。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 | apic1# sshpass -p PASSWORD ssh admin@192.168.1.101
Warning: Permanently added '192.168.1.101' (RSA) to the list of known hosts.
Last login: Sun Jun 4 12:59:30 2017 from 10.0.0.1
Cisco Nexus Operating System (NX-OS) Software
TAC support: http://www.cisco.com/tac
Copyright (c) 2002-2017, Cisco Systems, Inc. All rights reserved.
The copyrights to certain works contained in this software are
owned by other third parties and used and distributed under
license. Certain components of this software are licensed under
the GNU General Public License (GPL) version 2.0 or the GNU
Lesser General Public License (LGPL) Version 2.1. A copy of each
such license is available at
http://www.opensource.org/licenses/gpl-2.0.php and
http://www.opensource.org/licenses/lgpl-2.1.php
leaf1#
|
APIC から Linux サーバへログインしてみる
APIC からファブリック外部の Linux サーバにも問題無く、sshpass
を使って SSH ログイン出来ます。
| apic1# sshpass -p password ssh root@192.168.1.199
Last login: Sun Jun 4 13:12:29 2017 from 192.168.1.1
root@CentOS7:~#
|