ssh-essentials
Essential SSH commands for secure remote access, key management, tunneling, and file transfers.
Installation
Pick a client and clone the repository into its skills directory.
Installation
About this skill
Essential SSH commands for secure remote access, key management, tunneling, and file transfers.
How to use
Upewnij się, że masz zainstalowany SSH na swoim systemie (wymagane narzędzie: ssh). Jeśli go nie masz, zainstaluj go za pośrednictwem menedżera pakietów swojej dystrybucji.
Wygeneruj parę kluczy SSH, jeśli jej jeszcze nie posiadasz. Uruchom ssh-keygen -t ed25519 -C "twój_email@example.com" — ED25519 to rekomendowany typ klucza. Klucz zostanie zapisany domyślnie w ~/.ssh/id_ed25519.
Skopiuj swój klucz publiczny na serwer docelowy, wykonując ssh-copy-id user@hostname. Jeśli używasz innego pliku klucza, dodaj flagę -i ~/.ssh/nazwa_klucza. Ta komenda automatycznie doda Twój klucz do ~/.ssh/authorized_keys na serwerze.
Połącz się z serwerem za pomocą ssh user@hostname. Jeśli serwer używa niestandardowego portu, dodaj flagę -p 2222 (zastąp 2222 numerem portu). Możesz również uruchomić komendę bezpośrednio na serwerze: ssh user@hostname 'ls -la'.
Dla automatyzacji bez interakcji użytkownika wygeneruj klucz bez hasła: ssh-keygen -t ed25519 -N "" -f ~/.ssh/id_deploy. Pamiętaj, że klucze bez hasła stanowią zagrożenie bezpieczeństwa — używaj ich tylko w zaufanych środowiskach.
Zarządzaj kluczami za pomocą ssh-agent, aby uniknąć wpisywania hasła przy każdym połączeniu. Uruchom eval $(ssh-agent), a następnie ssh-add ~/.ssh/id_ed25519. Możesz wyświetlić załadowane klucze komendą ssh-add -l.