Як я можу створювати користувачів лише з віддаленим ftp-доступом на сервері Linux?


11

Я запускаю сервер Ubuntu 10.04 LTS і хочу створити користувачів, які можуть отримати доступ до сервера лише з FTP.

Що я робив поки що:

  • Встановити vsftpd
  • Створіть нового користувача із встановленою оболонкою для входу за замовчуванням /bin/false

Звичайні користувачі сервера можуть отримати доступ до своєї домашньої папки через ftp, але користувачі, яким віддалений доступ до оболонки видаляється, встановивши її, /bin/falseвони також не можуть увійти через ftp.

Я не розумію, як доступ до оболонки впливає на vsftpdсервер? Як я можу дозволити доступ до ftp без повторного включення оболонки?

Оновлення:
Я знайшов цю посилання, в якій сказано, що я повинен використовувати /sbin/nologin(схоже, що є /usr/sbin/nologinв Ubuntu) і що він не повинен впливати на доступ до ftp, але він не працює в моєму випадку.


Можливо, спробуйте встановити значення / bin / true
balki

Я ніколи не використовував vsftpd, але знайшов рішення, яке робити те, що вам потрібно. Я не знаю, чи це найкраще рішення (я думаю, воно має спрацювати, але, можливо, є щось краще).
пбм

Просто спробував / bin / true, і це не працює.
jmbouffard

Дякую @pbm, але це не зовсім те, що я шукаю, тому що я вважаю за краще використовувати реальних користувачів.
jmbouffard

Відповіді:


12

Я не знаю, чи є гарною практикою відповісти на моє власне питання, але я знайшов просте рішення, яке дозволяє увійти в ftp.

Мені потрібно було додати рядок

/ usr / sbin / nologin

до файлу / etc / shell. Одразу після цієї модифікації ftp-сервер почав приймати логін від користувачів, яким встановлено оболонку / usr / sbin / nologin. Тому вони не можуть увійти через ssh, але це працює з ftp саме так, як я хотів.

Дякуємо за корисні коментарі.


Я десь кілька днів тому прочитав, що це відкриває вразливість безпеки. Будь-які фахівці, які можуть мені це уточнити.
Навнейл

0

Набір користувачів оболонки назад /bin/false(або який -небудь інший недійсною оболонки) , а потім встановити /bin/falseв /etc/shells.

Я бачу велику проблему безпеки з установкою /usr/sbin/nologinв /etc/shells. Ви надаєте FTP (і, можливо, інші) доступ до всіх демонів і входів, що мають /usr/sbin/nologinсвою оболонку.


1
Як саме? nologin існує, щоб дозволити, ну, nologin - з необов'язковим налаштованим повідомленням, /etc/nologin.txtщоб користувач ftp міг знати, що це лише ftp або щось таке.
Dani_l

vsftpd - це той, хто захищає від несанкціонованого доступу, маючи власні списки доступу.
Dani_l
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.