Проект Скрежета с открытым исходным кодом указывает, что OpenBSD обеспечивает пакеты. Используйте их. Это не идеальная замена AdobeFlash, но это - открытый исходный код и так может быть скомпилировано в системах, для которых не предварительно компилирует Adobe.
Не имеет значения, кто владеет/pkg/. Если это принадлежало бы usera
затем у Вас были бы проблемы с userb
и т.д. Таким образом, это должно быть что-то еще, что препятствует тому, чтобы SSHD использовал authorized_keys
файл. Необходимо проверить, перезаписываем ли этот файл только владельцем и если он принадлежит надлежащему пользователю. То же применяет все родительские каталоги.
Это все или ничего: если Вы поворачиваетесь StrictModes
опция прочь, sshd никогда не будет проверять режимов файла. Нет никакого способа сказать, что определенные нечетные случаи в порядке, такие как перезаписываемый группой каталог (который в порядке, если пользователь является одним в группе).
OpenSSH проверяет полномочия и владение ~/.ssh/authorized_keys
и его содержание каталогов, рекурсивно вызывающих вверх. Однако это останавливает сравнение, когда это достигает корневого каталога. Например, в классическом расположении, где файл авторизации /home/joe/.ssh/authorized_keys
и /home/joe
корневой каталог пользователя, только /home/joe/.ssh/authorized_keys
, /home/joe/.ssh
и /home/joe
проверяются.
Таким образом, в то время как Ваш сценарий очень сомнителен (/pkg
должен принадлежать корню, с дополнительными полномочиями группы при необходимости), он не должен влиять на ssh.
Если какие-либо символьные ссылки включены, обратите внимание, что ssh разворачивает все символьные ссылки прежде, чем запустить его проверки.
Системные журналы могли бы иметь релевантную информацию. Проверьте, вызывают ли Ваши неудавшиеся попытки входа в систему какое-либо сообщение журнала.
Проверьте, что Ваша версия ssh выполняет те же проверки как моя (я посмотрел на источник OpenSSH 5.5p1) путем выполнения демона режима отладки на пользовательском порте (sshd -d -p 2222
). Использовать strace -f -efile sshd -d -p 2222
при необходимости проверять который разрешение файлов проверки сервера. Если эти проверки разрешения не являются проблемой, добавляя больше -d
флаги могли бы пролить некоторый свет.
Если у Вас есть AppArmor, существует также возможность, что он ограничивает ssh сервер чтением файлов в пользователях .ssh
каталоги. Если у Вас будут AppArmor и корневые каталоги в нестандартном месте, то необходимо будет обновить политики AppArmor (не только для SSH). Посмотрите Проявляют сбои для запуска, потому что это не может считать.Xauthority.
Я столкнулся с той же проблемой, используя '/data' в качестве базового dir для пользовательских каталогов. Для меня было недостаточно запустить 'restorecon -R -v ~/.ssh'. Сначала я должен был запустить
# semanage fcontext -a -e /home /data
от имени root, а затем (также от имени root, поскольку каталог /data содержал каталог, принадлежащий root)
# restorecon -R -v /data