GNU/Linux >> Znalost Linux >  >> Linux

Jak zjistit, kdy byl naposledy použit e-mail?

Na svém serveru mám několik e-mailů, které používají někteří lidé.

Některé byly vytvořeny před lety a mám podezření, že se již nepoužívají.

Přes ftp vidím složky

.Drafts
.Junk
.Sent
.spam
.Trash
cur
new
tmp

a soubory

dovecot-acl-list
dovecot-uidvalidity.53836d02
dovecot-uidvalidity
dovecot-keywords
subscriptions
courierimapsubscribed
courierimapacl
dovecot-quota
maildirsize
courierimapuiddb
dovecot.index.thread
dovecot.mailbox.log
dovecot.list.index
dovecot.index
dovecot-uidlist
dovecot.list.index.log
dovecot.index.log
dovecot.index.cache

je Date Modified některého z těchto souborů dobrým indikátorem toho, kdy byl e-mail naposledy použit? Tím použitým myslím alespoň číst.

Přijatá odpověď:

Nejprve nějaké pozadí:vaše poštovní schránky jsou ve formátu Maildir. Poštovní schránky Maildir mají tři podadresáře tmp , new a cur . Z nich tmp se používá pouze pro doručení, new obsahuje nové zprávy a cur číst zprávy. Jednou doručené zprávy se skládají z neměnných souborů v new a cur . Změna stavu zprávy z „nové“ na „přečtená“ v podstatě znamená přesunutí odpovídajícího souboru z new do cur . Různé další příznaky pro jednotlivé zprávy (O , F , atd.) jsou zaznamenány se speciálními znaky připojenými k názvům souborů. Složky IMAP jsou pouze podsložky Maildir .Sent , .Draft atd. ve složce doručené pošty Maildir.

Za předpokladu, že se vaše zprávy nacházejí v Maildrs /var/mail/<user>/ , to vede k následující heuristice:

for mb in /var/mail/*; do
    find "$mb" -type d -name -cur -mtime -365 \
        -exec printf 'user %s is still active\n' $(basename "$mb") \; -quit
done

To většinou funguje, ale může to produkovat falešně pozitivní i falešně negativní výsledky. Falešně pozitivní, protože server IMAP vás může trollovat a aktualizovat mtime z cur složky při indexování poštovních schránek nebo při provádění jakýchkoli jiných pravidelných úkolů. Falešná negativa, protože uživatel může smazat složku s nejnovějšími zprávami.

Mnohem bezpečnější přístup by bylo analyzovat protokoly, abyste viděli, kdy se vaši uživatelé naposledy přihlásili do SquirrelMail (za předpokladu, že uvedená veverka je nakonfigurována tak, aby takové protokoly uchovávala).


Linux
  1. Jak používat Linux Touch Command + příklady

  2. Jak najít hashovací algoritmus používaný k hashování hesel?

  3. Jak získat přístup k poslednímu argumentu komentovaného příkazu?

  1. Kdy jste naposledy použili Windows?

  2. Linux:Jak najít ovladač zařízení používaný pro zařízení?

  3. Jak poznat hodnotu vestavěného makra v RPM?

  1. Jak fungují vnitřnosti démona Cron?

  2. Jak zjistit, kdy byl soubor Spfile vytvořen na serveru Linux

  3. Jak poznám název souboru skriptu ve skriptu Bash?