pfsense web gui login işlemlerini mail olarak bildirme.



  • Selamlar.
    pfsense üzerindeki "System>Advanced>Notifications" kısmındaki mail bildirimleri tek başına pek işlevsel değil.
    "Services>Service Watchdog" ile restart edilecek servisler için "Notify" seçilirse biraz işe yarıyor.
    Birde bash betik ile cron ile çalışan scriplerde mail bildirimler arzu edildiği gibi çalışıyor.

    Ama php kod bilmediğim için "index.php" sign in butonuna basınca bir türlü mail göndermeyi beceremedim.

    Yapmak istediğim "index.php" sign in butonuna her basıldığında "user" kısmında yazan kullanıcı adı ile başarılı giriş yapıldı, başarısız giriş yapıldı şeklide mail atabilsin.
    misal "17.03.2018 saat 17.01 de admin başarılı giriş yaptı" yada "17.03.2018 saat 17.01 de ahmet başarısız giriş denemesi yaptı" gibi mail atabilmesi için bana yol gösterebilir miziniz?

    Bunu yapabilirsem devamında logout içinde bildirim düşünüyorum.
    Tüm görüşler ve fikirler için şimdiden teşekkürler.



  • Kendimce bir şeyler denedim. Konsoldan zaten
    *printf "Mail mesaji.....\n\n$*Makine adi: hostname \n\n$Zaman: date "+%Y/%m/%d-%H:%M:%S"" | /usr/local/bin/mail.php -s="Mail konusu - Makine Adi: hostname"
    Şeklinde komut ile mesaj atabiliyordum bu arada tek tırnaklar buraya yazarken çıkmadı... (kırmızı yazılar aslında tek tırnak içinde)

    Web arayüzden giriş yapınca konsolda "php-fpm[378]: /index.php: Successful login for user 'admin'......." mesajını dosya içinde aratınca "/etc/inc/auth.inc" içine daldım.
    Bunun içinde " log_auth(sprintf(gettext("Successful login for userxxx '%1$s' from: %2$s"), $_POST['usernamefld'], get_user_remote_address() . get_user_remote_authsource()));" satırını buldum.

    Bu satırın hemen üzerine ilk baştaki konsoldan mail atılan kodu exec içinde yazdım.
    exec('printf "hostname uzerinde isimli kullanici Yonetim arayuzune girdi.\n\n$*Makine adi: hostname \n\n$*Zaman: date "+%Y/%m/%d-%H:%M:%S"" | /usr/local/bin/mail.php -s="Yonetim Arayuzune Giris Yapildi - Makine Adi: hostname" ');

    Bu sayede her başarılı girişi System>Advanced>Notifications altında tanımlı bilgilerle yollayabildim.

    Php içinden O.S. betiği çalıştırıyorum. O.S. betiği ile PFSENSE makine adı, lokal ve wan ipleri vs öğrenip buradan betik ile bu bilgileri mail olarak atabiliyorum.
    Html ve php bilgim olmadığı için başka yol yöntem bilmiyorum.

    Şimdi php içindeki değişkenleride bu exec koduna gömmek istiyorum, mesela giriş yapan kullanıcı adı değişkeni %1$s , giriş yapan kullanıcı cihaz ipsi %2$s , yada diğer $_POST['usernamefld'] , $_SESSION['Logged_In'] , $authcfg gibi değişkenleri O.S. değişkenleri ile beraber kullanarak nasıl mail atabilirim?


Log in to reply