helio.loureiro.eng.br
  • Home
  • Unix
  • Linux
  • Blog
  • Python
  • Programação
  • Tudo
  • Suécia
  1. You are here:  
  2. Home
  3. Unix
  4. Linux

Os artigos mais lidos de 2024

  • linux-br.org num ritmo mais lento
  • Criando um serviço de relay de DNS-over-HTTPS
  • Minha palestra sobre a história do Unix na IX BSD Day
  • Pedal forte de 2023 em dados do Google
  • Linux vs GNU/Linux

Ataques de força bruta no login do linux-br.org

Details
Written by: Helio Loureiro
Category: Linux
Published: August 02, 2024
Hits: 1364
  • wordpress
  • wordfence
  • segurança
  • ataques de força bruta

Eu segui uma dica do @This email address is being protected from spambots. You need JavaScript enabled to view it. sobre usar o Wordfence no WordPress.  E realmente funciona legal barrando várias tentativas de ataques.

Eu dei uma olhada nos de força bruta e aqui estão os logins mais usados:


MariaDB [(none)]> select username, fail, inet6_ntoa(ip), UA from wp_wflogins into outfile 'ataques.csv';

> awk '{print $1}' ataques.csv | sort -n | uniq -c | sort -n
      1 -
      1 123123
      1 1234
      1 123456
      1 123456789
      1 443/wp-login.php
      1 aaa
      1 abcd1234
      1 admaster
      1 admin.
      1 AdMiN
      1 admin123
      1 admina
      1 admini
      1 administrators
      1 adminPeach
      1 adminwp
      1 admon
      1 Adsystem
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 ahmed
      1 alfons
      1 alireza
      1 anna
      1 arrow
      1 artsadd
      1 ask6776
      1 atarihost
      1 autonewsbot
      1 awen
      1 azaret
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 Beast3x
      1 beescleaning
      1 carpetsdubai
      1 Casper_Security
      1 catmeow
      1 chris
      1 christiane
      1 Christophe
      1 control
      1 cpolo
      1 dagon
      1 darcy56
      1 Darcy56
      1 dedi
      1 demilation
      1 DemoDemo
      1 demo_w1p
      1 devadmin
      1 dexter
      1 digilabs
      1 donaljkt9
      1 dummy_store_5
      1 editor
      1 ednabanaag
      1 eliasaf
      1 enamad
      1 eosuperadmin
      1 Fabien
      1 Farribeiro
      1 gestinet
      1 globalint
      1 goog
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 GP_Admin
      1 grupovhn
      1 gtfobiash
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 hopefox34
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 info
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 Ivan
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 jbalazs8178
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 john
      1 justin
      1 kinga
      1 kobieta
      1 kulturecom
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 lluis
      1 loafa
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 mainstream
      1 marina
      1 martinharvey
      1 Megusta
      1 microadmin
      1 miruku
      1 mohit
      1 monica
      1 mungmee
      1 MUWY
      1 ndvtzaifnz
      1 Nwildner
      1 oktay-dogangun
      1 options
      1 ovauser-admin
      1 PiSh3r
      1 protan
      1 qiang521
      1 quantri
      1 raeesa
      1 Rahul
      1 redtor
      1 richard
      1 Richard
      1 ridiz
      1 rikimoh39
      1 root
      1 rootadmin
      1 roottn
      1 rzu4bd
      1 sadminusez
      1 santi2
      1 senterprisys_admin
      1 SEOExpert
      1 seojiwo
      1 seomaster009
      1 shelby96
      1 Sion
      1 siteadmin
      1 smngrs952
      1 Support
      1 temp3
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 test3
      1 tester
      1 testionos
      1 tuanduongthe
      1 tuanpham
      1 upastra007
      1 Username
      1 Vikash
      1 voquanghuy
      1 wadmiine
      1 wdmgpvt
      1 webstone24
      1 webuser
      1 wpadmin
      1 WPADMIN
      1 w-padmine
      1 wp-admine
      1 wp-blog
      1 wp_developer
      1 wpengine
      1 wp_rest_api
      1 wpsystem
      1 wpupdate
      1 wuser
      1 wwwadm
      1 xcom
      1 xtw183870bbe
      1 xtw18387106f
      1 xtw1838711ab
      1 xtw183871206
      1 xtw183871550
      1 xtw183872fc0
      1 xtw18387331a
      1 xtw1838738ca
      1 xtw183873c09
      1 xtw183874283
      1 xtw183875328
      1 xtw1838754ba
      1 xtw18387596a
      1 xtw183875977
      1 xtw1838761a5
      1 xtw183876e88
      1 xtw18387757d
      1 xtw183877c79
      1 xtw183878b0d
      1 xtw18387958b
      1 xtw183879670
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 xtw18387a0c5
      1 xtw18387a9de
      1 xtw18387aa3b
      1 xtw18387adf8
      1 xtw18387c077
      1 xtw18387c339
      1 xtw18387d0aa
      1 xtw18387daad
      1 xtw18387e84d
      1 xtw18387e943
      1 xtw18387f29e
      1 xuanphong
      1 yanz
      1 zestful
      1 Zestful
      1 zokaroll
      2 12345678
      2 ac
      2 adminlin
      2 adminsup
      2 adminusez
      2 Auto
      2 bapaksaya
      2 burnolurko
      2 Clare
      2 francisunderwood
      2 greeceman
      2 happy
      2 hex
      2 hxq1879
      2 ismm
      2 jacquespermisdeconduire
      2 jatin
      2 jisuo
      2 lashkari
      2 maximixer789
      2 Nacht
      2 pajero_sports
      2 smngrs953
      2 smngrs955
      2 susan
      2 swilliams
      2 testuser
      2 thuylt
      2 wadmines
      2 This email address is being protected from spambots. You need JavaScript enabled to view it.
      2 wiktorB
      2 woopayplug
      2 wordpress_admin_bak
      2 wordpress_administratora
      2 wordpressauto
      2 wp
      2 wpenginesupport
      2 wpmanager
      2 wp_postadmin
      2 wpuser
      2 x
      2 xrumertest
      2 xtw1838729c0
      2 xtw18387754d
      2 yanz@123457
      2 yeuthuongmongmanh
      2 zadminz
      2 zutodoko
      2 This email address is being protected from spambots. You need JavaScript enabled to view it.
      3 admim
      3 admin1
      3 admin6
      3 admingusar
      3 bimak73555
      3 Chris
      3 demo
      3 This email address is being protected from spambots. You need JavaScript enabled to view it.
      3 mevivu
      3 qwee123123
      3 Reseller-webmaster
      3 talhas
      3 test1
      3 wadmine
      4 1001010
      4 andremachado
      4 crander
      4 hostingadmin
      4 matakucing3
      4 patola
      4 server
      4 stender
      4 username
      4 wordcamp
      4 wordpress_administrator
      5 administratoir
      5 administrator
      5 This email address is being protected from spambots. You need JavaScript enabled to view it.
      5 excontrol
      5 itsme
      5 support
      5 user
      5 wpadmins
      5 wpcore
      6 smngrs951
      7 nwildner
      7 paulomartins
     11 test
     12 farribeiro
     18 Admin
     19 wadminw
     28 wwwadmin
     54 linux-br
    151 df7c8c98dfd88d9dfad
   1270 admin

