anúncios

sábado, 23 de março de 2024

Instalando o software IRPF 2024 no Linux

O software IRPF 2024 permite gerar a declaração de imposto de renda para pessoa física referente ao exercício de 2024, do ano 2023.

O prazo para a entrega da declaração do Imposto de Renda Pessoa Física (IPRF) 2024, ano-base 2023, será de 15/03/2024 a 31/05/2024. O programa para preenchimento será liberado no mesmo dia da abertura do prazo. A estimativa da Receita Federal é que sejam entregues 43 milhões de declarações. O primeiro lote da restituição será pago em 31/05/2024.

Deve declarar quem recebeu rendimentos tributáveis, sujeitos ao ajuste na declaração, cuja soma foi superior a R$ 30.639,90 em 2023. O valor anterior era de R$ 28.559,70. A partir do primeiro dia o contribuinte já poderá a usar a declaração pré-preenchida que traz informações importadas da base de dados da Receita Federal. Neste ano, 75% dos declarantes têm conta Gov.br nos níveis ouro e prata, que podem acessar a declaração pré-preenchida.

Para esse exercício, houve mudança nas fichas da declaração para identificação do tipo de criptoativo para quem tem esse tipo de investimento. Outra mudança é na ficha de alimentando que são as pessoas que recebem pensões alimentícias. Nesse caso, houve um aumento das informações que precisam ser prestadas na ficha de declaração. Além da obrigatoriedade de colocar o CPF do alimentando, o declarante também precisará informar as datas relativas ao tipo de processo – a data de lavratura da escritura pública, por exemplo, ou a data da decisão judicial.

Os limites de obrigatoriedade de entrega do imposto de renda foram atualizados:

  • Limite de rendimentos tributáveis passou de R$ 28.559,70 para R$ 30.639,90
  • Limite de rendimentos isentos e não tributáveis de R$ 40 mil para R$ 200 mil
  • Receita bruta da atividade rural de R$ 142.798,50 para R$ 153.199,50
  • Posse ou propriedade de bens e direitos de R$ 300 mil para R$ 800 mil

O prazo de entrega da declaração teve início no dia 15/03/2024 e se prolongará até às 23h59 do dia 31/05/2024.

Procedimentos de instalação do software IRPF 2024 no Linux (qualquer distro)

Pré-requisitos:

Ter o openJDK 1.8 ou superior configurado no PATH do SO.

Copie a linha seguinte e cole no terminal da distribuição Linux que estiver usando ou clique no link https://www.gov.br/receitafederal/pt-br/centrais-de-conteudo/download/pgd/dirpf

Setar a permissão para execução

$ chmod +x IRPF2024Linux-x86_64v1.1.sh.bin

Executar o instalador IRPF2024

$ ./IRPF2024Linux-x86_64v1.1.sh.bin

Na primeira tela, clique no botão "Avançar".

Clique no botão "Avançar"

O próximo passo é escolher o diretório de instalação que deseja salvar, clique em "Avançar".

Confirme a instalação no botão "Avançar".

Por fim, clique no botão "Terminar".

Pronto, a instalação do IRPF2024 está concluída, poderá abrir no atalho que foi criado na área de trabalho. Também se preferir abrir o software IRPF2024 pelo terminal.

$ ~/ProgramasRFB/IRPF2024/irpf.jar

Agora, pode fazer a sua declaração do imposto de renda no Linux.

Após fazer a sua declaração e salvar o comprovante que fez a declaração do imposto de renda 2024, se quiser, pode desinstalar o software IRPF 2024.

Execute no terminal.

~/ProgramasRFB/IRPF2024/uninstall

Confirme o tipo de desinstalação (padrão ou completa), clique no botão "Avançar" e confirme.

Feito!

sexta-feira, 15 de março de 2024

Escolhendo a distribuição Linux ideal para você

