anúncios

quarta-feira, 28 de setembro de 2022

Conhecendo a distro Salix, um Slackware easycore moderno

O Salix é uma distro Linux baseada no Slackware que foca em facilitar o uso do sistema para usuários de desktop. Ele traz um XFCE personalizado como desktop enviroment, além de várias ferramentar para facilitar a configuração do sistema, assim como instalar programas, como o suporte a flatpak nativo e o gerenciador de pacotes gráfico, Gslapt e Slapt-get via CLI.

Tido como o "Linux Mint do Slackware", a distro ainda traz suporte para processadores de 32 bits, sendo uma bela alternativa para dar uma sobrevida a equipamentos antigos, com um toque de modernidade e beleza.

O instalador do Salix é similar na mesma experiência do Slackware, mas tem suporte a diversos idiomas. De praxe, um ambiente de desenvolvimento completo fornecido com a instalação padrão do Salix.

Screenshots

Review

Referências

https://guide.salixos.org/

https://www.salixos.org/download.html

Feito!

domingo, 25 de setembro de 2022

Conhecendo o simulador de autômatos JFLAP

JFLAP é uma ferramenta gráfica que auxilia no estudo de Linguagens Formais e Autômato e Teoria da Computação .

Construi e valida Autômatos Finito Determinístico (AFD), Autômatos Finitos Não Determinístico (AFN), Gramática Regulares (GR), Expressões Regulares (ER), Autômatos com Pilha (AP), Máquinas de Turing (MT).

Também faz conversões entre:

AFD -> AFN
AF -> GR
GR -> AF

Se você está cursando Ciência da Computação e nesse semestre está matriculado nas disciplinas de Linguagens Formais e Autômato (LFA), Teoria da Computação (TEC), podem usufruir desta ferramenta JFLAP nos seus estudos dessas disciplinas de modo a ajudar nos exercícios e estudar para a prova.

É importante salientar aos estudantes de Ciência da Computação, que é recomendado aprender a fazer a conversão de AFD->AFN, AFN->GR, GR->AF e utilizar a ferramenta JFLAP para conferir o resultado.

Esta certo, como faço para utilizar o JFLAP?

Pré-requisitos: Ter pelo menos o JDK instalado no SO que estiver utilizando no seu computador.

Acesse https://jflap.org/ e clique no link "Get JFLAP", clique no link "fill out this form" que é um formulário, mas o único campo obrigatório o preenchimento é a digitação da string aleatória anti-spam e clicar no botão "Submit", irá redirecionar na página e faça o download do arquivo que tem o link "JFLAP7.1.jar".

Após o download do arquivo JAR do JFLAP, abre o terminal e acesse o diretório onde salvou o JFLAP.

$ java -jar JFLAP7.1.jar

Referências

https://www.jflap.org/

Feito!

sexta-feira, 23 de setembro de 2022

Conhecendo o DBDesigner

DBDesigner é uma ferramenta CASE para a modelagem de dados que trabalha com o modelo lógico, desenvolvida pela fabFORCE sob licença GNU GPL (General Public License). É multiplataforma (Windows, Linux) implementado em Delphi/Kylix.

Além de permitir a modelagem, criação e manutençao de banco de dados, esta ferramenta possibilita a engenharia reversa, gerando o modelo de dados a partir de um banco de dados existente, e ainda possibilita o sincronismo entre o modelo e o banco.

O DBDesigner possui suporte aos SGBD MySQL, Oracle, MS SQL Server.

Instalação

O primeiro passso é fazer o download do DBDesigner direto no site oficial aqui , de acordo com o SO que estiver utilizando atualmente, no caso do Linux (qualquer distro), após extrair o arquivo DBDesigner4.X.tar.gz no diretório onde salvou e executar o script startdb.

Na prática é basicamente isso, substituir o X pela release da versão correspondente.

$ tar -xzvf DBDesigner4.X.tar.gz
$ cd DBDesigner4.X
$ ./startdb

Adicione um atalho para o startdb (DBDesigner) no menu do gerenciador gráfico que estiver utilizando na distro Linux.

Nota

O DBDesigner foi descontinuado, mas existe o MySQL Workbench , que atende perfeitamente para criar o DER do seu banco de dados.

Feito!

Conhecendo a ferramenta Dia Diagram Editor