Realmente alguns logins existem e devem estar assinados nas páginas.  Mas o restante é estilo Forrest Gump correndo de um lado pro outro atravessando os Estados Unidos sem saber o porquê.

Linux vs GNU/Linux

Details
Written by: Helio Loureiro
Category: Linux
Published: March 08, 2024
Hits: 3007

A controvérsia quanto à nomenclatura GNU/Linux é uma disputa entre membros da comunidade de software livre e código aberto. É centrada em torno da denominação do núcleo de sistema chamado "Linux", e a vontade de utilizar esta nomenclatura como um termo genérico para tudo relacionado ao mesmo. O termo defendido pela Free Software Foundation (FSF), para relacionar o núcleo do sistema com as ferramentas desenvolvidas pela fundação GNU seria GNU/Linux, ficando o nome "Linux" para ser utilizado apenas quando se referindo ao núcleo Linux. O nome é por vezes pronunciado como "GNU com Linux".

https://pt.wikipedia.org/wiki/Controv%C3%A9rsia_quanto_%C3%A0_nomenclatura_GNU/Linux

Eu peguei esse trecho da wikipedia.  Abrindo um pequeno comentário sobre o mesmo:  a versão em português está bem diferente da versão em inglês e fica ao critério do leitor dar uma olhada em ambos e decidir qual está melhor.  Voltando ao assunto, a guerra entre os termo Linux e GNU/Linux.  A briga vem de longa data, basicamente quando Linux começou a crescer exponencialmente em popularidade e deixou o projeto GNU em sua sombra.  O bom doutor, Richard Stallman, ficou famoso por suas longas interjeições sobre o assunto.  E virou meme.  Infinitos memes.