Se você é um usuário do Windows interessado em aprender sobre o Linux, está prestes a embarcar em uma jornada emocionante e repleta de oportunidades de aprendizado. Linux é o nome do kernel, que é o núcleo do sistema operacional. Um sistema operacional completo é composto por várias partes, incluindo o kernel (Linux), utilitários do sistema, bibliotecas e aplicativos. Quando as pessoas se referem ao "Linux" como um sistema operacional, geralmente estão se referindo a uma distribuição Linux, que é uma versão específica do sistema operacional Linux combinada com diferentes utilitários, bibliotecas e programas para formar um sistema operacional completo.

Portanto, é mais preciso dizer que o Linux é o kernel, e as distribuições Linux (como Ubuntu, Fedora, Debian, entre outras) combinam o kernel Linux com outros componentes para formar um sistema operacional completo.

  1. Entenda Suas Necessidades:
  2. Antes de escolher uma distribuição Linux, é essencial entender suas necessidades e objetivos. Considere o seguinte:

    Você é novo no Linux ou já possui alguma experiência?

    Você deseja uma distribuição amigável para iniciantes ou está disposto a enfrentar um desafio maior?

    Qual será o principal uso do Linux: desenvolvimento de software, navegação na web, jogos, etc.?

  3. Escolha uma Distribuição Amigável para Iniciantes:
  4. Se você está apenas começando com o Linux e procura uma transição suave do Windows, considere distribuições conhecidas por sua facilidade de uso, como:

    Ubuntu: Uma das distribuições Linux mais populares, conhecida por sua interface amigável e vasta comunidade de suporte.

    Linux Mint: Baseado no Ubuntu, o Linux Mint oferece uma experiência de usuário familiar e vem pré-instalado com muitos aplicativos úteis.

  5. Explore as Opções Intermediárias:
  6. Se você está disposto a se aventurar um pouco mais e deseja uma distribuição que ofereça mais personalização e controle, considere:

    Fedora: Uma distribuição estável e atualizada regularmente, ideal para desenvolvedores e entusiastas do Linux.

    openSUSE: Conhecida por sua robustez e ferramentas de administração avançadas, é uma excelente escolha para usuários intermediários.

    Debian: Conhecida pela sua estabilidade e compromisso com o software livre, o Debian é uma escolha sólida para servidores e sistemas embarcados.

    Arch Linux: Famosa por seu design minimalista e abordagem "faça você mesmo" (do inglês, "do it yourself - DIY"), o Arch Linux é preferido por usuários avançados que desejam maior controle sobre seu sistema.

    Slackware: é uma distribuição Linux venerável, conhecida por sua simplicidade e estabilidade. É uma das distribuições mais antigas ainda em desenvolvimento ativo, mantendo uma abordagem "antiga escola" em relação à administração do sistema, sem muita automação ou ferramentas de configuração automatizadas. O Slackware é preferido por usuários avançados que valorizam o controle direto sobre seu sistema e desejam entender completamente como tudo funciona sob o capô. Sua filosofia de "faça você mesmo" pode ser um desafio para iniciantes, mas para aqueles dispostos a investir tempo em aprender, o Slackware oferece uma experiência de usuário única e altamente personalizável.

    Gentoo: é outra distribuição Linux conhecida por sua abordagem altamente personalizável e orientada para usuários avançados. Ao contrário de muitas outras distribuições que fornecem pacotes binários pré-compilados, o Gentoo adota um modelo de compilação de código-fonte, onde os usuários configuram e compilam cada pacote de software para seus sistemas específicos. Isso permite um controle preciso sobre as otimizações de desempenho e os recursos incluídos em cada programa. Embora o processo de instalação e configuração do Gentoo possa ser mais complexo e demorado do que outras distribuições, é uma escolha popular para usuários que desejam um sistema altamente personalizado e adaptado às suas necessidades específicas. O Gentoo é especialmente adequado para entusiastas de Linux que valorizam o aprendizado e a experiência prática com o sistema operacional.

  7. Experimente distribuições especializadas:
  8. Dependendo de suas necessidades específicas, você também pode considerar distribuições especializadas, como:

    Kali Linux: Projetado para testes de penetração e segurança cibernética.

    Ubuntu Studio: Orientado para artistas e profissionais de multimídia, vem pré-instalado com software de criação de conteúdo.

  9. Teste antes de comprometer-se:
  10. Antes de instalar qualquer distribuição Linux, é uma boa ideia experimentá-la em um ambiente de teste. Muitas distribuições oferecem versões "Live", que permitem iniciar o sistema a partir de um pendrive ou DVD sem alterar o sistema existente. Isso permite que você experimente a distribuição e verifique se atende às suas necessidades antes de fazer a instalação.

