<%=
out = []
-restrict_ssh = %w{lebrun logtest01 geo1 geo2 geo3 beethoven tchaikovsky schroeder heininen handel lotti dijkstra luchesi salieri schumann traetta unger rossini draghi}
+restricted_purposes = {'kvm host', 'central syslog server', 'puppet master', 'jumphost'}
+restrict_ssh = %w{lebrun geo1 geo2 geo3 beethoven tchaikovsky schroeder rossini 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 = []
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