Show guest IP in log?

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

      Show guest IP in log?

      Is there a quick way to show the IPs of entering/leaving guests in the admin log? Certain people are waiting until I leave the chat to come in and cause trouble, and I'd like their IP addresses [for .htaccess IP ban] but I can't get the IP if they don't register.
      Hey,
      this way is for all users, not only for guests.

      open MessagesLog.pm in Plugins/Logging:

      Search:

      Quellcode

      1. print LOG "$main->{runtime}{now}|$user|$room|$_->[2]\n";


      Replace:

      Quellcode

      1. print LOG "$ENV{REMOTE_ADDR}|$main->{runtime}{now}|$user|$room|$_->[2]\n";


      In the admin log you see before the name the ip adress. That is all :D

      Sorry for my bad english.
      Hi starlight,

      i tried this but logging will be stopped completely.

      Ich hatte das mal versucht, aber der Loggingvorgang wird dann komplett unterbrochen.

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „DangerLes“ ()

      stimmt, habs eben versucht. sowie die zeile geändert wird, wird auch nichts mehr protokolliert.
      allerdings weist eine abfrage mit $ENV{REMOTE_ADDR} die lücke auf, dass wenn ein proxyserver dahintersteckt, einige tausend mit derselben ip-adresse unterwegs sein können. ob aber der chat damit auch funzt, keine ahnung..

      warum die log dann stillsteht und ihren dienst verweigert, das weiss ich auch nicht
      Original von Joergoletto
      stimmt, habs eben versucht. sowie die zeile geändert wird, wird auch nichts mehr protokolliert.
      allerdings weist eine abfrage mit $ENV{REMOTE_ADDR} die lücke auf, dass wenn ein proxyserver dahintersteckt, einige tausend mit derselben ip-adresse unterwegs sein können. ob aber der chat damit auch funzt, keine ahnung..

      warum die log dann stillsteht und ihren dienst verweigert, das weiss ich auch nicht


      $user{ip} can be used everywhere. It does also include forwarded for check (proxy detection), called $user{forwardedfor}.

      So, the solution could be:

      Quellcode

      1. print LOG "$user->{ip}|$user->{forwardedfor}|$main->{runtime}{now}|$user|$room|$_->[2]\n";
      Fatal error occured: Can't use string ("") as a HASH ref while "strict refs" in use at ./Plugins/Logging/MessagesLog.pm line 28.


      This error message i get while trying to login after editing MessagesLog.pm at line 28 ...

      Quellcode

      1. print LOG "$user->{ip}|$user->{forwardedfor}|$main->{runtime}{now}|$user|$room|$_->[2]\n";
      Failed to load the file ./Plugins/Logging/MessagesLog.pm. Possible reasons:
      * The file doesn't exist
      * The file is incomplete
      * The program is not permitted to read the file

      Please contact the webmaster.

      Perl error message:
      Global symbol "%user" requires explicit package name at ./Plugins/Logging/MessagesLog.pm line 28. Global symbol "%user" requires explicit package name at ./Plugins/Logging/MessagesLog.pm line 28.
      there's no more error, but logging stopped completely

      Also jetzt ist der Login wieder ohne Fehlermeldung möglich, aber es wird wieder nichts mehr mitgeloggt.

      NACHTRAG:
      Ich habs jetzt mal mit

      Quellcode

      1. print LOG "$_->[0]->{ip}|$main->{runtime}{now}|$user|$room|$_->[2]\n";


      und

      print LOG "$_->[0]{ip}|$main->{runtime}{now}|$user|$room|$_->[2]\n";


      versucht, aber egal was man in diese Zeile einfügt, wird der Logging-Vorgang komplett gestoppt.

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „DangerLes“ ()