vyatta のconfig をcommit時にscpでremote serverに保存する

save , system config-management commit-archive location でftpは出来るけど、scpすると失敗してfailedになる。

# save ftp://vyatta:vyattapass@192.168.0.1/config.boot
Saving configuration to 'ftp://vyatta:vyattapass@192.168.0.1/config.boot'...
######################################################################## 100.0%
######################################################################## 100.0%Done
# save scp://vyatta:vyattapass@192.168.0.1/config.boot
Saving configuration to 'scp://vyatta:vyattapass@192.168.0.1/config.boot'...

curl: (79) failed waiting for ACK
Error saving scp://vyatta:vyattapass@192.168.0.1/config.boot
# set system config-management commit-archive location scp://vyatta:vyattapass@192.168.0.1/home/vyatta/config/
# commit
Archiving config...
  scp://192.168.0.1/home/vyatta/config/  failed


curlerrorが出たのでdebugしてみるとscp接続先サーバのfingerprintが登録されてないのが原因のようなので、予め手動でknonw_hosts に登録すれば解決した。また、scp先のディレクトリ(この例だと/home/vyatta/config) も予め作成しておく必要がある。

$ ssh vyatta@192.168.0.1
The authenticity of host '192.168.0.1' can't be established.
RSA key fingerprint is "***********"
Are you sure you want to continue connecting (yes/no)? yes

これで再度commit に挑戦

$ configure
# set system config-management commit-archive location scp://vyatta:vyattapass@192.168.0.1/home/vyatta/config/
# commit
Archiving config...
  scp://192.168.0.1/home/vyatta/config/  OK