diff options
| author | Albert Martinez <a.martinez@mrgc.net> | 2018-06-03 10:19:00 +0200 | 
|---|---|---|
| committer | Wild Kat <wk@users.noreply.github.com> | 2018-06-03 10:19:00 +0200 | 
| commit | a5b0963ccd9f79d26399761dd488223cd05e7bae (patch) | |
| tree | b76a396168a8107e1623b74234e4005a89144f57 /lib/oxidized | |
| parent | 9fc212969cb559b39bf8a27d930f503c1264effe (diff) | |
Create openbsd.rb (#1356)
OpenBSD model implementation.
Diffstat (limited to 'lib/oxidized')
| -rw-r--r-- | lib/oxidized/model/openbsd.rb | 76 | 
1 files changed, 76 insertions, 0 deletions
| diff --git a/lib/oxidized/model/openbsd.rb b/lib/oxidized/model/openbsd.rb new file mode 100644 index 0000000..898e9e3 --- /dev/null +++ b/lib/oxidized/model/openbsd.rb @@ -0,0 +1,76 @@ +class Openbsd < Oxidized::Model +  # OpenBSD with custom promp, like user@hostname:~$ +  # you can edit the one that your user uses, with root would be /root/.profile using the next PS1 def +  # export PS1="\033[32m\u@\h\033[00m:\033[36m\w\033[00m$ " + +  prompt /^.+@.+\:.+\$/ +  comment '# ' + +  # Add a comment between files/configs +  def add_comment comment +    "\n+++++++++++++++++++++++++++++++++++++++++ #{comment} ++++++++++++++++++++++++++++++++++++++++++++++\n" +  end + +  def add_small_comment comment +    "\n=============== #{comment} ===============\n" +  end + +  cmd :all do |cfg| +    cfg.each_line.to_a[1..-2].join +  end + +  # Issue the show commands +  pre do +    cfg = add_comment('HOSTNAME FILE') +    cfg += cmd('cat /etc/myname') + +    cfg += add_comment('HOSTS FILE') +    cfg += cmd('cat /etc/hosts') + +    cfg += add_comment('INTERFACE FILES') +    cfg += cmd('tail -n +1 /etc/hostname.*') + +    cfg += add_comment('RESOLV.CONF FILE') +    cfg += cmd('cat /etc/resolv.conf') + +    cfg += add_comment('NTP.CONF FILE') +    cfg += cmd('cat /etc/ntp.conf') + +    cfg += add_comment('IP ROUTES PER ROUTING DOMAIN') +    cfg += add_small_comment('Routing Domain 0') +    cfg += cmd('route -T0 exec netstat -rn') +    cfg += add_small_comment('Routing Domain 1') +    cfg += cmd('route -T1 exec netstat -rn') +    cfg += add_small_comment('Routing Domain 2') +    cfg += cmd('route -T2 exec netstat -rn') +    cfg += add_small_comment('Routing Domain 3') +    cfg += cmd('route -T3 exec netstat -rn') +    cfg += add_small_comment('Routing Domain 4') +    cfg += cmd('route -T4 exec netstat -rn') +    cfg += add_small_comment('Routing Domain 5') +    cfg += cmd('route -T5 exec netstat -rn') + +    cfg += add_comment('SNMP FILE') +    cfg += cmd('cat /etc/snmpd.conf') + +    cfg += add_comment('PF FILE') +    cfg += cmd('cat /etc/pf.conf') + +    cfg += add_comment('MOTD FILE') +    cfg += cmd('cat /etc/motd') + +    cfg += add_comment('PASSWD FILE') +    cfg += cmd('cat /etc/passwd') + +    cfg += add_small_comment('END') +  end + +  cfg :telnet do +    username /^Username:/ +    password /^Password:/ +  end + +  cfg :telnet, :ssh do +    pre_logout 'exit' +  end +end | 
