Назад | Перейти на главную страницу

SSH: один пользователь входит в систему, другой нет

Некоторые пользователи могут использовать ssh правильно, другие - нет. У меня есть админ, который в руле. Я использовал vsftpd для разрешения FTP. Я создал пользователя nologin для FTP. Назовите этого пользователя «ftpuser». Теперь я хочу разрешить sftp. Это позволяет мне подключаться с помощью администратора. Я удаляю логин, давая пользователю оболочку через usermod -s /bin/bash ftpuser. Он по-прежнему не позволяет мне подключаться с ftpuser через sftp. Содержание /home/ftpuser/.ssh это просто known_hosts файл, который содержит только запись "localhost".

Разрешения пользователей (теоретически) в порядке:

ls -la /home
    working (admin)     : drwx------ 18 admin  admin 4096 Feb  6 15:33 admin
    non-working(ftpuser): drwx------  3 ftpuser ftp   4096 Mar 26 15:25 ftpuser

Я не настраивал на openssh ничего особенного. Нужно ли что-нибудь ftpuser? дополнительный чем шелл вводить по ssh?

/var/log/auth.log предоставит вам более подробную информацию.

Есть несколько вещей, которые могут ошибаться. Я бы начал с проверки разрешений в каталоге /home/ftpuser/.ssh. OpenSSH может отказать вам в входе в систему, если разрешения для этого каталога неверны (поскольку злоумышленники могут поместить туда открытые ключи, если вы разрешите доступ для записи)

Попробуйте подключиться только по ssh вместо sftp, чтобы узнать, не проблема ли это в самом sftp.

Также проверьте файл конфигурации SSHd, чтобы узнать, есть ли ограничения на то, кому разрешено входить в систему. Это может быть ограничено пользователями в колесе.