O sistema operacional era GNU no início, mas por conta do kernel na época não estar pronto, usaram Linux.  Mas não imaginavam que a força de comunidade ao redor do Linux seria tão grande e tão marcante.  Ao ponto do Linux ter sido somente um kernel no início, mas hoje ser uma fundação e com vários projetos abrigados, como o OpenTofu, Linux para setor automobilístico, CNCF (Cloud Native Computing Foundation), etc.  Por simplicidade, muita gente chama o sistema operacional inteiro com Linux somente.  E isso, claro, ganhou força por ser mais fácil e simples que dizer GNU/Linux ou GNU+Linux.

Dentro dessa discussão existe ainda o ponto que alguns levantam que dentro de um sistema operacional, geralmente aquilo que você usa de uma distro - distribuição de Linux, não depende só do GNU.  Existem outros códigos, projetos e licenças ali.  De MIT a Apache, de KDE a Gnome, e assim por diante.  Então se fosse pra dar crédito a todos ali, deveria ser chamado MIT/Xorg/Apache/Git/GNU/Linux ou qualquer outra coisa tão bizarra ou até mais que isso.

Claro que grande parte das coisas ali não existiriam sem a contribuição do projeto GNU, principalmente com o GCC.  Até mesmo os BSDs dependeram do GCC até a Apple botar dinheiro no llvm/clang - e por conta disso estavam todos parados no GCC 3.2 por causa da mudança pra licença GPLv3, então a Apple ajudou muito.

E existe ainda a discussão, bastante rasa, de alguns de que Linux não roda sem GNU.  Isso já foi demonstrado tanto pelo Android que não é verdade.  E agora existem tanto o Chimera Linux, sem absolutamente nada de GNU e usando algumas ferramentas escritas em rust, quanto o Alpine Linux, feito pra containers.

Mas o ponto que eu queria abordar aqui, pois essa discussão já existe faz décadas e nada mudou muito, foi um artigo que peguei no site do GNU.  Eu particularmente achei maravilhoso.

https://www.gnu.org/distros/common-distros.en.html

tl;dr: basicamente o que está escrito é que o projeto GNU não endossa as distribuições porque pra isso não pode distribuir nada que não seja software livre.  Então quem usa firmwares binários, os blobs, não é endossado como GNU.  Nem quem permite instalação de software proprietário.  Sim, quem permite.  Pois o OpenBSD não carrega firmwares binários por questões de segurança.  Nem contém softwares proprietários no sistema operacional.  Mas o sistema de ports, que são scripts e Makefiles de contribuidores e de usuários, esse instala softwares não livres.  E isso é o suficiente pra GNU não endossar como... um sistema GNU???  Apesar da hipocrisia, acho que não seria o caso de nomear o OpenBSD como GNU de qualquer forma.

Mas o interessante é que ela acaba com a discussão.  Se contém firmware ou é possível instalar software proprietários (steam, google chrome, etc) então não é GNU.  Muito bem.  Então nem é mais preciso a discussão sobre o nome.  O nome é Linux e pronto :)

