misaal
Goto Top

PfSense bash-script per Cronjob ausführen

Hallo

Aus irgend einen unerklärlichen Grund, verliert die pfSense gelegentlich die Internetverbindung.
Da hilft nur ein manueller reboot.
Um das Problem zu beheben, habe ich im Netz ein Script gefunden, dass bei nicht erreichen von "google.com die pfSense automatisch neu startet.
Das Paket cron habe ich installiert, sowie "pkg install bash"
Dazu habe ich ein paar Fragen:

- Kann die pfSense bash-scripte überhaupt ausführen? --> ok geht, hatte beim Script #!/bin/bash anstatt #!/bin/sh
- Wie kann ich prüfen ob das Script ausgeführt worden ist?
- Ich würde gern sehen wenn ein Neustart der pfSense mittels Script statt gefunden hat.


Mein System:
System_1
System_2

Hier mal das Script zur Info:
#!/bin/bash
#
# put -xv after bash to debug
#
HOSTS="google.com"  
COUNT=10

#debug
echo "HOSTS: " $HOSTS  
echo "COUNT: " $COUNT  
######
for myHost in $HOSTS
do
  counting=$(ping -c $COUNT $myHost | grep 'received' | awk -F',' '{ print $2 }' | awk '{ print $1 }')  

  #debug
  echo "counting: " $counting  
  ######
  if [ $counting > 2 ]; then
   echo "Ping OK"  

  else
   # network down
   # Save RRD data
   /etc/rc.backup_rrd.sh
   #Reboot
   echo "Reboot!"  
   reboot
fi
done

Content-Key: 392460

Url: https://administrator.de/contentid/392460

Printed on: April 25, 2024 at 15:04 o'clock

Mitglied: 137808
137808 Nov 12, 2018 updated at 11:56:42 (UTC)
Goto Top
pfSense default is :
/bin/tcsh
Bash shell is not part of pfSense (OpenBSD).
- Wie kann ich prüfen ob das Script ausgeführt worden ist?
In your syslog /var/log/...., or write to a status file.

- Ich würde gern sehen wenn ein Neustart der pfSense mittels Script statt gefunden hat.
write a status file or to the pfSense logs.
logger "message"
https://www.freebsd.org/cgi/man.cgi?logger(1)

Da hilft nur ein manueller reboot.
You better should resolve this issue!!.

Regards j.
Member: aqui
aqui Nov 12, 2018 updated at 11:51:09 (UTC)
Goto Top
Wäre es nicht viel sinnvoller den Grund des Verbindungsabbruchs zu klären..?!!
Welche Infrastruktur nutzt du denn für die WAN / Internet Anbindung ?
Medizinisch gesehen ist es so als ob du die Symptome behandelst aber nicht die Ursache. Wie auch in der Medizin ist das in der IT grundsätzlich die falsche Herangehensweise...aber egal.
Geht natürlich auch mit dem Script.
Nach einem Reboot müsstest du in den Log Dateien sehen können wann das Script ausgeführt wurde.
Das hängt aber ganz davon ab WIE die pfSense installiert wurde. Mit einem naobsd Image befindet sich das gesamte Filesystem auf einer RAM Disk um das Flash zu schonen. Dort sind nach einem Reboot logischerweise dann alle Dateien verloren.
Bei einer SSD oder m.SATA Installation sieht das anders aus. Es sei denn die pfSense initialisiert die Log Dateien neu nach einem Reboot dann sind die auch verloren.

Es macht für dich also in jedem Falle Sinn einen Syslog Server aufzusetzen in den die pfSense ihre Log Messages exportiert. Damit ist das dann alles nachvollziehbar auch nach einem Reboot egal welcher Installation.
Netzwerk Management Server mit Raspberry Pi
Als Winblows Knecht kannst du sowas wie das hier nutzen als Syslog:
https://www.kiwisyslog.com/free-tools/kiwi-free-syslog-server
https://mikrotik.com/archive --> Syslog Daemon
https://www.paessler.com/free_syslog_server?utm_source=google&utm_me ...

The last statement above is perfectly right: You better should resolve this issue!! Its definitely the right way to go ! NOT trying to fix the symtoms...
Member: Misaal
Misaal Nov 12, 2018 at 12:17:39 (UTC)
Goto Top
Wäre es nicht viel sinnvoller den Grund des Verbindungsabbruchs zu klären..?!!

Ja sicher, da hast du und justcode vollkommen recht, mir fehlen leider die Kenntnisse dafür.

Welche Infrastruktur nutzt du denn für die WAN / Internet Anbindung ?

Internet-->Modem (UPC Schweiz)--> WAN pfSense --> LAN pfSense --> Switch


Bei einer SSD oder m.SATA Installation sieht das anders aus. Es sei denn die pfSense initialisiert die Log Dateien neu nach einem Reboot dann sind die auch verloren.

Es wurde auf einer M.SATA installiert. Wo sehe ich, ob die Log-Dateien nach einem Reboot neu angelegt werden?

Es macht für dich also in jedem Falle Sinn einen Syslog Server aufzusetzen in den die pfSense ihre Log Messages exportiert. Damit ist das dann alles nachvollziehbar auch nach einem Reboot egal welcher Installation.
Netzwerk Management Server mit Raspberry Pi

Hab zu Hause eine Raspberry 2 stehen, werde mir den Syslog Server als Hausaufgabe aufschreiben.
Member: aqui
aqui Nov 16, 2018 at 18:38:17 (UTC)
Goto Top
Wo sehe ich, ob die Log-Dateien nach einem Reboot neu angelegt werden?
Nach dem Rebbot und /var/log nachsehen ob da alles nackig ist oder die alten Logs noch vorhanden sind face-wink