Configurando o PuTTY - Opções Avançadas - Parte 2

Continuando com o artigo anterior sobre configurações do PuTTY (a primeira parte você pode conferir aqui), vamos ver mais algumas opções interessantes.

8 - Connection -> SSH
Remote Command (Comando Remoto):
Permite o envio de um comando para o servidor remoto. É aconselhável enviar o caminho completo para o comando, e o executável em questão precisa existir no servidor de destino.

Enable Compression (Habilitar Compressão):
Habilita a compressão de dados durante a conexão. Útil para links lentos.

Preferred SSH protocol version (Versão preferida do protocolo SSH):
Permite selecionar qual o protocolo de versão SSH a ser utilizado. O padrão é tentar utilizar o SSH-2 e caso o servidor não aceite, "cair" para o SSH-1. Marcar as opções "1 only" ou "2 only" força o uso da versão selecionada e desconecta se o servidor não aceitar/suportar sua seleção.


9 - Connection -> SSH -> Auth
Private Key File for authentication (Arquivo de chave privada para autenticação):
Permite selecionar um arquivo de chave privada do PuTTY (*.ppk) para ser utilizado para autenticação. Pode ser utilizada esta opção mesmo que se esteja utilizando o Pageant. Neste caso, são tentadas primeiramete as chaves do Pageant e em seguida, em caso de falha, é tentada a chave especificada aqui.


10 - Connection -> SSH -> Tunnels
Port Forwarding (Encaminhamento de Portas):
Essa é uma característica interessante e muito útil do PuTTY. Com ela, você consegue encaminhar pacotes a portas específicas do servidor ou até mesmo para outras máquinas presentes na rede do servidor (e vice-versa, ou seja, permitir que máquinas da rede remota acessem hosts da sua rede) . Observe a figura abaixo para um melhor entendimento:


A primeira linha da caixa "Forwarded Ports" diz o seguinte: "L8087 172.16.100.137:8087". Isso significa: "tudo o que chegar na porta 8087 da máquina local (a sua máquina, onde o PuTTY é executado) deve ser encaminhado para a porta 8087 da máquina 172.16.100.137". A próxima linha define um comando similar, para o mesmo host. A última linha diz "tudo o que chegar na porta 1433 da máquina local deve ser encaminhado para a porta 1433 da máquina 172.16.100.247". Isso mostra que as máquinas de destino não precisam ser exatamente a máquina onde se conecta. Caso a opção "Local ports accept connections from other hosts" esteja marcada, o PuTTY aceitará conexões de outras máquinas de sua rede, e agirá como um roteador, trafegando os pacotes através de uma conexão segura. A opção "Remote ports do the same" faz o mesmo, mas para a rede remota (permite que várias máquinas da rede remota acessem a sua rede, através das portas encaminhadas).
Criar um encaminhamento é simples:


  1. Digite uma porta no campo "Source port". Essa será a porta que ouvirá as conexões
  2. Digite no campo "Destination" o endereço IP e a porta de destino, no formato XXX.XXX.XXX.XXX:YYYY
  3. Clique no botão "Add" e pronto. 
Esse procedimento criou um encaminhamento da sua máquina para a máquina/rede remota. Para fazer o oposto, repita o procedimento mas selecione a opção "Remote" antes de clicar em "Add". Para que outras máquinas na sua rede possam fazer uso do encaminhamento, marque a opção "Local ports accept connections from other hosts", conforme dito acima. E para que as máquinas da rede remota façam o mesmo marque a opção "Remote ports do the same". Ah, também vale lembrar que a maioria dessas opções pode ser alterada com a conexão já estabelecida. Para isso, basta clicar com o botão direito na barra da janela do PuTTY e em seguida na opção "Change Settings", fazer as alterações desejadas e clicar em Apply.

Instalação do Debian passo-a-passo - Parte 4 (Final)