Interessante que referem-se às distros como GNU/Linux, como no caso do Arch GNU/Linux, enquanto o próprio Arch está como Arch Linux.

Pra terminar, deixo aqui vocês com os melhores memes desse tema.

 

Resolvendo o problema de conexão ssh travando no raspberry pi

Details
Written by: Helio Loureiro
Category: Linux
Published: December 16, 2023
Hits: 2961

 

Resolvi dar aquele tapa de fim de ano no raspberry pi que tenho, versão 3 e talvez B mas não tenho certeza.  E fiz upgrade pro Bookworm, último release do Debian.

O site não recomenda fazer isso e sim reinstalar o sistema operacional.  Mas eu sempre tento o upgrade primeiro e guardo a opção de reinstalar pro último caso.

Acabei perdendo acesso ao wifi durante o upgrade e precisei tirar ele da janela e mexer aqui na mesa.  Nada demais e aparentemente deu certo.

Aparentemente...

Toda vez que eu tentava algum comando que mandasse muitos dados como "dmesg" ou "journalctl -b -1", a conexão travava.  E como fica ali na janela, sem cabo de rede perto, eu nunca soube se era problema do ssh ou do wifi ou que simplesmente travava.  Apenas sabia que depois que travava eu não conseguia mais conectar.

Junto a isso as fotos da janela começaram a sair muito ruins.  Com muita exposição.

No fim acabei botando de novo aqui na mesa e mexendo pra ver se acertava a parte do ssh.

Achei uma dica em "https://discourse.osmc.tv/t/solved-ssh-connection-sometimes-hangs/76504" pra alterar o "/etc/ssh/sshd_config" e adicionar as seguintes linhas:

IPQoS cs0 cs0

E reiniciando o sshd.  Realmente deu certo.  A conexão passou a ficar estável.  O segredo foi mudar o ToS pra best effort com cs0.

Eu também mudei o /etc/rc.local pra rodar e deixar o wifi sem power management e evitar qualquer problema de conexão que esse pudesse causar.

iwconfig wlan0 power off

A parte da câmera eu não consegui acertar aqui na mesa.  Simplesmente não consegui abrir o programa gráfico pra isso.  No fim fiz ajustes no programa que uso com rpicam-still, que parece ser o novo programa pra usar.

Eu ainda não olhei como ficou a exposição da manhã, mas a de noite está bacana.

E no fim arrumei com o parâmetro "--shutter".

Quem quiser olhar ou re-usar o script, está aqui no github:

https://github.com/helioloureiro/snapshot-twitter-mastodon

Renderizando as fotos da GoPro em vídeo mpeg4 com ffmpeg e NVIDIA

Details
Written by: Helio Loureiro
Category: Linux
Published: April 16, 2023
Hits: 2101

Eu já tinha descrito como usar aceleração de hardware pra juntar imagens jpeg e criar um vídeo em usando a GPU para renderizar vídeo.  Mas o texto todo abordou apenas os testes que fiz no laptop que tinha na época, com GPU integrada Intel.

E como fazer o mesmo com NVIDIA?

Aqui está a receita de bolo direta:

ffmpeg -hwaccel cuda -hwaccel_output_format cuda -r 1 -i G%04d.JPG -c:v h264_nvenc -b:v 5M -pix_fmt cuda output.mp4

Simples assim ele gera uma grande image output.mp4, que depois eu uso no kdenlive.

Claro que não é assim tão simples.  É preciso ter os arquivos da GoPro gerados no padrão G0000.JPG, G0001.JPG, etc.

O que faço então é copiar todos os arquivos que vou precisar dentro do mesmo diretório (uso Gwenview pra isso).  E depois eu rodo o seguinte script:

#! /usr/bin/env bash

counter=0
for img in G*.JPG
do
  serial=$(printf "%04d" $counter)
  new_name="G${serial}.JPG"
  echo "$img => $new_name"
  mv $img $new_name
  counter=$((counter++))
done

ffmpeg -hwaccel cuda -hwaccel_output_format cuda -r 1 -i G%04d.JPG -c:v h264_nvenc -b:v 5M -pix_fmt cuda output.mp4

