Я недавно возился с каталогом .ssh. Я сделал некоторые изменения разрешения, я думаю, и теперь это не позволит мне получить к нему доступ больше. Я могу получить к нему доступ как пользователь root (sudo -i), но не как somesh
Я получаю отказ в разрешении при перечислении или cding в .ssh, даже если он показывает файлы
ls: cannot access /home/somesh/.ssh/amazon.pem: Permission denied
ls: cannot access /home/somesh/.ssh/id_rsa: Permission denied
ls: cannot access /home/somesh/.ssh/known_hosts: Permission denied
ls: cannot access /home/somesh/.ssh/id_rsa.pub: Permission denied
total 0
-????????? ? ? ? ? ? amazon.pem
-????????? ? ? ? ? ? id_rsa
-????????? ? ? ? ? ? id_rsa.pub
-????????? ? ? ? ? ? known_hosts
Вход в систему как root и ls дает следующие результаты
# ls -l /home/somesh/ -a |grep ssh
drw-rw-rw- 2 somesh somesh 4096 Aug 27 15:45 .ssh
Даже файлы внутри .ssh принадлежат somesh: somesh и chm
-rw-rw-rw- 1 somesh somesh 1692 Aug 27 15:45 amazon.pem
-rw-rw-rw- 1 somesh somesh 1675 Aug 25 20:01 id_rsa
permissions
ssh
chmod
Сомеш Мукерджи
источник
источник
~/.ssh
каталога700
(drwx------
).Ответы:
Steeldriver прав. В каталоге вам также нужен
x
флаг доступа, чтобы иметь возможность просматривать файлы внутри.Исправление использования каталога
chmod 700 ~/.ssh
должно помочь вам войти в это (правильное) состояние:Также вы должны исправить ваши ключи, используя
chmod 600 ~/.ssh/id_rsa
иchmod 644 ~/.ssh/*.pub
получить это:источник
Когда вы запускаете команду ls -l в любом каталоге, первый столбец является столбцом разрешений, который интерпретируется следующим образом:
1 ------------- 2 3 4 ------- 5 6 7 ------- 8 9 10
(ТИП) ---- (пользователь) ----- (группа) ---- (другие)
ТИП: Если '-' , это файл. Если 'd', это каталог.
Разрешения: читать: 4, писать: 2, выполнять: 1
Так что для чтения, записи и выполнения ваших прав будет 7 в группе пользователей.
Ты можешь использовать
или
-R - это изменяет разрешение родительской папки и дочерних объектов внутри
источник
chmod 700 file_name
иchmod u+x file_name
делай две совершенно разные вещи. Первый устанавливает права доступаrwx/---/---
, второй просто устанавливаетx
бит для владельца (и, начиная с666
него, изменит файл на766
, а не на700
).-
Символ означает , что это «нормальный» файл. Аd
значит это каталог. Есть и другие, напримерc
,l
(для символической ссылки)s
, и даже больше для других ОС.