Considerações finais:

Escolher a distribuição Linux certa é uma parte importante de sua jornada de aprendizado. Seja qual for a distribuição que você escolher, lembre-se de que o Linux oferece uma comunidade vibrante e uma riqueza de recursos de aprendizado disponíveis online. Não tenha medo de experimentar e explorar as diferentes distribuições até encontrar aquela que melhor se adapta a você. Boa sorte em sua jornada no mundo do Linux.

Entre no grupo Linux no Telegram.

Feito!

quinta-feira, 14 de março de 2024

A importância do levantamento de requisitos no desenvolvimento de software

Quando se fala em desenvolvimento de software, muitas vezes a imagem que vem à mente é a de um desenvolvedor imerso em linhas de código, criando soluções complexas e elegantes para problemas específicos.

Embora isso seja parte integrante do trabalho de um programador, a verdade é que programar vai além de simplesmente escrever código. Uma parte essencial do processo de desenvolvimento de software é o levantamento de requisitos funcionais e não funcionais.

O que são requisitos funcionais e não funcionais?

Antes de mergulharmos na importância do levantamento de requisitos, é importante entendermos o que são requisitos funcionais e não funcionais.

Requisitos Funcionais: Esses requisitos descrevem as funcionalidades específicas que o sistema deve oferecer. Eles representam o comportamento esperado do software em termos de entrada, processamento e saída de dados. Por exemplo, um requisito funcional para um sistema de comércio eletrônico pode ser a capacidade de adicionar produtos ao carrinho de compras.

Requisitos Não Funcionais: Enquanto os requisitos funcionais definem o que o sistema deve fazer, os requisitos não funcionais especificam como o sistema deve realizar suas funções. Eles incluem características como desempenho, segurança, usabilidade, confiabilidade e escalabilidade. Por exemplo, um requisito não funcional pode ser a necessidade de que o sistema responda a solicitações do usuário em menos de um segundo.

A importância do levantamento de requisitos

O levantamento de requisitos é uma etapa fundamental no processo de desenvolvimento de software por diversas razões:

  1. Compreensão do problema
  2. Antes de começar a escrever código, é crucial entender completamente o problema que está sendo resolvido. O levantamento de requisitos ajuda os desenvolvedores a compreenderem as necessidades e expectativas dos usuários finais, garantindo que o software desenvolvido atenda às suas demandas.

  3. Minimização de erros e retrabalhos
  4. Identificar e documentar requisitos de forma clara e precisa ajuda a evitar erros e retrabalhos durante o ciclo de desenvolvimento. Com uma compreensão clara do que precisa ser construído, os desenvolvedores podem direcionar seus esforços de forma mais eficiente, reduzindo o tempo e os recursos desperdiçados.

  5. Melhoria da comunicação
  6. O processo de levantamento de requisitos envolve a comunicação ativa entre os stakeholders do projeto, incluindo clientes, gerentes de projeto, desenvolvedores e usuários finais. Isso ajuda a garantir que todas as partes envolvidas tenham uma compreensão comum dos objetivos e requisitos do sistema, facilitando a colaboração e minimizando mal-entendidos.

  7. Garantia da qualidade
  8. Ao definir requisitos claros desde o início do projeto, é mais fácil avaliar se o software atende aos padrões de qualidade estabelecidos. Os requisitos não funcionais, como desempenho e segurança, podem ser medidos e testados de forma objetiva, garantindo que o software atenda às expectativas dos usuários e aos requisitos do negócio.

  9. Aderência aos prazos e orçamento
  10. Um levantamento de requisitos bem executado ajuda a definir expectativas realistas em relação ao tempo e ao custo do projeto. Com uma compreensão clara dos requisitos e das restrições do projeto, é mais fácil estimar o esforço necessário e desenvolver um plano de trabalho realista.