E pronto.  Imagem gerada em output.mp4 pra ser usada no kdenlive.

Como eu não consegui fazer o kdenlive funcionar bem com a placa NVIDIA, é mais rápido fazer essa primeira geração assim via ffmpeg mesmo.

O script está disponível no GitHub:

https://github.com/helioloureiro/homemadescripts/blob/master/render-video-from-gopro-photos.sh

Reconectando por software um dispositivo USB no Linux

Details
Written by: Helio Loureiro
Category: Linux
Published: March 19, 2023
Hits: 2116

Por algum motivo bizarro meu mouse passou a não funcionar quando ligo meu PC.  A propósito, para fazer minha parte quanto à crise energética na europa, eu passei a deixar meu PC desligado.  Só o ligo quando vou usar, e depois desligo novamente.  Algo que não fazia há algumas décadas.

Mas voltando ao assunto mouse, por algum motivo bizarro o mouse parou de funcionar.  Ao desconectar e reconectar na USB, ele passava a funcionar.

Então resolvi fazer isso por software, num script que botei no /etc/rc.local, uma vez que rodo o rc-local no systemd.

MOUSE_PRODUCT="G203 Prodigy Gaming Mouse"

cd /sys/bus/usb/devices || \
  die "It seems /sys interface isn't available."

echo "Detecting mouse:"
mouse_id=""
for d in *
do
  if [ ! -f "$d/product" ]; then
    continue
  fi
  echo -n " * $d: "
  product=$(cat $d/product)

  if [ "$product" = "$MOUSE_PRODUCT" ]; then
    echo "$product (DEVICE FOUND)"
    mouse_id="$d"
  else
    echo $product
  fi
done

if [ -z "$mouse_id" ]; then
  die "device not foud"
fi

echo "Restarting $mouse_id ($MOUSE_PRODUCT)"
echo " * unbinding"
echo "$mouse_id" > /sys/bus/usb/drivers/usb/unbind
sleep 3
echo " * binding"
echo "$mouse_id" > /sys/bus/usb/drivers/usb/bind

Esse foi o código inicial que usei, mas descobri logo que dar um reset no mouse não era o suficiente.  O mais efetivo era dar um reset no hub USB em que está conectado.  Assim alterei pra usar "USB2.0 Hub".

O resultado:

helio@goosfraba ~> sudo homemadescripts/restart_mouse.sh
Detecting mouse:
 * 1-4: CSR8510 A10
 * 2-5: Lexmark MC3224dwe
 * 5-1: PLAYSTATION(R)3Conteroller
 * 8-1: USB2.0 Hub
 * 8-1.1: HyperX Quadcast
 * 8-1.2: HD Pro Webcam C920
 * 8-1.3: G432 Gaming Headset
 * 8-1.4: USB2.0 Hub
 * 8-1.4.1: Keychron C1
 * 8-1.4.4: G203 Prodigy Gaming Mouse (DEVICE FOUND)
 * 9-1: USB3.0 Hub
 * 9-1.4: USB3.0 Hub
 * usb1: OHCI PCI host controller
 * usb2: EHCI Host Controller
 * usb3: EHCI Host Controller
 * usb4: EHCI Host Controller
 * usb5: OHCI PCI host controller
 * usb6: OHCI PCI host controller
 * usb7: OHCI PCI host controller
 * usb8: xHCI Host Controller
 * usb9: xHCI Host Controller
Restarting 8-1.4 (USB2.0 Hub)
 * unbinding
 * binding

e temos um mouse funcionando :)

O código está no github: https://github.com/helioloureiro/homemadescripts/blob/master/restart_mouse.sh

  1. Mantendo pacote no AUR
  2. Google passou a exigir SPF1 configurado no servidor de e-mail
  3. 2023 - o ano do Linux no desktop
  4. 30 anos de Linux

Page 3 of 20

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

Estatísticas

  • Users 2
  • Articles 468
  • Articles View Hits 3356563

Imagem aleatória