У меня была эта проблема на CentOS 7. Я обычный пользователь Linux на основе Debian -, поэтому я был как рыба в воде. Я заметил, что на некоторых серверах это работало, а на одном — нет. Audit.log ничего полезного не сказал, и secure.log тоже ничего не дал. Я обнаружил, что единственная реальная разница заключалась в некоторых различиях контекста безопасности в файлах и каталогах между теми, которые работали, и теми, которые не работали. Получите безопасность с помощью
sudo ls -laZ
в каталоге (Я предполагаю множество значений по умолчанию в конфигурации sshd _).
Вы должны увидеть атрибуты ssh_home_t
и user_home_t
. Если вы этого не сделаете, используйте команду chcon
, чтобы добавить отсутствующие атрибуты.
Например
home="$(getent passwd | cut -d: -f6)"
sudo chcon -R unconfined_u:object_r:ssh_home_t:s0 "$home".ssh
sudo chcon unconfined_u:object_r:user_home_t:s0 "$home"
В моем случае я подозреваю, что пользователь был создан нестандартным способом. Его домом был каталог в /var/lib
.
Похоже, мне пришлось использовать двойные -кавычки. Похоже, это исправило:
SH_OFF="\[\033[00m\]"
SH_BLACK="\[\033[1;30m\]"
SH_BLUE="\[\033[1;34m\]"
SH_GREEN="\[\033[1;32m\]"
SH_CYAN="\[\033[1;36m\]"
SH_RED="\[\033[1;31m\]"
SH_PURPLE="\[\033[1;35m\]"
SH_BROWN="\[\033[1;33m\]"
SH_YELLOW="\[\033[1;33m\]"