Considerações finais:

Programar vai muito além de apenas escrever código. É um processo que exige uma compreensão profunda das necessidades do usuário, dos requisitos do sistema e das restrições do projeto. O levantamento de requisitos funcionais e não funcionais desempenha um papel fundamental nesse processo, garantindo que o software desenvolvido atenda às expectativas dos usuários, seja de alta qualidade e entregue dentro do prazo e do orçamento estabelecidos. Portanto, antes de começar a codificar, certifique-se de dedicar tempo e esforço para entender e documentar os requisitos do seu projeto.

Feito!

quarta-feira, 13 de março de 2024

Configurando servidor SSH com máxima segurança

Para começar, vamos configurar o servidor SSH no seu sistema GNU/Linux Debian ou derivados. Siga os passos abaixo:

  1. Atualização e instalação do OpenSSH Server
  2. Execute os seguintes comandos no seu terminal:

    $ sudo apt update

    $ sudo apt install openssh-server -y

  3. Configuração do OpenSSH Server
  4. Agora, vamos configurar o arquivo de configuração do SSH:

    $ sudo vim /etc/ssh/sshd_config

    Dentro do arquivo, faça as seguintes alterações:

    • Altere a porta padrão 22 para outra porta alta (acima de 1023).
    • Habilite a autenticação por chave pública, certificando-se de que a opção PubkeyAuthentication esteja definida como yes.
    • Desabilite a autenticação por senha, permitindo apenas a autenticação com chave pública.
    • Não permita senhas vazias.
    • Desabilite a conexão com o usuário root.

    Salve as alterações e feche o editor Vim pressionando ESC + :x.

    Você também pode adicionar as configurações SSH em um arquivo separado em /etc/sshd_config.d/01-ssh-config.conf.

    $ sudo vim /etc/sshd_config.d/01-ssh-config.conf

    Dentro do arquivo, adicione as mesmas configurações mencionadas anteriormente:

    PubkeyAuthentication yes
    PasswordAuthentication no
    PermitEmptyPassword no
    PermitRootLogin no
    

    Salve as alterações e feche o editor Vim pressionando ESC + :x.

  5. Reinicie o serviço SSH
  6. Depois de fazer as alterações, reinicie o serviço SSH:

    $ sudo service ssh restart
  7. Criação de usuário e par de chaves
  8. Agora, vamos criar um usuário e um par de chaves pública e privada:

    $ sudo useradd -m -s /bin/bash usuario

    $ sudo passwd usuario

    $ sudo ssh-keygen -t ed25519 -C "Minha Chave Principal"

    Você pode definir uma senha para o par de chaves (opcional).

    As chaves são salvas no diretório do usuário $HOME/.ssh, contendo os arquivos id_ed25519 (chave privada) e id_ed25519.pub (chave pública), respectivamente.

    Para permitir a conexão, você precisa adicionar a chave pública ao arquivo authorized_keys do servidor.

    $ sudo mkdir -p /home/usuario/.ssh

    $ sudo cat ~/.ssh/id_ed25519.pub > /home/reginaldo/.ssh/authorized_keys

  9. Reinicie o serviço SSH
  10. Após adicionar a chave pública, reinicie o serviço SSH novamente: $ sudo service ssh restart

  11. Teste de conexão
  12. Agora, você pode testar a conexão SSH em outra máquina conectando ao servidor que acabou de fazer a configuração do SSH, informando o usuário e senha que foram criados:

    $ ssh usuario@IPSERVIDOR

    Na primeira conexão, será solicitada a senha da chave (se você a definiu). Além disso, você será notificado sobre o fingerprint, que é salvo no arquivo ~/.ssh/know_hosts.

    Agora seu servidor SSH está configurado com máxima segurança.

Feito!

terça-feira, 12 de março de 2024

