Pre administrátorov

26.08 | 12:28 | Žumpa | bedňa

Čaute priatelia.

Máme tu problém ktorý ma dosť štve.

Niektorí administrátori pravdepodobne zmažú spam bez toho aby zmazali aj užívateľa, takže dnešný stav je taký, že tu máme stovky mŕtvych duší.

Prišiel som na to náhodou, že som začal na našich stránkach hľadať spam. Keď som toho zmazal mraky vrátane spamerov, tak sa pozriem do užívateľov a skoro ma jeblo. Sú ich tam stovky.

Takže ak niekto z adminov chce ísť do toho, tu dávam malý návod ako na to:

Rozkliknem užívateľa pozriem sa či má nejaké préspevky, ak nula a nemá ani definovaný svoj bod na mape, tak mažem. Našiel som aj skutočného užívateľa, ktorý sa zaregistroval, označil na mape odkiaľ je, ale nič nenapísal. Tak pozor, nechceme nikoho nasrať.

So long.
    • RE: Pre administrátorov 26.08 | 15:14
      Avatar debian+   Návštevník

      To sa da doprogramovat, ze ak pri mazani ma uzivatelov ma 1 spam a ziadne prispevky, tak maze.

      • RE: Pre administrátorov 26.08 | 15:31
        Avatar bedňa LegacyIce-antiX  Administrátor

        Zdrojáky máš, tak poďme na to :-)

        Táto správa neobsahuje vírus, pretože nepoužívam MS Windows. http://kernelultras.org
        • RE: Pre administrátorov 26.08 | 18:44
          Avatar debian+   Návštevník

          Ak by bolo v inom progracovacom jazyku, tak uz davno, ale v tom, v ktorom je, tak nie.

    • RE: Pre administrátorov 26.08 | 20:18
      Avatar borg Fedora  Administrátor

      manualnu robotu si nechaj ;)

      • RE: Pre administrátorov 26.08 | 23:43
        Avatar bedňa LegacyIce-antiX  Administrátor

        Tak skriptom by to mohol spraviť asi len Mirec, mno pretože nereaguje ani na nahlásené chyby, tak počítam že nemá čas.

        Jasne mohol by som ho kontaktovať priamo, ale nechcem ho fakt otravovať, to si radšej počkám až sa do toho pustí sám.

        Zatiaľ je otázka, má chuť niekto aspoň na pol hodinku denne si tu prelúskať toto peklo?

        Táto správa neobsahuje vírus, pretože nepoužívam MS Windows. http://kernelultras.org
    • RE: Pre administrátorov 26.08 | 20:33
      Avatar WlaSaTy   Návštevník

      Ak sa loguje posledné prihlásenie, aké staré sú tie duše? A tiež by bolo humorné pozrieť či tie emaily z registrácie ešte existujú (teda domény, nie mass scan na smtp vrfy).

      • RE: Pre administrátorov 26.08 | 23:52
        Avatar bedňa LegacyIce-antiX  Administrátor

        Jasne že to ide zautomatizovať podľa nejakých parametrov, uvidím ako moc ma to bude srať. Zrejme ak sa to nevyrieši (Mirecom), tak napíšem skript ktorý to vyhádže zvonku, ale mám strach, že to nejak poserem a vyhádžem aj čo nechcem.

        Normálne som v pohode, ale keď natrafiím na zbytočné, alebo nezotriedené dáta som autista. Proste konám a už som si s týmto prístupom narobil pár krát v živote nepríjemnosti. Dáta boli v prdeli, ale tie čo ostali boli zotriedené od jednotky do desať a tak to mám rád :-)

        Táto správa neobsahuje vírus, pretože nepoužívam MS Windows. http://kernelultras.org
        • RE: Pre administrátorov 27.08 | 06:54
          Avatar Andrej Lacho Debian, CentOS ...  Administrátor

          ako pisal sudruh...

          Zalohovat, zalohovat, zalohovat.

          • RE: Pre administrátorov 29.08 | 11:52
            Avatar bedňa LegacyIce-antiX  Administrátor

            Andrej ideš do toho? Dáme si limit napr. preklepať 10 užívateľ denne/osoba.

            Táto správa neobsahuje vírus, pretože nepoužívam MS Windows. http://kernelultras.org
            • RE: Pre administrátorov 30.08 | 09:19
              Avatar Andrej Lacho Debian, CentOS ...  Administrátor

              Neviem ci to budem denne stihat ale urcite by som to premazavat mohol.

              Kazdopadne potrebujem prava na to ;)

              • RE: Pre administrátorov 30.08 | 17:40
                Avatar bedňa LegacyIce-antiX  Administrátor

                Práva už máš, ja som zmazal jedenásť spamerov. Potom som zistil ďalších desať a jeeeb chyba, tak som to reportoval.

                Táto správa neobsahuje vírus, pretože nepoužívam MS Windows. http://kernelultras.org
        • RE: Pre administrátorov 27.08 | 09:42
          Avatar WlaSaTy   Návštevník

          Ak sa človek neprihlásil niekoľko rokov a nemá príspevky, tak sa už asi ani nikdy neprihlási. Ako, ja by som to možno ani neriešil pokiaľ by ten zoznam užívateľov negeneroval zbytočnú záťaž pri prihlasovaní.

          • RE: Pre administrátorov 28.08 | 00:18
            Avatar bedňa LegacyIce-antiX  Administrátor

            Ja by som to tiež neriešil pokiaľ o tom neviem.

            Mám proste rád veci v živote zoradené a keď nie, tak ma to štve.

            Nin, nie som bežný ITečkár, proste to musí všetko hrať ako struny na gitare.

            Táto správa neobsahuje vírus, pretože nepoužívam MS Windows. http://kernelultras.org
            • RE: Pre administrátorov 28.08 | 10:55
              Avatar WlaSaTy   Návštevník

              Presne toto ma už za tie roky prešlo. Človek vidí za svoj život kopec nepodstatných maličkostí, na ktorých nezáleží. Ak by sa mal zaoberať každou z nich, tak mu neostane čas na relax, koníčky, rodinu, alebo priateľov.

              Veľa zdaru.

              • RE: Pre administrátorov 29.08 | 12:02
                Avatar bedňa LegacyIce-antiX  Administrátor

                To je proste diagnóza, to sa nedá zmeniť :-)

                Táto správa neobsahuje vírus, pretože nepoužívam MS Windows. http://kernelultras.org
    • RE: Pre administrátorov 02.09 | 16:23
      Avatar vxmery Mint 19.2 Cinnamon; MX 18.3 Xfce  Administrátor

      Okolo 5880 účtov, skvelé. Pekne pomaličky per partes a za také dva rôčky máme čisto. Len či už vtedy všetci nebudú na fasabúku :)

    • RE: Pre administrátorov 03.09 | 10:23
      Avatar Miroslav Bendík Gentoo  Administrátor

      Neviem, či to má nejaký zmysel ale budiž. Pred mazaním poprosím zálohovať databázu (su - postgres, bez hesla, alebo z heslom z web/settings_production.py).

      Príkazy

      cd /srv/linuxos/app
      . ./scripts/setenv.server
      django-admin.py shell_plus
      
      neaktivny = Q(last_login__isnull=True) | Q(last_login__lt=timezone.now() - timezone.timedelta(365))
      content_types = (
          (Article, 'author', 'ma_clanky'),
          (Blog, 'author', 'ma_blog'),
          (Comment, 'user', 'ma_komentare'),
          (Desktop, 'author', 'ma_desktop'),
          (News, 'author', 'ma_spravy'),
          (Node, 'author_id', 'ma_blackhole_clanky'),
          (NodeRevision, 'author_id', 'ma_blackhole_revizie'),
          (Page, 'last_author', 'ma_wiki_stranky'),
          (Topic, 'author', 'ma_temy_fora'),
          (Tweet, 'author', 'ma_tweety'),
      )
      anotacie = {}
      bez_obsahu = Q()
      for model, related_name, column_name in content_types:
          anotacie[column_name] = Exists(model._default_manager.filter(**{related_name: OuterRef('pk')}).values('pk'))
          bez_obsahu = bez_obsahu & Q(**{column_name: False})
      
      
      
      # Výpis ID
      User.objects.annotate(**anotacie).filter(neaktivny & bez_obsahu).values_list('pk', flat=True)
      
      # Vymazanie
      User.objects.annotate(**anotacie).filter(neaktivny & bez_obsahu).delete()
      

      Príslušné SQL:

      SELECT "auth_user"."id"
      FROM "auth_user"
      WHERE (("auth_user"."last_login" IS NULL
              OR "auth_user"."last_login" < 2018-09-03 08:19:42.645751+00:00)
             AND EXISTS
               (SELECT U0."id"
                FROM "article_article" U0
                WHERE U0."author_id" = ("auth_user"."id")) = FALSE
             AND EXISTS
               (SELECT U0."id"
                FROM "blog_blog" U0
                WHERE U0."author_id" = ("auth_user"."id")) = FALSE
             AND EXISTS
               (SELECT U0."id"
                FROM "comments_comment" U0
                WHERE U0."user_id" = ("auth_user"."id")) = FALSE
             AND EXISTS
               (SELECT U0."id"
                FROM "desktops_desktop" U0
                WHERE U0."author_id" = ("auth_user"."id")) = FALSE
             AND EXISTS
               (SELECT U0."id"
                FROM "news_news" U0
                WHERE U0."author_id" = ("auth_user"."id")) = FALSE
             AND EXISTS
               (SELECT U0."id"
                FROM "blackhole_node" U0
                WHERE U0."author_id" = ("auth_user"."id")) = FALSE
             AND EXISTS
               (SELECT U0."id"
                FROM "blackhole_noderevision" U0
                WHERE U0."author_id" = ("auth_user"."id")) = FALSE
             AND EXISTS
               (SELECT U0."id"
                FROM "wiki_page" U0
                WHERE U0."last_author_id" = ("auth_user"."id")) = FALSE
             AND EXISTS
               (SELECT U0."id"
                FROM "forum_topic" U0
                WHERE U0."author_id" = ("auth_user"."id")) = FALSE
             AND EXISTS
               (SELECT U0."id"
                FROM "tweets_tweet" U0
                WHERE U0."author_id" = ("auth_user"."id")) = FALSE)
      • RE: Pre administrátorov 03.09 | 11:47
        Avatar bedňa LegacyIce-antiX  Administrátor
        Neviem, či to má nejaký zmysel ale budiž

        Vidím v tom zmysel taký, že keď začneme na čistej ploche, môžeme to potom priebežne už čistiť manuálne.

        Osobne som myslel, že to spravíš sám, pretože ty si momentálne asi jediný kto sa v tom vyzná.

        Táto správa neobsahuje vírus, pretože nepoužívam MS Windows. http://kernelultras.org