A ferramenta Dia Diagram Editor é gratuita e de código aberto sob licença GNU/GPLv2, tem suporte mais de 30 tipos de diagramas diferentes, como fluxogramas, classes, redes, banco de dados. Dispõe mais de 1000 objetos prontos que ajudam a desenhar diagramas profissionais para ler e escrever em formatos diferentes de imagem.

Essa ferramenta foi inspirada no Microsoft Visio.

Tem suporte aos SOs Linux, Windows e macOS.

Instalação

Linux

Debian/Ubuntu

$ sudo apt install dia

Fedora

$ sudo dnf makecache --refresh
$ sudo dnf -y install dia

Pronto, agora já pode criar os seus fluxogramas, diagramas de classes, redes, banco de dados e outros com a ferramenta Dia Diagram Editor que acabou de instalar no seu sistema Linux.

Feito

quarta-feira, 21 de setembro de 2022

Removendo arquivos definitivo no Linux

Você acha que ao remover arquivos com o comando rm ou esvazia a lixeira, os arquivos foram removidos? Em resumo, o método usual para remover arquivos no Linux, usando o comando rm ou modo gráfico, não é suficiente para remover permanentemente o arquivo do sistema. Ferramenta de recuperação de arquivos removidos conseguirá recuperá-lo.

O objetivo deste post é de apresentar 5 utilitários que permite remover arquivos definitivo, de forma segura.

SHRED

O comando shred sobreescreve o arquivo diversas vezes de forma embaralhada antes de remover-lo. Isso impossibilita que o conteúdo original do arquivo seja recuperado.

$ shred -uvz nome-arquivo

WIPE

O Wipe é um utilitário que remove permanentemente arquivos e diretórios em discos magnéticos e SSD.

$ sudo apt install wipe
$ wipe -rfi nome-diretorio
$ wipe nome-arquivo

SRM (Secure RM)

O SRM é uma ferramenta que faz parte do conjunto secure-delete. Seu funcionamento é parecido com o comando rm em conjunto com shred.

$ sudo apt install secure-delete
$ sudo srm nome-arquivo

SFILL (Secure Free Disk and Inode Space Wiper)

O Sfill também faz parte do conjunto secure-delete. Preenche o espaço disponível da partição com dados aleatórios, impossibilitando a recuperação de arquivos deletados.

$ sudo apt install secure-delete
$ sudo sfill -v nome-diretorio

SDMEN (Secure Memory Wiper)

O Sdmen também faz parte do conjunto secure-delete. Sua função é remover dados presentes na memória RAM.

$ sudo apt install secure-delete
$ sudo sdmen -f -v

Referências

https://linux.die.net/man/1/shred

http://wipe.sourceforge.net/

http://srm.sourceforge.net/

https://manpages.ubuntu.com/manpages/kinetic/en/man1/sfill.1.html

https://www.linuxcertif.com/man/1/sdmem/

Feito!

quinta-feira, 15 de setembro de 2022

Instalando e Configurando o VPN WireGuard no Linux

WireGuard é um software e protocolo de comunicação gratuito e de código aberto. Ele é usado para implementar técnicas de Rede Virtual Privada (VPN) na criação de conexões seguras de ponto a ponto em configurações roteadas ou de ponte.

Instalando o WireGuard

Segue, conforme a distro mencionada o qual estiver utilizando no seu computador ou servidor.

Debian/Ubuntu

$ sudo apt install wireguard

Fedora

$ sudo dnf install wireguard-tools

Arch

$ sudo pacman -S wireguard-tools

openSUSE $ sudo zypper install wireguard-tools

RHEL 8

$ sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm https://www.elrepo.org/elrepo-release-8.el8.elrepo.noarch.rpm
$ sudo yum install kmod-wireguard wireguard-tools

Habilitar o forward

$ sudo vim /etc/sysctl.conf

