Напоминаю: БЕЗДУМНАЯ ПРАВКА СИСТЕМНЫХ ФАЙЛОВ МОЖЕТ ПРИВЕСТИ НЕРАБОТОСПОСОБНОСТИ СЕРВЕРА.
Итак: если пользователю прописать оболочкой
/usr/sbin/nologinsudo usermod -s /usr/sbin/nologin user
Это вовсе не означает, что пользователь не может получить доступ к системе.
Да, он не может залогиниться с клавиатуры и зайти по ssh. Но он вполне МОЖЕТ ПОЛУЧИТЬ ДОСТУП К ФАЙЛАМ по sftp при условии, что в файле
/etc/ssh/sshd_config есть строка Subsystem sftp internal-sftp, не знаю как сейчас, а раньше эта подсистема была установлена по-умолчанию.Логика разработчиков вполне понятна. Работал человек, работал, доступ ему закрыли, но результат работы забрать может. Это, похоже на то, как жена выставляет чемодан у двери гулящему мужу.
Заткнуть эту дырку очень просто. В файле
/etc/ssh/sshd_config заменим подсистему sftp:#Subsystem sftp internal-sftp
Subsystem sftp /usr/lib/openssh/sftp-server
Теперь проверка правильности конфигурации и перезапуск службы в случае успеха.
sudo sshd -t && sudo systemctl restart sshd
В этом случае при попытке входа по sftp получим сообщение:
ㅤ
Received message too long 1416128883 Ensure the remote shell produces no output for non-interactive sessions.
Резюмирую: При оболочке nologin можно получить доступ к файлам если sftp internal-sftp.
Сможешь спать спокойно, не заглянув в
/etc/ssh/sshd_config ? :-)tags: #linux #security © by Tagd Tagd
—
🔔 @bashdays➡️ @gitgate