Spell check

This commit is contained in:
Thanwer 2024-11-03 11:11:21 -03:00
parent 41abe8d19b
commit 8735ceb930
9 changed files with 45 additions and 45 deletions

View File

@ -41,7 +41,7 @@ O padrão deve nos atender, então vamos pular isso por enquanto.
Depois, temos o arquivo `jail.conf` , que é onde configuramos as nossas "jails" como o nome sugere. Depois, temos o arquivo `jail.conf` , que é onde configuramos as nossas "jails" como o nome sugere.
Aqui vamos fazer algumas alterações, primeiro vamos criar um arquivo `jail.local` com o seguinte conteudo: Aqui vamos fazer algumas alterações, primeiro vamos criar um arquivo `jail.local` com o seguinte conteúdo:
``` ```
[DEFAULT] [DEFAULT]
@ -58,9 +58,9 @@ mode=aggressive
action = iptables[name=SSH, port=22, protocol=tcp] action = iptables[name=SSH, port=22, protocol=tcp]
``` ```
As configurações são autoexplicativas, na seção `[DEFAULT]` mudamos alguns parametros, como o tempo que devemos banis os atacantes, e definimos IPs confiaveis. Lembre-se de alterar os valores para os que fazem sentido para o seu ambiente, principalmente o `ignoreip`. As configurações são autoexplicativas, na seção `[DEFAULT]` mudamos alguns parâmetros, como o tempo que devemos banis os atacantes, e definimos IPs confiáveis. Lembre-se de alterar os valores para os que fazem sentido para o seu ambiente, principalmente o `ignoreip`.
Invista seu tempo para estudar e melhorar esses parametros. Invista seu tempo para estudar e melhorar esses parâmetros.
## Ativando e testando o fail2ban ## Ativando e testando o fail2ban
@ -87,6 +87,6 @@ Hoje eu mostrei como proteger o seu serviço SSH em uma maquina GNU/Linux, mas n
Voce pode até mesmo integrar a proteção do fail2ban com o [Cloudflare](https://github.com/nesrual/fail2ban-cloudflare!) se voce usa os serviços deles! Voce pode até mesmo integrar a proteção do fail2ban com o [Cloudflare](https://github.com/nesrual/fail2ban-cloudflare!) se voce usa os serviços deles!
Eu sugiro que voce veja o diretório `/etc/fail2ban/filter.d`, que contem os filtros default para varios serviços populares, como Apache, Asterisk, serviços de servidor de e-mail, etc... Eu sugiro que voce veja o diretório `/etc/fail2ban/filter.d`, que contem os filtros default para vários serviços populares, como Apache, Asterisk, serviços de servidor de e-mail, etc...
Tambem leia a [documentação oficial](https://github.com/fail2ban/fail2ban/wiki). Também leia a [documentação oficial](https://github.com/fail2ban/fail2ban/wiki).

View File

@ -1,7 +1,7 @@
+++ +++
date = '2024-10-19T23:00:41-03:00' date = '2024-10-19T23:00:41-03:00'
title = 'First Post' title = 'First Post'
description = "A simple bolog post about using Hugo as a framework for Thanwer's Blog" description = "A simple blog post about using Hugo as a framework for Thanwer's Blog"
tags = [ tags = [
"webserver", "webserver",
"Hugo", "Hugo",
@ -22,7 +22,7 @@ The fact that it generates static files makes this very performant, and at the s
## The hosting ## The hosting
Well, since I have one VM on [Hertzner Cloud](https://www.hetzner.com/) for my personal use, I just hosted this blog together on the same VM, since I believe this will not be generating a lot of traffic Well, since I have one VM on [Hetzner Cloud](https://www.hetzner.com/) for my personal use, I just hosted this blog together on the same VM, since I believe this will not be generating a lot of traffic
You can also use [Github Pages](https://pages.github.com/) or [Cloudflare Pages](https://developers.cloudflare.com/pages/framework-guides/deploy-a-hugo-site/) by following simple instructions! You can also use [Github Pages](https://pages.github.com/) or [Cloudflare Pages](https://developers.cloudflare.com/pages/framework-guides/deploy-a-hugo-site/) by following simple instructions!
@ -38,4 +38,4 @@ hugo && rsync -avz --delete public/ shinobi.thanwer.com:/srv/www/blog/
## The Conclusion ## The Conclusion
From my experience until now (which is only the contents of this post btw...), this platform seems to meet my expectationsm I will continue to bring move topics and keep you guys posted! From my experience until now (which is only the contents of this post btw...), this platform seems to meet my expectations I will continue to bring move topics and keep you guys posted!

View File

@ -17,15 +17,15 @@ Eu estava procurando algo simples e fácil de manter, pois não quero gastar mui
## A ferramenta ## A ferramenta
Eu encontrei o [Hugo](https://gohugo.io/) que é um gerador de sites estaticos que lê conteudo escrito em Markdown e gera arquivos estaticos em HTML. Eu encontrei o [Hugo](https://gohugo.io/) que é um gerador de sites estáticos que lê conteúdo escrito em Markdown e gera arquivos estáticos em HTML.
O fato dele gerar arquivos estaticos o torna muito performante, e ao mesmo tempo muito simples de usar e manter. O fato dele gerar arquivos estáticos o torna muito rápido, e ao mesmo tempo muito simples de usar e manter.
## A hospedagem ## A hospedagem
Bom, como eu já tenho uma VM na [Hertzner Cloud](https://www.hetzner.com/) para meu uso pessoal, eu decidi simplesmente hospedar esse blog na mesma VM, já que eu acredito que esse site não irá atrair muito tráfego. Bom, como eu já tenho uma VM na [Hetzner Cloud](https://www.hetzner.com/) para meu uso pessoal, eu decidi simplesmente hospedar esse blog na mesma VM, já que eu acredito que esse site não irá atrair muito tráfego.
Você tambem pode usar o [Github Pages](https://pages.github.com/) ou o [Cloudflare Pages](https://developers.cloudflare.com/pages/framework-guides/deploy-a-hugo-site/) seguindo instruções simples! Você também pode usar o [Github Pages](https://pages.github.com/) ou o [Cloudflare Pages](https://developers.cloudflare.com/pages/framework-guides/deploy-a-hugo-site/) seguindo instruções simples!
## O deploy ## O deploy
@ -39,4 +39,4 @@ hugo && rsync -avz --delete public/ shinobi.thanwer.com:/srv/www/blog/
## Conclusões ## Conclusões
Pela minha experiência até agora (que foi apenas o conteudo dessa pagina a proposito...), essa plataforma parece atender minhas espectativas, vou continuar trazendo mais conteúdo e mantenho vocês informados. Pela minha experiência até agora (que foi apenas o conteúdo dessa pagina a propósito...), essa plataforma parece atender minhas expectativas, vou continuar trazendo mais conteúdo e mantenho vocês informados.

View File

@ -158,7 +158,7 @@ For IPv6, the syntax is the same, you mostly need to change the command from `ip
The main difference is the ICMP protocol, you really need to allow ICMPv6 to your server function properly. The main difference is the ICMP protocol, you really need to allow ICMPv6 to your server function properly.
Here is a good starting point, where we explicity accept ICMPv6 control packets, while droppping all others. Here is a good starting point, where we explicitly accept ICMPv6 control packets, while dropping all others.
```bash ```bash
ip6tables -A INPUT -p icmpv6 --icmpv6-type echo-request -j ACCEPT ip6tables -A INPUT -p icmpv6 --icmpv6-type echo-request -j ACCEPT

View File

@ -16,7 +16,7 @@ Nesta publicação, vou mostrar algumas configurações básicas do iptables par
## Oque é iptables? ## Oque é iptables?
iptables é um utilitario de firewall por linha de comando que utiliza "chains" para gerenciar o tráfego. As "chains" são basicamente uma lista de regras que aplicam para pacotes de entrada ou saida. Voce pode fazer as regras baseadas em IPs de origem, portas e protocolos, por exemplo. iptables é um utilitário de firewall por linha de comando que utiliza "chains" para gerenciar o tráfego. As "chains" são basicamente uma lista de regras que aplicam para pacotes de entrada ou saída. Voce pode fazer as regras baseadas em IPs de origem, portas e protocolos, por exemplo.
Tornar um servidor seguro é a primeira prioridade para qualquer sysadmin, e firewalls são uma das camadas mais importantes de defesa. Com iptables voce pode: Tornar um servidor seguro é a primeira prioridade para qualquer sysadmin, e firewalls são uma das camadas mais importantes de defesa. Com iptables voce pode:
@ -31,7 +31,7 @@ Eu recomendo fortemente que voce leia mais sobre o fluxo de pacotes do iptables
Recomendo que voce inicie por esses diagramas muito bem feitos nesse gist do [nerdalert no GitHub](https://gist.github.com/nerdalert/a1687ae4da1cc44a437d) Recomendo que voce inicie por esses diagramas muito bem feitos nesse gist do [nerdalert no GitHub](https://gist.github.com/nerdalert/a1687ae4da1cc44a437d)
## Comandos basicos do iptables ## Comandos básicos do iptables
Vamos começar com uma overview dos comandos essenciais do iptables: Vamos começar com uma overview dos comandos essenciais do iptables:
@ -63,7 +63,7 @@ ip6tables-restore < /etc/iptables/rules.v6
## Configurar iptables em um servidor novo ## Configurar iptables em um servidor novo
Agora, vamos passar por algumas regras basicas que voce pode aplicar no seu servidor logo de inicio. Vamos permitir trafego essencial como SSH e HTTP/HTTPs e bloquear todo o resto. Agora, vamos passar por algumas regras básicas que voce pode aplicar no seu servidor logo de inicio. Vamos permitir trafego essencial como SSH e HTTP/HTTPs e bloquear todo o resto.
### Passo 1: Limpar regras existentes ### Passo 1: Limpar regras existentes
@ -75,11 +75,11 @@ iptables -F
Isso nos garante que estamos iniciando em um estado limpo. Isso nos garante que estamos iniciando em um estado limpo.
Tome cuidado com os proximos comandos, para voce não se trancar para fora do seu proprio servidor! Isso já aconteceu com todos sysadmins mais cedo ou mais tarde. A forma mais simples de garantir que isso não ocorra é fazendo tudo isso fisicamente, ou através de uma conexão por KVM por exemplo. Tome cuidado com os próximos comandos, para voce não se trancar para fora do seu próprio servidor! Isso já aconteceu com todos sysadmins mais cedo ou mais tarde. A forma mais simples de garantir que isso não ocorra é fazendo tudo isso fisicamente, ou através de uma conexão por KVM por exemplo.
### Passo 2: Definir as politicas default ### Passo 2: Definir as politicas default
Agora, vamos definir o comportamento padrão para conexões de entrada (INPUT), saida (OUTPUT) e encaminhadas (FORWARD). Por padrão, é uma boa ideia bloquear toda a entrada e permitir toda a saida. Agora, vamos definir o comportamento padrão para conexões de entrada (INPUT), saída (OUTPUT) e encaminhadas (FORWARD). Por padrão, é uma boa ideia bloquear toda a entrada e permitir toda a saída.
```bash ```bash
iptables -P INPUT DROP iptables -P INPUT DROP
@ -87,11 +87,11 @@ iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT iptables -P OUTPUT ACCEPT
``` ```
Isso faz com que todas as conexões sejam dropadas a menos que uma regra as permita. O trafego de saida por sua vez, é liberado por padrão. Isso faz com que todas as conexões sejam dropadas a menos que uma regra as permita. O trafego de saída por sua vez, é liberado por padrão.
### Passo 3: Permitir trafego SSH (Porta 22) ### Passo 3: Permitir trafego SSH (Porta 22)
Voce vai precisar de SSH para acessar o seu servidor, então vamos permitir trafego na porta 22. É importante que voce proteja esse acesso permitindo que somente seus IPs confiaveis possam acessar, por simplicitade vamos iniciar permitindo todas as conexões SSH: Voce vai precisar de SSH para acessar o seu servidor, então vamos permitir trafego na porta 22. É importante que voce proteja esse acesso permitindo que somente seus IPs confiáveis possam acessar, por simplicidade vamos iniciar permitindo todas as conexões SSH:
```bash ```bash
iptables -A INPUT -p tcp --dport 22 -j ACCEPT iptables -A INPUT -p tcp --dport 22 -j ACCEPT
@ -99,9 +99,9 @@ iptables -A INPUT -p tcp --dport 22 -j ACCEPT
O "-A" significa "Append", isso insere a regra no final da lista, para colocar no topo use a flag "-I". O "-A" significa "Append", isso insere a regra no final da lista, para colocar no topo use a flag "-I".
É uma boa ideia sempre adicionar comentarios nas regras, para no futuro facilitar o nosso troubleshooting. É uma boa ideia sempre adicionar comentários nas regras, para no futuro facilitar o nosso troubleshooting.
No iptables, podemos adicionar comentarios com a seguinte sintaxe: No iptables, podemos adicionar comentários com a seguinte sintaxe:
```bash ```bash
iptables -m comment --comment "Seu comentario aqui" iptables -m comment --comment "Seu comentario aqui"
@ -125,7 +125,7 @@ iptables -A INPUT -m comment --comment "Permite QUIC" -p udp --dport 443 -j ACCE
Isso permite o trafego ao seu servidor via HTTP (porta 80) e HTTPS (porta 443). Isso permite o trafego ao seu servidor via HTTP (porta 80) e HTTPS (porta 443).
Note que eu adicionei a porta 443/udp, que é para o protocolo QUIC, QUIC é um protocolo de camada de transporte desenvolvido pelo Google, feito para ser mais rapido, e mais seguro combinando features do TCP, TLS e HTTP/2 para melhorar a latencia e performance. Eu recomendo que voce pesquise mais sobre esse assunto, talvez eu faça um artigo sobre ele no futuro. Note que eu adicionei a porta 443/udp, que é para o protocolo QUIC, QUIC é um protocolo de camada de transporte desenvolvido pelo Google, feito para ser mais rápido, e mais seguro combinando features do TCP, TLS e HTTP/2 para melhorar a latência e performance. Eu recomendo que voce pesquise mais sobre esse assunto, talvez eu faça um artigo sobre ele no futuro.
### Passo 5: Permitir trafego loopback ### Passo 5: Permitir trafego loopback
@ -135,9 +135,9 @@ O seu servidor precisa se comunicar com ele mesmo pela interface loopback. Garan
iptables -A INPUT -m comment --comment "Permite trafego loopback" -i lo -j ACCEPT iptables -A INPUT -m comment --comment "Permite trafego loopback" -i lo -j ACCEPT
``` ```
### Passo 6: Dropar pacotes invalidos ### Passo 6: Dropar pacotes inválidos
Pacotes invalidos podem ser erros de configuração ou até mesmo ataques, então é uma boa pratica sempre dropar: Pacotes inválidos podem ser erros de configuração ou até mesmo ataques, então é uma boa pratica sempre dropar:
```bash ```bash
iptables -A INPUT -m conntrack --ctstate INVALID -j DROP iptables -A INPUT -m conntrack --ctstate INVALID -j DROP
@ -145,7 +145,7 @@ iptables -A INPUT -m conntrack --ctstate INVALID -j DROP
### Passo 7: Permitir conexões estabelecidas e relacionadas ### Passo 7: Permitir conexões estabelecidas e relacionadas
Para permitir respostar a conexões de saida (como quando o seu servidor solicita algum update), voce vai precisar aplicar essa regra: Para permitir respostas a conexões de saída (como quando o seu servidor solicita algum update), voce vai precisar aplicar essa regra:
```bash ```bash
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
@ -190,7 +190,7 @@ Depois de configurar todas as suas regras, é bom sempre valida-las conectando e
## Sumario ## Sumario
Em sumario, essas são algumas regras basicas para iniciar, sempre revise e altere conforme a sua necessidade! Em sumario, essas são algumas regras básicas para iniciar, sempre revise e altere conforme a sua necessidade!
### IPv4 ### IPv4
@ -226,4 +226,4 @@ ip6tables-save > /etc/iptables/rules.v6
## Conclusão ## Conclusão
Parabens! Voce acabou de configurar o iptables em seu novo servidor GNU/Linux. Por bloquear todo o trafego exceto o que é confiavel voce adicionou uma camada de segurança a seu servidor. Parabéns! Voce acabou de configurar o iptables em seu novo servidor GNU/Linux. Por bloquear todo o trafego exceto o que é confiável voce adicionou uma camada de segurança a seu servidor.

View File

@ -8,7 +8,7 @@ tags = [
] ]
+++ +++
I heard too many times a work coleague, or a third-party vendor telling me "there is something wrong on the network here", or "This port isn't open!". I heard too many times a work colleague, or a third-party vendor telling me "there is something wrong on the network here", or "This port isn't open!".
You can use websites to try to test for open ports, a quick Google search should yield you a couple good results, but sometimes that is not enough. You can use websites to try to test for open ports, a quick Google search should yield you a couple good results, but sometimes that is not enough.
@ -46,7 +46,7 @@ Netcat is a very simple, but very powerful tool for those cases. With that, you
### Installing ### Installing
The instalation is very simple! On Debian systens you can do it with the command: The installation is very simple! On Debian systems you can do it with the command:
```bash ```bash
$ sudo apt install netcat $ sudo apt install netcat
``` ```
@ -58,12 +58,12 @@ I invite you to read the [nc man page](https://linux.die.net/man/1/nc).
The main options we need to use are: The main options we need to use are:
* -p : This specifies which port should we listen to. * -p : This specifies which port should we listen to.
* -k : This makes netcat to keep listening after a client disconects. * -k : This makes netcat to keep listening after a client disconnects.
* -u : Use UDP instead of TCP * -u : Use UDP instead of TCP
### Use cases ### Use cases
#### Check for network comunication #### Check for network communication
Listen on port 2000: Listen on port 2000:
```bash ```bash
@ -78,7 +78,7 @@ $ nc localhost 2000
``` ```
On both terminals you should see as a chat app working, this is being transmited over the network! On both terminals you should see as a chat app working, this is being transmitted over the network!
See an example of this working: See an example of this working:

View File

@ -11,7 +11,7 @@ canonical = "/posts/netcat"
Já ouvi muitas vezes de algum colega de trabalho, ou de algum prestador de serviços frases como "Tem algo de errado com a rede", ou "Essa porta não está aberta!". Já ouvi muitas vezes de algum colega de trabalho, ou de algum prestador de serviços frases como "Tem algo de errado com a rede", ou "Essa porta não está aberta!".
Voce pode usar testes online para verificar as portas abertas, uma rapida pesquisa no Google vai te trazer resultados bons, porem nem sempre isso é o suficiente. Voce pode usar testes online para verificar as portas abertas, uma rápida pesquisa no Google vai te trazer resultados bons, porem nem sempre isso é o suficiente.
## O problema ## O problema
Vamos supor que voce seguiu meu outro post sobre [restringir por endereço de origem no iptables]({{< ref "/posts/iptables-basics" >}} "Iptables basics"), nesse caso essas ferramentas aleatórias não vão lhe ajudar, então voce pode usar o nmap! Vamos supor que voce seguiu meu outro post sobre [restringir por endereço de origem no iptables]({{< ref "/posts/iptables-basics" >}} "Iptables basics"), nesse caso essas ferramentas aleatórias não vão lhe ajudar, então voce pode usar o nmap!
@ -34,7 +34,7 @@ Nmap done: 1 IP address (1 host up) scanned in 0.39 seconds
Como voce pode ver, a parte importante é o -p 80, que especifica a porta que queremos testar, 80 nesse caso, e o ultimo argumento é o host que estamos escaneando. Como voce pode ver, a parte importante é o -p 80, que especifica a porta que queremos testar, 80 nesse caso, e o ultimo argumento é o host que estamos escaneando.
Agora vamos supor que a outra pessoa está configurando uma central telefonica, que é um exemplo clássico... Eu tenho muitas historias para contar sobre essa galera da telefonia... Por exemplo, ele pode ter errado uma configuração simples, como o gateway ou a mascara de rede, e isso vai fazer com que o seu serviço não funcione. Ele vai fazer os testes que expliquei acima e em vez da porta aparecer como "open" ela vai dizer "filtered". Agora vamos supor que a outra pessoa está configurando uma central telefônica, que é um exemplo clássico... Eu tenho muitas historias para contar sobre essa galera da telefonia... Por exemplo, ele pode ter errado uma configuração simples, como o gateway ou a mascara de rede, e isso vai fazer com que o seu serviço não funcione. Ele vai fazer os testes que expliquei acima e em vez da porta aparecer como "open" ela vai dizer "filtered".
Com isso ele vai ter o argumento pronto, e vai culpar a sua rede por isso. Como podemos provar que as nossas regras de firewall estão corretas e funcionando? Com isso ele vai ter o argumento pronto, e vai culpar a sua rede por isso. Como podemos provar que as nossas regras de firewall estão corretas e funcionando?
@ -78,7 +78,7 @@ $ nc localhost 2000
``` ```
Em ambos os terminais voce deve ver algo semelhante a um chat funcionando, isso é transmitido atravéz da rede! Em ambos os terminais voce deve ver algo semelhante a um chat funcionando, isso é transmitido através da rede!
Veja um exemplo disso funcionando: Veja um exemplo disso funcionando:

View File

@ -15,7 +15,7 @@ On top of iptables rules and fail2ban jails, we have a couple parameters that we
## SSH authentication methods ## SSH authentication methods
By default, SSH allows for password authentication for all users except root, which is a good starting point, but we can improve this behaviour. By default, SSH allows for password authentication for all users except root, which is a good starting point, but we can improve this behavior.
### Key authentication ### Key authentication
@ -34,9 +34,9 @@ PermitRootLogin no
If you would like to have yet another level of security, you can implement [2FA with SSH using Google Authenticator](https://docs.vultr.com/how-to-use-two-factor-authentication-with-sudo-and-ssh-on-linux-with-google-authenticator). If you would like to have yet another level of security, you can implement [2FA with SSH using Google Authenticator](https://docs.vultr.com/how-to-use-two-factor-authentication-with-sudo-and-ssh-on-linux-with-google-authenticator).
### Disable unnused authentication methods ### Disable unused authentication methods
By default, OpenSSH server comes with more authentication methods that you problaly are not using enabled by default. You can disable them to reduce the attack surface of your server: By default, OpenSSH server comes with more authentication methods that you probably are not using enabled by default. You can disable them to reduce the attack surface of your server:
```bash ```bash
ChallengeResponseAuthentication no ChallengeResponseAuthentication no

View File

@ -12,7 +12,7 @@ canonical = "/posts/ssh-hardening"
Como voce pode ver no meu ultimo post sobre [fail2ban]({{< ref "/posts/fail2ban-basics" >}} "Fail2ban basics"), o serviço SSH é um alvo popular de ataques de força bruta, nós devemos tomar nosso tempo para melhorar a segurança de nossos servidores. Como voce pode ver no meu ultimo post sobre [fail2ban]({{< ref "/posts/fail2ban-basics" >}} "Fail2ban basics"), o serviço SSH é um alvo popular de ataques de força bruta, nós devemos tomar nosso tempo para melhorar a segurança de nossos servidores.
Além de regras do iptabels e jails do fail2ban, temos alguns parametros que podemos ajustar nos nossos servidores para termos mais uma medida de proteção. Além de regras do iptables e jails do fail2ban, temos alguns parâmetros que podemos ajustar nos nossos servidores para termos mais uma medida de proteção.
## Métodos de autenticação SSG ## Métodos de autenticação SSG
@ -20,7 +20,7 @@ Por padrão, o serviço SSH permite autenticação por senha para todos os usuá
### Autenticação por chaves ### Autenticação por chaves
O primeiro passo que voce pode fazer é desativar a autenticação por senha e utilizar apenas autenticação por chaves. Isso vai reduzir muito a eficiencia de ataques de força bruta já que chaves SSH são muito mais dificeis de quebrar do que senhas. O primeiro passo que voce pode fazer é desativar a autenticação por senha e utilizar apenas autenticação por chaves. Isso vai reduzir muito a eficiência de ataques de força bruta já que chaves SSH são muito mais difíceis de quebrar do que senhas.
Eu não vou mostrar como fazer isso, já que existem muitos tutoriais bons na internet sobre esse assunto, [esse do Github por exemplo](https://docs.github.com/en/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent). Eu não vou mostrar como fazer isso, já que existem muitos tutoriais bons na internet sobre esse assunto, [esse do Github por exemplo](https://docs.github.com/en/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent).
@ -37,7 +37,7 @@ Se voce quiser mais um nivel de segurança, voce pode implementar [autenticaçã
### Desativar métodos de autenticação não utilizados ### Desativar métodos de autenticação não utilizados
Por padrão o servidor SSH vem com varios metodos de autenticação habilitados que voce provavelmente não utiliza. Voce pode desabilita-los para reduzir a superficie de ataque do seu servidor: Por padrão o servidor SSH vem com vários métodos de autenticação habilitados que voce provavelmente não utiliza. Voce pode desabilita-los para reduzir a superfície de ataque do seu servidor:
```bash ```bash
ChallengeResponseAuthentication no ChallengeResponseAuthentication no
@ -47,13 +47,13 @@ GSSAPIAuthentication no
## Melhorar algoritmos de criptografia do SSH ## Melhorar algoritmos de criptografia do SSH
Seguinndo [esses guias](https://www.sshaudit.com/hardening_guides.html) voce pode desabilitar algoritmos de autenticação e criptografia vulneraveis e priorizar os mais fortes (AES-256-GCM, chacha20-poly1305). Seguindo [esses guias](https://www.sshaudit.com/hardening_guides.html) voce pode desabilitar algoritmos de autenticação e criptografia vulneraveis e priorizar os mais fortes (AES-256-GCM, chacha20-poly1305).
Quando voce terminar, verifique com a ferramenta [ssh-audit](https://github.com/jtesta/ssh-audit). Quando voce terminar, verifique com a ferramenta [ssh-audit](https://github.com/jtesta/ssh-audit).
## Restringir acessos SSH ## Restringir acessos SSH
Além das regrad do iptables, o arquivo `/etc/ssh/sshd_config` pode aplicar restrições baseadas em usuário, grupo e/ou IP de origem. Além das regras do iptables, o arquivo `/etc/ssh/sshd_config` pode aplicar restrições baseadas em usuário, grupo e/ou IP de origem.
Por exemplo, para permitir conexões por IP, voce pode adicionar conforme os seguintes exemplos: Por exemplo, para permitir conexões por IP, voce pode adicionar conforme os seguintes exemplos:
```bash ```bash