Finalizando essa série de artigos sobre a instalação do Debian. Para ver os artigos anteriores da série, veja os links abaixo:


Parte 1 - Preparação e Boot
Parte 2 - Localidade e Rede
Parte 3 - Particionamento e usuários

Sistema básico:
Após a configuração dos usuários, o sistema faz a instalação do sistema básico. Nada para se fazer aqui a não ser esperar ...


Configuração do sistema de pacotes:
O Debian trabalha com o conceito de repositórios. Um repositório é uma coleção de pacotes de software pré-compilado (também existem repositórios de pacotes de código fonte), organizados de uma maneira especial. Existem dezenas (ou seriam centenas) de repositórios oficiais espalhados pelo mundo (vários deles no Brasil), sincronizados com os repositórios oficiais. Também existe o repositório de atualizações de segurança, que possui as atualizações de segurança dos pacotes e é disponibilizado apenas pelo projeto (não existem mirrors). Os repositórios podem ser disponibilizados na internet via HTTP/FTP, em rede local (também via HTTP/FTP), em disco (local) ou em CD/DVD. O CD de instalação possui um repositório que é configurado automaticamente na instalação. Uma máquina pode possuir diversos repositórios diferente, e qunado for solicitada a instalação de um pacote, o sistema APT ( de Advanced Packaging Tool - Ferramenta Avançada de Pacotes) verá qual repositório possui a versão mais atual desse software e a instalará (a menos que você force a instalação de uma versão específica), bem como a todas as suas dependências. Na próxima tela, o instalador pergunta se você deseja utilizar um espelho de rede. Normalmente responde-se sim a essa pergunta, porém em alguns casos (por exemplo, se não houver uma conexão de internet disponível) você pode escolher não e acrescentar os repositórios mais tarde. Caso você diga não, salte para o próximo tópico  e depois veja o post de pós-instalação , onde mostro algumas configurações de repositório que utilizo.


Conforme foi dito antes, existem os repositórios oficiais e diversos mirrors (espelhos) deles ao redor do mundo. Normalmente, utilizando-se um mirror próximo a você aumenta a velocidade de download. A próxima tela solicita que você selecione um país, para ver a lista de servidores disponíveis no país selecionado.

Em cada país existem diversos servidores disponíveis. O próprio instalador recomenda que se utilize o servidor no formato ft..debian.org (no caso do Brasil seria ftp.br.debian.org). No entanto eu já tive alguns problemas com esse repositório: ele era muito instável e me deixou na mão diversas vezes. Como deixei de utilizá-lo a alguns anos não sei se esses problemas persistem. Como eu já disse antes, costumo utilizar o mirror da Universidade de São Paulo (USP), ou seja, o linux.iq.usp.br, embora a qualidade dos outros mirrors também é elevada.
A próxima tela permite configurar um servidor proxy, caso sua rede utilize um. Caso não utilize um proxy, deixe em branco e continue a instalação. O sistema tentará ler o repositório. Caso não consiga, você pode selecionar outro repositório. Caso haja uma nova falha, cheque as configurações de rede, principalmente se elas foram entradas manualmente. Cheque também as configurações de proxy. Se mesmo assim não conseguir, ignore a adição de repositórios (você pode concluir a instalação sem isso e acertar isso mais tarde).


Concurso de Popularidade dos Pacotes:
Os desenvolvedores do Debian querem saber quais os pacotes mais utilizados. A próxima tela pergunta se as informações sobre os pacotes utilizados por seu sistema podem ser enviadas aos desenvolvedores do Debian, para melhorar a distribuição, tentando colocar os pacotes mais utilizados no primeiro CD. A escolha é sua (ou da sua chefia ...)


Seleção de software:
A próxima tela permite instalar pacotes de software pré-selecionados de acordo com a função que pretende-se dar ao equipamento. Não costumo utilizar nenhum deles. Prefiro desmarcar todos (selecionando a opção correspondente e pressionando a barra de espaço), até mesmo o sistema básico, e posterior à instalação instalar apenas os pacotes desejados.
Obs: Caso você tenha escolhido não adicionar um repositório nos passos anteriores, essa tela pode conter menos opções.


