Pular para o conteúdo
Skillpedia
Segurança48 mil · #4239

ssh-configuration

Faz seu agente configurar o SSH de forma segura. Ele gerencia chaves e conexões para acesso remoto protegido.

O que ela faz

Esta ferramenta ajuda a configurar e proteger o acesso a computadores remotamente usando SSH. Ela permite gerenciar chaves de segurança, criar túneis para proteger conexões e ajustar as configurações do servidor para maior segurança.

Quando usar

  • ✓Ao configurar acesso seguro a um servidor Linux.
  • ✓Ao precisar proteger a comunicação entre computadores.
  • ✓Ao gerenciar as chaves de acesso para várias pessoas.

Exemplo do que pedir para a IA

“Como configuro meu computador para acessar um servidor remotamente com segurança usando chaves?”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/ssh-configuration/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/ssh-configuration/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

Ela funciona gerando e gerenciando chaves de segurança (como senhas especiais) e configurando arquivos que dizem ao SSH como se conectar de forma segura. Isso inclui definir regras no servidor e no cliente.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add sickn33/agentic-awesome-skills --skill ssh-configuration

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/ssh-configuration/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Configuração SSH

Configuração segura de servidor e cliente SSH para ambientes de produção, incluindo gerenciamento de chaves, configurações de sshd reforçadas, arquitetura de host bastion, tunelamento e multiplexação.

Quando Usar

  • Configurando acesso remoto seguro a servidores Linux ou Unix
  • Reforçando a configuração do daemon SSH para atender aos requisitos de conformidade
  • Configurando hosts bastion / jump para acesso à rede privada
  • Criando túneis SSH para encaminhamento seguro de portas
  • Gerenciando chaves SSH para equipes ou implantações automatizadas
  • Solucionando problemas de conexão, autenticação ou desempenho

Pré-requisitos

  • Cliente OpenSSH instalado localmente (ssh -V para verificar)
  • Servidor OpenSSH instalado no destino (sshd)
  • Acesso root ou sudo no servidor para alterações em sshd_config
  • Regras de firewall permitindo a porta TCP 22 (ou porta SSH personalizada)

Geração e Gerenciamento de Chaves

# Generate an Ed25519 key (recommended -- fast, secure, short)
ssh-keygen -t ed25519 -C "jane@example.com" -f ~/.ssh/id_ed25519

# Generate an RSA 4096-bit key (for legacy compatibility)
ssh-keygen -t rsa -b 4096 -C "jane@example.com" -f ~/.ssh/id_rsa_legacy

# Generate a key with a custom comment and no passphrase (CI/CD use only)
ssh-keygen -t ed25519 -C "ci-deploy-key" -f ~/.ssh/ci_deploy -N ""

# Copy public key to a remote server
ssh-copy-id -i ~/.ssh/id_ed25519.pub user@server

# Manually append a public key (when ssh-copy-id is unavailable)
cat ~/.ssh/id_ed25519.pub | ssh user@server "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

# List fingerprints of keys on the agent
ssh-add -l

# Start the SSH agent and add a key
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519

# Add a key with a lifetime (auto-removed after 8 hours)
ssh-add -t 28800 ~/.ssh/id_ed25519

# Remove all keys from the agent
ssh-add -D

# Convert an OpenSSH key to PEM format (for tools that need it)
ssh-keygen -p -m PEM -f ~/.ssh/id_rsa_legacy

# Show the public key fingerprint (SHA256)
ssh-keygen -lf ~/.ssh/id_ed25519.pub

# Rotate a key: generate new, deploy, then revoke old
ssh-keygen -t ed25519 -f ~/.ssh/id_ed25519_new -C "jane@example.com rotated $(date +%Y-%m)"
ssh-copy-id -i ~/.ssh/id_ed25519_new.pub user@server
# After verifying the new key works, remove the old public key from authorized_keys on the server

Configuração do Cliente SSH (~/.ssh/config)

# Global defaults applied to all hosts
Host *
  AddKeysToAgent yes
  IdentitiesOnly yes
  ServerAliveInterval 60
  ServerAliveCountMax 3
  TCPKeepAlive yes
  Compression yes

# Production servers via bastion
Host bastion
  HostName bastion.example.com
  User ops
  IdentityFile ~/.ssh/id_ed25519
  Port 22

Host prod-web-*
  User deploy
  IdentityFile ~/.ssh/id_ed25519
  ProxyJump bastion
  Port 22

Host prod-web-1
  HostName 10.0.1.10

Host prod-web-2
  HostName 10.0.1.11

# Staging accessed directly
Host staging
  HostName staging.example.com
  User deploy
  IdentityFile ~/.ssh/id_ed25519_staging

# Database tunnel through bastion
Host db-tunnel
  HostName 10.0.2.50
  User dba
  ProxyJump bastion
  LocalForward 5432 localhost:5432

# GitHub deploy key
Host github-deploy
  HostName github.com
  User git
  IdentityFile ~/.ssh/github_deploy_key
  IdentitiesOnly yes

# Connection multiplexing for faster repeated connections
Host fast-*
  ControlMaster auto
  ControlPath ~/.ssh/sockets/%r@%h-%p
  ControlPersist 600
# Create the sockets directory for multiplexing
mkdir -p ~/.ssh/sockets
chmod 700 ~/.ssh/sockets

Configuração de Servidor Reforçada (/etc/ssh/sshd_config)

# /etc/ssh/sshd_config -- configuração reforçada
# -----------------------------------------------

# Escutar em uma porta não padrão (ofuscação, não segurança -- combinar com firewall)
Port 22

# Protocolo e troca de chaves
Protocol 2
KexAlgorithms curve25519-sha256,curve25519-sha256@libssh.org,diffie-hellman-group16-sha512
Ciphers chacha20-poly1305@openssh.com,aes256-gcm@openssh.com,aes128-gcm@openssh.com
MACs hmac-sha2-512-etm@openssh.com,hmac-sha2-256-etm@openssh.com

# Autenticação
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
AuthenticationMethods publickey
MaxAuthTries 3
MaxSessions 5
LoginGraceTime 30

# Restringir usuários e grupos
AllowGroups ssh-users ops-team
# AllowUsers deploy admin

# Desativar métodos de autenticação não utilizados
ChallengeResponseAuthentication no
KerberosAuthentication no
GSSAPIAuthentication no

# Controles de encaminhamento
AllowTcpForwarding yes

…
Perguntas frequentes

O que é SSH?

SSH (Secure Shell) é um protocolo de rede que permite a comunicação segura entre dois computadores pela internet. É como um túnel criptografado para seus comandos e dados.

Por que usar chaves em vez de senhas?

Chaves são mais seguras que senhas, pois são mais difíceis de adivinhar ou roubar. Elas permitem que você se conecte sem digitar uma senha toda vez, o que também é mais conveniente.

O que é um túnel SSH?

Um túnel SSH cria uma conexão segura para outros tipos de tráfego de rede. É como usar o túnel SSH para enviar dados de um aplicativo que normalmente não seria seguro.

Detalhes

Descrição original do autor

Configure SSH servers and clients securely. Manage keys, tunnels, and config files. Use when setting up secure remote access.

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#4239
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas