6Aug

Jak vzdáleně kopírovat soubory přes SSH bez zadání hesla

click fraud protection

SSH je záchranář, když potřebujete vzdáleně spravovat počítač, ale víte, že můžete také nahrát a stáhnout soubory? Pomocí klíče SSH můžete přeskočit, že musíte zadávat hesla a použít to pro skripty!

Tento proces pracuje na systémech Linux a Mac OS za předpokladu, že jsou správně nakonfigurovány pro přístup SSH.Používáte-li systém Windows, můžete použít program Cygwin, abyste získali funkčnost podobnou systému Linux a s malým vylepšením bude fungovat i SSH.

Kopírování souborů přes SSH

Zabezpečená kopie je opravdu užitečný příkaz a je to opravdu snadné použití.Základní formát příkazu je následující:

scp [options] original_file destination_file

Největším kickerem je způsob formátování vzdálené části. Když adresujete vzdálený soubor, musíte to provést následujícím způsobem:

user @ server: cesta /to/ soubor

Server může být adresa URL nebo adresa IP.Následuje dvojtečka, pak cesta k danému souboru nebo složce. Podívejme se na příklad.

scp -P 40050 Desktop / url.txt [email protected]: ~ /Desktop/ url.txt

instagram viewer

Tento příkaz obsahuje příznak [-P]( všimněte si, že je to kapitál P).To umožňuje určit číslo portu namísto výchozího 22. Je to nutné pro mě, protože jsem si nakonfiguroval svůj systém.

Dále můj původní soubor je "url.txt", který je uvnitř adresáře s názvem "Desktop".Cílový soubor je v adresáři "~ /Desktop/ url.txt", který je stejný jako "/user/yatri/Desktop/ url.txt".Tento příkaz je spuštěn uživatelem "yatri" ve vzdáleném počítači "192.168.1.50".

Co je-li třeba udělat opak? Můžete kopírovat soubory ze vzdáleného serveru podobně.

Zde jsem zkopíroval soubor ze složky "~ /Desktop/" vzdáleného počítače do složky "Desktop" v počítači.

Chcete-li kopírovat celé adresáře, musíte použít příznak [-r]( všimněte si, že je to malá písmena r).

Můžete také kombinovat příznaky. Místo

scp -P -r. ..

Pouze můžete udělat

scp -Pr. ..

Nejtěžší část zde je, že dokončení karty nefunguje vždy, takže je užitečné mít jiný terminál s relací SSH spuštěnou, abyste vědělikde dát věci.

SSH a SCP bez hesel

Zabezpečená kopie je skvělá.Můžete jej dát do skriptů a nechat je zálohovat do vzdálených počítačů.Problém spočívá v tom, že nemusí být vždy k zadání hesla. A buďme upřímní, je to opravdu velká bolest, aby jste vložili své heslo do vzdáleného počítače, který máte zřejmě přístup.

No, můžeme se obejít pomocí hesel pomocí klíčových souborů.Můžeme mít počítač vygenerovat dva klíčové soubory - jednu veřejnost, která patří na vzdálený server, a jeden soukromý, který je ve vašem počítači a musí být bezpečný - a tyto budou použity namísto hesla. Docela pohodlné, že?

Na vašem počítači zadejte následující příkaz:

ssh-keygen -t rsa

Tím vygenerujete dva klíče a vložte je do adresáře:

~ /.ssh/

se jmény "id_rsa" pro váš soukromý klíč a "id_rsa.pub" prováš veřejný klíč.

Po zadání příkazu budete vyzváni, kam uložit klíč.Stisknutím klávesy Enter můžete použít výše uvedené výchozí hodnoty.

Dále budete vyzváni k zadání přístupové fráze. Stiskněte klávesu Enter a ponechte toto prázdné a poté jej znovu zopakujte, až se zobrazí výzva k potvrzení.Dalším krokem je zkopírování souboru veřejného klíče do vzdáleného počítače. Můžete použít scp takto:

Cíl pro váš veřejný klíč je na vzdáleném serveru v následujícím souboru:

~ /.ssh/ authorized_keys2

Následující veřejné klíče mohou být připojeny k tomuto souboru, podobně jako soubor ~ /.ssh/ known_hosts. To znamená, že pokud chcete na tomto serveru přidat další veřejný klíč pro váš účet, zkopírujte obsah druhého souboru id_rsa.pub do nového řádku v existujícím souboru authorized_keys2.

Bezpečnostní aspekty

Není toto méně bezpečné než heslo?

V praktickém smyslu, ne opravdu. Soukromý klíč, který je generován, je uložen v počítači, který používáte, a nikdy se nepřevádí ani ověřuje. Tento soukromý klíč se LIBOVAČE shoduje s tímto jedním veřejným klíčem a připojení musí být spuštěno z počítače, který má soukromý klíč.RSA je docela bezpečná a ve výchozím nastavení používá délku 2048 bitů.

Teoreticky je teoreticky teoreticky podobné používání hesla. Pokud někdo zná své heslo, vaše bezpečnost se vypne z okna. Pokud má někdo váš soubor soukromého klíče, ztratí se zabezpečení na jakýkoli počítač, který má odpovídající publikální klíč, ale potřebují přístup k počítači, aby ho získali.

Může to být bezpečnější?

Můžete kombinovat heslo se soubory klíčů.Postupujte podle výše uvedených kroků, ale zadejte silnou přístupovou frázi. Nyní, když se připojujete přes SSH nebo použijete SCP, potřebujete správný přístupový kód a .

Jakmile jednou zadáte přístupovou frázi, nebudete ji znovu požádáni, dokud ukončíte relaci. To znamená, že poprvé, co jste SSH / SCP, budete muset zadat heslo, ale žádné další akce nebudou vyžadovat. Jakmile se odhlásíte z počítače( nikoliv vzdáleného) nebo zavřete okno terminálu, budete muset znovu zadat. Tímto způsobem neznamenáte, že jste obětovali bezpečnost, ale také jste neustále obtěžováni heslami.

Mohu znovu použít páru veřejných / soukromých klíčů?

Toto je opravdu špatný nápad. Pokud někdo najde vaše heslo a použijete stejné heslo pro všechny své účty, mají nyní přístup ke všem těmto účtům. Podobně je váš soukromý klíč také super tajný a důležitý.(Další informace naleznete v článku Jak obnovit po ukončení e-mailového hesla)

Nejlepší je vytvořit nové páry klíče pro každý počítač a účet, který chcete propojit. Tímto způsobem, pokud některý z vašich soukromých klíčů nějak nějakým způsobem chytil, můžete na jednom vzdáleném počítači kompromitovat pouze jeden účet.

Je také velmi důležité si uvědomit, že všechny vaše soukromé klíče jsou uloženy na stejném místě: v /.ssh/ v počítači můžete použít TrueCrypt k vytvoření bezpečného šifrovaného kontejneru a následně do adresáře ~ /.ssh/ vytvořit symbolické odkazy. V závislosti na tom, co dělám, používám tuto super-paranoidní metodu super-bezpečné, abych uklidnila mysl.

Používali jste SCP v libovolných skriptech? Používáte klíčové soubory namísto hesel? Sdílejte své připomínky s ostatními čtenáři v komentáři!