descomentar a linha (retirar o # na frente)

net.ipv4.ip_forward=1 $ sudo systctl -p
# mkdir /etc/wireguard
# umask 077
# wg genkey | tee privatekey | wg pubkey > publickey

Repetir para no cliente Linux, que irá conectar no servidor VPN WireGuard


Configurando o WireGuard


# vim /etc/wireguard/wg0.conf

[Interface]
PrivateKey = <contents-of-server-privatekey>
Address = 10.0.0.1/24
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
ListenPort = 51820

[Peer]
PublicKey = <contents-of-client-publickey>
AllowedIPs = 10.0.0.2/32

Verifique as chaves pública e privada nos diretórios a seguir:

$ sudo cat /etc/wireguard/publickey
$ sudo cat /etc/wireguard/privatekey
# ip link add dev wg0 type wireguard
# ip address add dev wg0 192.168.2.1/24

ou dois peers

# ip address add dev wg0 192.168.2.1 peer 192.168.2.2
# wg setconf wg0 /etc/wireguard/config.conf
# ip link set up dev wg0

Inicializar o WireGuard no boot do sistema


# wg-quick up wg0

Saída de retorno

[#] ip link add wg0 type wireguard
[#] wg setconf wg0 /dev/fd/63
[#] ip -4 address add 10.0.0.1/24 dev wg0
[#] ip link set mtu 1420 up dev wg0
[#] iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

# wg show
# systemctl enable wg-quick@wg0
# modprobe wireguard

Adicionar a liberação da porta 51820 UDP no firewall


Configuração do cliente Linux


$ sudo mkdir -p /etc/wireguard
$ sudo vim /etc/wireguard/wg0.conf
[Interface]
Address = 10.0.0.2/32
PrivateKey = <contents-of-client-privatekey>
DNS = 1.1.1.1

[Peer]
PublicKey = <contents-of-server-publickey>
Endpoint = <server-public-ip>:51820
AllowedIPs = 0.0.0.0/0, ::/0

Configurar para inicializar no boot do cliente Linux

$ sudo wg-quick up wg0
$ sudo systemctl start wg-quick@wg0

Referências

https://www.wireguard.com/

Feito!

quarta-feira, 14 de setembro de 2022

Conhecendo o mensageiro DeltaChat

Se quer ter mais segurança e sem complicações para conversas em equipe online, então precisa conhecer o mensageiro Delta Chat.

Delta Chat é um aplicativo que permite converter a conta de e-mail que utiliza em um aplicativo de chat. Isso significa que o mensageiro Delta Chat é descentralizado e nisso pode enviar mensagens para qualquer pessoa, a partir dos contatos existentes no e-mail, sem que o destinário precise ter o Delta Chat instalado no computador ou celular.

O seu uso é similar ao aplicativo como o Telegram ou WhatsApp, mas sem o rastreamento ou controle central. O Delta Chat não precisa de um número de telefone. Basta saber o seu endereço de e-mail.

Além disso, o Delta Chat é um software livre e de código aberto.

Instalando o cliente Delta Chat

No Linux

Debian/Ubuntu

$ wget -c "https://download.delta.chat/desktop/v1.32.1/deltachat-desktop_1.32.1_amd64.deb"
$ sudo dpkg -i deltachat-desktop_1.32.1_amd64.deb

Fedora

$ wget -c "https://download.delta.chat/desktop/v1.32.1/deltachat-desktop-1.32.1.x86_64.rpm"
$ sudo rpm -i deltachat-desktop-1.32.1.x86_64.rpm

Configurando o Delta Chat

Após instalar o cliente Delta Chat, siga os procedimentos seguintes:

Informar a sua conta de e-mail. Caso estiver usando o Gmail, precisará habilitar o token de acesso em sua conta e permitir, pode ser verificado aqui.

Usando o Delta Chat

O uso do Delta Chat é bastante similar como qualquer outro aplicativo mensageiro, inclusive a sua interface gráfica já indica isso.

Adicione um contato que está no seu e-mail que utilizou no Delta Chat, enviei uma mensagem o contato. Esse contato não precisa ter o Delta Chat instalado, pois irá receber a mensagem no e-mail, e o contato ao responder a sua mensagem irá encaminhar no Delta Chat. TOP

Referências

https://delta.chat/pt/

https://providers.delta.chat/

Feito!

segunda-feira, 12 de setembro de 2022

Configurando a sua Netflix com Jellyfin

O que é Jellyfin?

O Jellyfin e um serviço de multimídia permitindo fazer o streaming de seus vídeos e qualquer dispositivo de sua escolha. O Jellyfin, totalmente gratuita, você pode usar seus serviços na maioria dos dispositivos. Além de permitir você assistir os filmes da sua biblioteca, também faz a transcodificação de vídeo para melhor exibição dependendo da velocidade de sua internet, e a resolução do seu dispositivo.

Pode instalar na sua máquina ou no seu servidor.

Recomendo instalar o Jellyfin no ambiente Docker, por ser mais simples e rápido.

Instalação e configuração do Jellyfin no ambiente Docker

A premissa é ter o Docker e Docker-Compose instalados, caso ainda não tenha, verifique Instalando Docker e Docker Compose no Linux (qualquer distro) ou Instalando Docker no Windows 10

$ mkdir -p jellyfin && cd jellyfin
$ mkdir -p config cache media media2
$ curl -LO https://raw.githubusercontent.com/rmsaitam/jellyfin-docker/main/docker-compose.yml
$ docker-compose up -d

Aguarde subir o ambiente, após concluir, acesse no browser http://IP:8096 ou https://IP:8920

No primeiro acesso ao Jellyfin, é redirecionado para o cadastro do usuário administrador e assim colocar os filmes, vídeos, músicas, no diretório media do volume que foi criado anteriormente.

Pode criar usuários regulares

Pronto, agora tem um servidor multimídia interno na sua rede.

Referências

https://jellyfin.org/

Feito!

sábado, 10 de setembro de 2022

Configurando script Shell no boot com Systemd no Linux

Systemd é um aplicativo de software que fornece diversos recursos para o GNU/Linux (Debian, Ubuntu, Fedora, RHEL). É o primeiro serviço a inicializar no processo de boot. Isso sempre é executado com o PID 1. Isso também nos ajuda a gerenciar os serviços do sistema Linux.

Criando um script Shell

# vim /usr/bin/script.sh

#!/bin/bash
/*seu script Shell, que pode ser regras firewall (Iptables, NFTables, UFW), como outros serviços que quer que seja inicializado automaticamente no sistema*/

Setar permissão do script

# chmod chmod +x /usr/bin/script.sh

Criar o arquivo Systemd Unit


Crie um arquivo de unidade de serviço para o Systemd em seu sistema. Este arquivo deve ter extensão .service e salvo no diretório /lib/systemd/system/. Substitua o nome shellscript pelo nome do script correspondente a funcionalidade.

# vim /lib/systemd/system/shellscript.service

[Unit]
Description=Nome do objetivo do script Shell

[Service]
ExecStart=/usr/bin/script.sh
[Install]
WantedBy=multi-user.target


Habilitar o novo serviço


# systemctl daemon-reload
# systemctl enable shellscript.service
# systemctl start shellscript.service
# systemctl status shellscript.service

Uma vez executado o systemctl com a opção enable juntamente ao nome do serviço criado por meio do script Shell, irá inicializar automaticamente no boot do sistema Linux.

Feito!

sábado, 3 de setembro de 2022

Alternativas gratuitas ao Heroku

No dia 25/08/2022 o Heroku anunciou o encerramento dos planos gratuitos Essa notícia deve ter pego muitos desenvolvedores que tem seus projetos hospedados no plano gratuito no Heroku. Então, quais as alternativas ao Heroku? Esse é objetivo deste post, de apresentar alguns PaaS ao Heroku.

CapRover

CapRover é uma ferramenta gratuita e de código aberto, que possui os mesmos recursos do Heroku no seu servidor próprio.

Vercel

É da empresa criadora do framework NextJS da biblioteca React. Excelente plataforma para hospedar o projeto Frontend.

Netlify

Plataforma para hospedar aplicações Frontend de forma gratuita.

Railway

É uma plataforma completa que permite utilizar a mesma infraestrutura da nuvem durante o seu desenvolvimento local, além de ter um deploy super simples e possuir um plano gratuito eficaz.

Render

Além de ter os mesmos serviços do Heroku, tem o processo de CI/CD, hospedagem de aplicações estática, dinâmica e ainda o SGDB PostreSQL e Redis de forma gratuita.

Fly.io

Também tem os mesmos serviços do Heroku, suporte a Elixir e gerenciamento via CLI.

Gigalixir

Também tem os mesmos serviços do Heroku, suporte ao Elixir e Phoenix. Sem limites de conexão via SSH, Sockets.

Feito!