Instalação do gerenciador de Boot:
O próximo passo é a instalação do sistema gerenciador de boot. O gerenciador default atualmente é o GRUB. Caso você prefira instalar o LILO (outro gerenciador de boot), selecione voltar e escolha a opção correspondente no menu. 


O Fim (fim? agora é que a brincadeira começa de verdade!!):
A instalação do Debian está concluída. Remova o CD do drive e reinicie o computador. Caso você tenha seguido este tutorial, seu sistema vai esta semelhante ao exibido na segunda imagem. Note que a instalação mínima consome apenas 315Mb no HD.


Não deixe de conferir o post sobre pós-instalação do Debian , onde descrevo algumas tarefas que melhoram a performance e a usabilidade do sistema. Vale também ver sobre as configurações de SSH para aumentar a segurança , caso pretenda utilizar essa tecnologia. 

Com isso, termina essa série de posts. Caso tenha alguma dúvida ou sugestão, basta comentar. Um abraço e até a próxima.

Aumentando a segurança do seu SSH

O protocolo SSH é razoavelmente seguro por si próprio. No entanto, existem alguns procedimentos que podemos fazer com o objetivo de aumentar a segurança em nossos servidores. Este artigo lista essas ações, bem como quais alterações devem ser feitas no arquivo de configuração do SSH (tipicamente /etc/ssh/sshd_config):
  • Alterar a porta padrão do serviço SSH: como é de conhecimento de todos (ou pelo menos da maioria...) o serviço SSH utiliza por padrão a porta TCP 22. Mudando-se a porta elimina-se grande parte das tentativas de invasão por ataques de dicionário (onde são testadas as combinações de usuário e senha presentes em uma lista) Brute Force (onde são testadas todas as combinações possíveis). Tenha o cuidado de escolher uma porta que não esteja sendo utilizada por nenhum outro serviço na máquina. Lembre-se também de editar as configurações de seu firewall para permitir conexões na nova porta após alterar essa opção. Opção do sshd_config: Port XX, onde XX é o número da porta a ser utilizada.
  • Não permitir o login do usuário root: como é necessário saber o nome de usuário e a senha para a conexão, invasores costumam utilizar ataques de dicionário sempre utilizando o usuário root. Impedindo o login direto com esse usuário aumenta o nível de segurança do equipamento. Opção do sshd_config: "PermitRootLogin yes", que deve ser alterada para "PermitRootLogin no"
  • Restringir o acesso a usuários ou grupos especificos: você pode limitar o acesso a usuários específicos, ou ainda a grupos específicos, o que facilita a manutenção pois basta definir um grupo com acesso no arquivo de configuração do OpenSSH e depois gerenciar os usuários diretamente no grupo, acrescentado e removendo-os. Inversamente, também é possivel indicar usuários e grupos a serem barrados em suas tentativas de login. Opções do sshd_configAllowUsers, AllowGroups, DenyUsers, DenyGroups. Veja a página de manual do arquivo sshd_config para mais detalhes (man sshd_config)
  • Não permitir senhas em branco: Nunca, mas realmente nunca habilite a opção de senhas em branco. Caso necessite fazer cópias automatizadas entre máquinas com SCP, utilize a autenticação por chaves, com uma chave sem passphrase apenas para esse fim. Opção do sshd_config: "PermitEmptyPasswords no"
Ah, e se você utiliza o Debian, Ubuntu ou um de seus derivados, lembre-se de verificar se suas chaves são afetadas pela vulnerabilidade do pacote openssl . Apenas atualizar a biblioteca não resolve completamente o problema. As chaves que foram geradas com a biblioteca bugada precisam ser descartadas e geradas novamente.