VyOS Advent Calendar 11日目の記事です。(本当は12日目だけど..)
VyOS 1.1.0で導入された二つのコマンドを紹介します。 リリースノートには載っているのですが、使ったことがなかったので使ってみました
- strip-private
- commands
blogに設定を載せる際あフォーラムで設定を投稿する際に、show configurationの結果を貼付けようとしたら、パスワードなど公開したくない情報が載って隠すの面倒だなと思っている方はstrip-privateを使ってみましょう
次のようにパイプでつなぐだけです。
show configuration | strip-private
出力例は次のようになります。(※ 標準のVyOSにはないコマンドが入っています。) ユーザ名や、IPアドレスなどを、「xx」に置き換えてくれます。
質問の際には、必要な箇所だけ修正してください。
interfaces {
ethernet eth0 {
address dhcp
duplex auto
hw-id XX:XX:XX:8f:10:55
smp_affinity auto
speed auto
vrrp {
vrrp-group 100 {
advertise-interval 1
description test
preempt true
virtual-address xxx.xxx.100.245/24
}
}
}
loopback lo {
}
}
service {
ssh {
port 22
}
}
system {
config-management {
commit-revisions 20
}
console {
device ttyS0 {
speed 9600
}
}
host-name xxxxxx
ipv6 {
}
login xxxxxx
user xxxxxx {
authentication {
encrypted-password xxxxxx
}
level admin
}
}
logrotate log3 {
compress true
interval hoge
path /a/b/c
path /c/d/e
rotate 1234
}
logrotate squid {
}
logrotate squid2 {
}
ntp {
server xxxxx.tld {
}
server xxxxx.tld {
}
server xxxxx.tld {
}
}
package {
auto-sync 1
repository community {
components main
distribution hydrogen
password xxxxxx
url http://packages.vyos.net/vyos
username xxxxxx
}
repository squeeze {
components "main contrib non-free"
distribution squeeze
password xxxxxx
url http://mirrors.kernel.org/debian
username xxxxxx
}
}
syslog {
global {
facility all {
level notice
}
facility protocols {
level debug
}
}
}
time-zone UTC
}
一度ファイルを保存してしまった。という場合でも大丈夫です。
show configuration > config
cat config | strip-private
上記と同じ出力が得られます。
show configurationの一部だけset xxxで再実行したい場合はcommandsが便利です。
先ほど保存した設定ファイルをcommandsコマンドに渡します。
cat config | commands
実行結果は次のようになります。(※ 設定を一部隠すためにstrip-privateを実行しています。)
set interfaces ethernet eth0 address 'dhcp'
set interfaces ethernet eth0 duplex 'auto'
set interfaces ethernet eth0 hw-id 'XX:XX:XX:8f:10:55'
set interfaces ethernet eth0 smp_affinity 'auto'
set interfaces ethernet eth0 speed 'auto'
set interfaces ethernet eth0 vrrp vrrp-group 100 advertise-interval '1'
set interfaces ethernet eth0 vrrp vrrp-group 100 description 'test'
set interfaces ethernet eth0 vrrp vrrp-group 100 preempt 'true'
set interfaces ethernet eth0 vrrp vrrp-group 100 virtual-address 'xxx.xxx.100.245/24'
set interfaces loopback 'lo'
set service ssh port '22'
set system config-management commit-revisions '20'
set system console device ttyS0 speed '9600'
set system host-name 'xxxxxx'
set system 'ipv6'
set system login 'xxxxxx'
set system user xxxxxx authentication encrypted-password 'xxxxxx'
set system user xxxxxx level 'admin'
set logrotate log3 compress 'true'
set logrotate log3 interval 'hoge'
set logrotate log3 path '/a/b/c'
set logrotate log3 path '/c/d/e'
set logrotate log3 rotate '1234'
set logrotate 'squid'
set logrotate 'squid2'
set ntp server 'xxxxx.tld'
set package auto-sync '1'
set package repository community components 'main'
set package repository community distribution 'hydrogen'
set package repository community password 'xxxxxx'
set package repository community url 'http://packages.vyos.net/vyos'
set package repository community username 'xxxxxx'
set package repository squeeze components 'main contrib non-free'
set package repository squeeze distribution 'squeeze'
set package repository squeeze password 'xxxxxx'
set package repository squeeze url 'http://mirrors.kernel.org/debian'
set package repository squeeze username 'xxxxxx'
set syslog global facility all level 'notice'
set syslog global facility protocols level 'debug'
set time-zone 'UTC'
なお設定を主力するだけなら、show configuration commandsというのもあります。
VyOSの質問をしたり設定をする時にご利用ください。