SSH файловете се съхраняват в .ssh папка. Това е скрита папка, която се намира в домашната директория. The .ssh директория не е създадена по подразбиране; създава се, когато инициирате връзка с отдалечен хост или използвате ssh-keygen команда за генериране на частни и публични ключове за удостоверяване, когато искате настройте ssh удостоверяване без парола.
The .ssh папка. съдържа основни SSH файлове като:
- Публични и частни ключове ( id_rsa и id_rsa.pub ).
- The известни_хостове файл - Съдържа публични ключове на всички отдалечени системи, към които сте се свързали.
- The config клиентски конфигурационен файл
Ако config файлът не съществува, можете лесно да го създадете, както е показано.
$ touch ~/.ssh/config
Конфигурационният файл на клиента .ssh/config
Всеки път, когато инициирате SSH връзка, трябва да посочите подробности като IP адреса или името на домейна и порта, който SSH слуша. Например,
$ ssh [защитен имейл] -p 22Може да е забързано винаги да помните такива подробности. И тук е мястото ~/.ssh/config файлът идва ~/.ssh/config file е конфигурационен файл, който ви позволява да конфигурирате подробности за потребителската конфигурация на отдалечения хост. Това ви спестява агонията винаги да се налага да припомняте подробностите за хоста, необходими за връзка.
Примерен конфигурационен файл се появява, както е показано.
Хост staging-сървърHostName 192.168.2.103
Потребител Джеймс
Порт 22
Една проста SSH команда към отдалечения хост ще изглежда така:
$ ssh staging-сървър
Разрешенията за .ssh/config файла
По подразбиране, ~/.ssh/config клиентският конфигурационен файл притежава 644 разрешения за файлове. Можете да проверите дали с помощта на ls -la команда, както следва.
$ ls -la ~ / .ssh / config
Това означава, че собственикът и групата на файла имат разрешения за четене и запис (rw), докато други потребители имат разрешения само за четене (r).
-rw-rw-r--ЗАБЕЛЕЖКА:
Като общо правило, никога не присвоявайте разрешения за запис на други потребители. Това представлява риск за сигурността на вашия файл и други потребители, които не са вие или във вашата група, могат да променят съдържанието на файла. Присвояването на разрешения за запис ще доведе до „ Лош собственик или разрешения Грешка, както е посочено по -долу.
Тук на конфигурационния файл бяха предоставени разрешенията 666. Това означава, че всеки може да чете и пише файла.
По същия начин, същият случай се прилага и тук, когато на файла са присвоени 777 разрешения. Това означава, че всеки може да чете, пише и изпълнява файла. Просто казано, всеки има всички права върху потенциално опасния файл.
Най -добрата практика препоръчва да оставите разрешенията по подразбиране на 664 или 600, където само собственикът има разрешения за четене и запис (rw). По този начин файлът остава в безопасност от промяна от неоторизирани потребители.
Освен това се уверете, че притежавате файла. Ако файлът се промени на друг потребител, SSH няма да може да разреши името на хоста, предоставено в конфигурационния файл.
В примера по -долу, ~/.ssh/config собствеността е настроена на bob: bob.
За да разреша този проблем, се върнах към първоначалното притежание на файл с помощта на чаун команда.
$ sudo chown james: james ~/.ssh/configС отменените разрешения за файлове сега мога да получа достъп, като извикам командата SSH, последвана от името на хоста, посочено в конфигурационния файл.
$ ssh staging-сървър
И това е всичко, което трябва да знаете за задаването на разрешения за ~/.ssh/config файл. Уверете се, че не задавате разрешения за четене на останалите потребители и се уверете, че притежавате файла.