<%=
out = []
-restrict_ssh = %w{lebrun logtest01 geo1 geo2 geo3 beethoven tchaikovsky schroeder heininen handel lotti dijkstra luchesi salieri schumann traetta unger rossini draghi jenkins}
+restricted_purposes = ['kvm host', 'central syslog server', 'puppet master', 'jumphost']
+restrict_ssh = %w{lebrun geo1 geo2 geo3 beethoven tchaikovsky schroeder draghi}
+
+if (scope.lookupvar('site::nodeinfo')['ldap'].has_key?('purpose')) then
+ scope.lookupvar('site::nodeinfo')['ldap']['purpose'].each do |purp|
+ if restricted_purposes.include?(purp) then
+ restrict_ssh << hostname
+ end
+ end
+end
ssh4allowed = []
ssh6allowed = []
if restrict_ssh.include?(hostname) then
- ssh4allowed << %w{$DSA_IPS $HOST_NAGIOS_V4 $HOST_DB_V4}
- ssh6allowed << %w{$DSA_V6_IPS $HOST_NAGIOS_V6 $HOST_DB_V6}
+ ssh4allowed << %w{$DSA_IPS $HOST_NAGIOS_V4 $HOST_MUNIN_V4 $HOST_DB_V4}
+ ssh6allowed << %w{$DSA_V6_IPS $HOST_NAGIOS_V6 $HOST_MUNIN_V6 $HOST_DB_V6}
end
if %w{lebrun schroeder}.include?(hostname) then
out << '@def $CARNET = ( 193.198.184.8/29 161.53.160.133 161.53.160.90 161.53.11.222 161.53.12.134 161.53.12.142 161.53.12.143 );'
ssh4allowed << '$HOST_DEBIAN_V4'
ssh6allowed << '$HOST_DEBIAN_V6'
end
-if %w{geo1 geo2 geo3}.include?(hostname) then
- ssh4allowed << '194.177.211.209' # orff - master
- ssh6allowed << '2001:648:2ffc:deb:213:72ff:fe69:e188' # orff - master
+if %w{unger}.include?(hostname) then
+ ssh4allowed << '$UNGER_SSH_ACCESS' # Ganneff
+ ssh6allowed << '$UNGER_SSH6_ACCESS' # Ganneff, but more address space
end
ssh4allowed.length == 0 and ssh4allowed << '0.0.0.0/0'
ssh6allowed.length == 0 and ssh6allowed << '::/0'
smtp4allowed = []
smtp6allowed = []
-if not nodeinfo['smarthost'].empty?
+if not scope.lookupvar('site::nodeinfo')['smarthost'].empty?
smtp4allowed << %w{$HOST_MAILRELAY_V4 $HOST_NAGIOS_V4}
smtp6allowed << %w{$HOST_MAILRELAY_V6 $HOST_NAGIOS_V6}
end