Hallo Till,
ich habe sophomorix-check inzwischen soweit angepasst, dass ich eine Datei habe, in der ich entsprechende IPs/Netze eintragen kann, die dann ignoriert werden. Hierzu habe ich allerdings eine Datei hardkodiert:
my $ignored_networks_file="/etc/linuxmuster/sophomorix/sophomorix-query.ignored_nets.txt";
my @ignored_networks=();
my $count=0;
open(IGNORED_NETWORKS,"$ignored_networks_file") ||
die "ERROR: $ignored_networks_file not found!";
while(<IGNORED_NETWORKS>){
$ignored_networks[$count++] = NetAddr::IP->new($_);
}
close(IGNORED_NETWORKS);
und weiter unten:
# ignore devices that are listed in ignore-list
my $net_ip = NetAddr::IP->new($ip);
my $ip_within_net = 0;
foreach my $network (@ignored_networks) {
if ($net_ip->within($network)) {
$ip_within_net = 1;
last;
}
}
if ($ip_within_net == 1) {
next;
}
Was ist denn der saubere Weg, den Zugriff auf derartige Config-Werte in sophomorix zu lösen? Ich habe versucht, ein Feld sophomorix.query.user.IGNORED_IPS in der Config anzulegen und die zu ignorierenden Netze von dort zu holen - nach dem ich selbiges in der school.conf angelegt habe, konnte ich es nicht über %sophomorix_config abholen. Gibt es dazu irgendwo eine Anleitung, wie man in Sophomorix neue Config-Felder eintragen kann? Configuration · linuxmuster/sophomorix4 Wiki · GitHub ist dahingehend leider nicht so aussagekräftig und in [school] fühlt sich der Eintrag eher hacky an.
Die präferierte IP ist ebenfalls eingebaut, ich teste das hoffentlich morgen im Laufe des Tages.
Ist es in Ordnung, dass mit NetAddr::IP eine zusätzliche Paketabhängigkeit dazu kommt?
Viele Grüße
Sebastian