## ## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE. ## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git ## <%= nodeinfo = scope.lookupvar('deprecated::nodeinfo') out = [] restricted_purposes = ['kvm host', 'ganeti/kvm host', 'central syslog server', 'puppet master', 'jumphost', 'buildd', 'static-mirror', 'anycast mirror'] restrict_ssh = %w{tchaikovsky draghi adayevskaya static-master-grnet-01 static-master-ubc-01 geo1 geo2 geo3 denis} if (nodeinfo['ldap'].has_key?('purpose')) then nodeinfo['ldap']['purpose'].each do |purp| if restricted_purposes.include?(purp) then restrict_ssh << @hostname end end end ssh4allowed = [] ssh6allowed = [] should_restrict = restrict_ssh.include?(@hostname) if should_restrict then # draghi makes for a nice jumphost ssh4allowed << %w{$DSA_IPS $HOST_NAGIOS_V4 82.195.75.106} ssh6allowed << %w{$DSA_V6_IPS $HOST_NAGIOS_V6 2001:41b8:202:deb:1a1a:0:52c3:4b6a} if %w{draghi}.include?(@hostname) then ssh4allowed << '$HOST_DEBIAN_V4' ssh6allowed << '$HOST_DEBIAN_V6' end if %w{adayevskaya}.include?(@hostname) then out << '@def $MFL_LOCAL = ( 130.83.226.60 );' # Michael Fladerer ssh4allowed << '$MFL_LOCAL' ssh4allowed << %w{$HOST_DEBIAN_V4} ssh6allowed << %w{$HOST_DEBIAN_V6} end end ssh4allowed.length == 0 and ssh4allowed << '0.0.0.0/0' ssh6allowed.length == 0 and ssh6allowed << '::/0' out << "@def $SSH_SOURCES = ( $SSH_SOURCES #{ssh4allowed.join(' ')});" out << "@def $SSH_V6_SOURCES = ( $SSH_V6_SOURCES #{ssh6allowed.join(' ')});" out.join("\n") %>