Gerando um par de chaves pública e privada e adicionando à conta do GitHub

Na era digital, a segurança é uma prioridade fundamental, especialmente ao lidar com dados sensíveis e comunicações online. Uma maneira de garantir a segurança em suas interações online é por meio do uso de criptografia de chaves públicas e privadas. Neste artigo, vamos explorar como gerar um par de chaves e adicionar à sua conta do GitHub, fortalecendo a segurança de suas operações na plataforma.

O que são chaves pública e privada?

As chaves pública e privada formam a base da criptografia de chave assimétrica. Elas são usadas para criptografar e descriptografar dados, assinar e verificar assinaturas digitais e autenticar identidades online de forma segura.

Chave Pública: É compartilhada abertamente e usada para criptografar dados ou verificar assinaturas digitais. Qualquer pessoa pode criptografar mensagens usando a chave pública, mas apenas a chave privada correspondente pode descriptografar essas mensagens.

Chave Privada: Deve ser mantida em segredo. É usada para descriptografar mensagens criptografadas com a chave pública correspondente ou para assinar digitalmente documentos. É crucial proteger a chave privada para garantir a segurança das comunicações.

Gerando um par de chaves

Para gerar um par de chaves, você pode usar o algoritmo de criptografia RSA (Rivest-Shamir-Adleman) com a ajuda do utilitário ssh-keygen, amplamente disponível em sistemas Unix-like, como Linux e macOS, bem como no Windows por meio do Git Bash.

Abra o terminal ou Git Bash: Dependendo do sistema operacional que você está usando, abra o terminal ou Git Bash.

Execute o comando ssh-keygen: Este comando irá guiar você através do processo de geração das chaves. Por padrão, ele criará um par de chaves RSA com 2048 bits de comprimento.

ssh-keygen -t rsa -b 2048 -C "seuemail@dominio.com"

Substitua "seuemail@dominio.com" pelo seu endereço de e-mail associado à sua conta do GitHub.

Escolha um local para salvar as chaves: O ssh-keygen perguntará onde você deseja salvar o par de chaves. Você pode optar por salvar no local padrão ou escolher um diretório específico.

Defina uma senha (opcional): Você pode adicionar uma senha para proteger sua chave privada. Isso fornecerá uma camada adicional de segurança.

Adicionando a chave pública ao GitHub

Agora que você gerou o par de chaves, é hora de adicionar a chave pública à sua conta do GitHub para autenticar suas operações.

Copie a chave pública: Use um editor de texto ou comando cat para exibir o conteúdo da sua chave pública.

cat ~/.ssh/id_rsa.pub

Copie todo o conteúdo exibido no terminal.

Acesse as configurações do GitHub: Faça login na sua conta do GitHub e acesse as configurações do perfil.

Navegue até as configurações de SSH e GPG keys: No menu lateral esquerdo, clique em "SSH and GPG keys".

Adicione uma nova chave SSH: Clique em "New SSH key" (Nova chave SSH).

Cole a chave pública: Cole o conteúdo da sua chave pública no campo apropriado.

Dê um nome à chave: Dê um nome descritivo à chave para identificá-la mais tarde, caso você tenha várias chaves.

Adicionar chave: Clique em "Add SSH key" (Adicionar chave SSH) para salvar a chave.

Considerações finais:

Gerar e adicionar um par de chaves pública e privada à sua conta do GitHub é uma prática recomendada para aumentar a segurança das suas interações na plataforma. Essas chaves são usadas para autenticar operações remotas, como push e pull de repositórios, sem a necessidade de inserir suas credenciais de usuário e senha a cada interação. Além disso, a criptografia de chave pública e privada oferece uma camada adicional de segurança, garantindo que suas comunicações online sejam protegidas contra acesso não autorizado.

Ao seguir os passos descritos neste artigo, você estará fortalecendo a segurança da sua conta do GitHub e das suas atividades de desenvolvimento colaborativo. Nunca subestime a importância da segurança cibernética em um mundo cada vez mais conectado e digitalizado.

Feito!