vsftpd приводит pam аутентификацию к сбою

Да, Вы более или менее корректны на всех 3 точках.

  • PowerVM является гипервизором. Это имеет избыточные служебный процессоры, которые делают работу карт RSA, которые Вы нашли бы в системах Intel. Существует 3 уровня PowerVM каждая обеспечивающая дополнительная функциональность в системе. (Больше LPARs, Мобильность Раздела, и т.д.)
  • Нет никакой операционной системы для управления для PowerVM.
  • VIOs не управляют клиентом (AIX/Linux) LPARs, они просто обеспечивают, виртуализировал ввод-вывод (сеть, vscsi, FCP). Гипервизор PowerVM ответственен за управление. HMC/IVM является окном к PowerVM и позволяет Вам управлять рабочими ресурсами в системе.

Посмотрите, что Введение в Виртуализацию на Включает Wiki IBM PowerVM. Это предоставляет некоторую вводную подробную информацию о PowerVM, и я рекомендовал бы вырыть немного больше на основной странице что Wiki, существует много больших статей о там.

12
01.05.2012, 02:38
6 ответов

Ух. Я решил проблему. Это составляет конфигурацию, но в/etc/pam.d/vsftpd

Поскольку ssh сессии успешно выполнились, в то время как сеансы FTP перестали работать, я перешел в

/etc/pam.d/vsftpd, удалил все, что было туда и вместо этого помещено содержание./sshd для соответствия правилам точно. Все работали!

Методом устранения я нашел, что незаконная строка была:

    auth       required     pam_shells.so

Удаление его позволяет мне продолжать двигаться.

Бочки, "pam_shells является модулем PAM, который только предоставляет доступ к системе, если пользователи окружают, перечислены в/etc/shells". Я смотрел там и конечно же, никакой удар, нет ничто. Это - ошибка в vsftpd конфигурации, по-моему, поскольку нигде в документации не делает она имеет Вас редактирующий/etc/shells. Таким образом стандартная установка и инструкции не работают, как указано.

Я пойду, находят, где я могу отправить ошибку теперь.

23
27.01.2020, 19:54
  • 1
    /etc/shells, как обычно предполагается, содержит список приемлемых оболочек. Это используется довольно многими различными подсистемами и, как ожидают, будет корректно. Этот файл не создается или сохраняется vsftpd, а скорее базовой установкой Вашего дистрибутива. Таким образом, это не vsftpd ошибка, это - ошибка с установкой Вашего компьютера. –  tylerl 25.04.2013, 00:30
  • 2
    Спасибо!, я должен был видеть, что пользователь, не могущий входить в систему подобранный те, которые имеют/sbin/nologin как пользовательскую оболочку... –  mveroone 01.06.2016, 15:31

Как Вы упомянули в своем собственном ответе, пользовательская оболочка должна быть перечислена в /etc/shells. Вы могли установить /sbin/nologin как пользовательская оболочка, чтобы запретить ssh и позволить ftp, не изменяя pam конфигурацию:

usermod -s /sbin/nologin restricted_ftp_user
0
27.01.2020, 19:54
[114008]Сделайте резервную копию конфигурационного файла перед внесением изменений;

и затем отредактируйте vsftpd. conf (с vi или nano)

  1. Затем сделайте следующее изменениеСохраните изменения и перезапустите ftp-сервер (если вы используете nano, нажмите CTRL+O и введите для сохранения, затем CTRL+X для выхода)

-2
27.01.2020, 19:54

Я использую Ubuntu и имел такую ​​же проблему

решение:

add-shell /sbin/nologin
sudo usermod -s /sbin/nologin ftpme
sudo vi /etc/pam.d/vsftpd

, затем комментарий и добавьте строки в следующем

#%PAM-1.0
session    optional     pam_keyinit.so    force revoke
auth       required     pam_listfile.so item=user sense=deny file=/etc/ftpusers  onerr=succeed
auth       required     pam_shells.so
#auth       include      password-auth
#account    include      password-auth
#session    required     pam_loginuid.so
#session    include      password-auth
@include common-auth
@include common-account
@include common-password
@include common-session
4
27.01.2020, 19:54

Я также столкнулся с таким же странным поведением, когда FTP -Пользователь настроен с

# finger <user>
Login: <user>                   Name: 
Directory: /home/user-dir           Shell: /sbin/nologin
Never logged in.
No mail.
No Plan.

в одной Системе можно войти, а в другой нет.

В дополнение к ответу @KateYoak выяснилось, что файл /etc/shellsбыл другим и не включал оболочку /sbin/nologin. который сделал аутентификацию PAM в/etc/pam.d/vsftpd

auth       required     pam_shells.so

неудача

Просто добавив в /etc/shellsфайл недостающие строки

/sbin/nologin
/usr/sbin/nologin

регистрация в /etc/pam.d/vsftpdсработала.

Таким образом, рабочий /etc/shellsфайл должен иметь:

# cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/usr/bin/sh
/usr/bin/bash
/usr/sbin/nologin
/bin/tcsh
/bin/csh

В более поздних версиях (Centos8 )/etc/shellsсодержит только:

# cat /etc/shells
/bin/sh
/bin/bash
/usr/bin/sh
/usr/bin/bash

и учетные записи пользователей в этих системах создаются с помощью /usr/bin/falseоболочки :

.
# cat /etc/passwd|grep -i ftp_user01
ftp_user01:x:1004:1004:FTP Account for user01:/home/user01:/usr/bin/false

Несмотря на то, что эта конфигурация не дает автоматического доступа к FTP каким образом.

$ ftp ftp-server02.domain.com
Connected to ftp-server02.domain.com (ip.add.re.ss).
220 FTP Service of Server ftp-server02
Name (ftp-server02.domain.com:local_user02): ftp_user01
331 Password required for ftp_user01
Password:
530 Login incorrect.
Login failed.
Remote system type is UNIX.
Using binary mode to transfer files.

Всегда требуется вставить /usr/bin/falseв/etc/shells
Таким образом Минимальная конфигурация для работы FTP должна быть:

# cat /etc/shells
/bin/sh
/bin/bash
/usr/bin/sh
/usr/bin/bash
/usr/bin/false

Заметка сайта о мысли @Greeso:

manстраницы на /sbin/nologinобъясняют:
справочная страницаnologin:

nologin displays a message that an account is not available and exits non-zero. It is intended as a replacement shell field to deny login access to an account.
nologin is a per-account way to disable login (usually used for system accounts like http or ftp).

Таким образом, при выполнении команды /usr/sbin/nologinотображается:

$ /usr/sbin/nologin ; echo "res: '$?'"
This account is currently not available.
res: '1'

Таким образом, боты , которые пытаются атаковать систему полным перебором и получают это сообщение, могут использовать его, чтобы сделать вывод, что Учетная запись существует в Системе и что Логин предназначен для службы FTP или HTTP. Таким образом, вы можете понимать это изменение как стратегию усиления безопасности системы.

0
27.01.2020, 19:54

в моем случае я решил прокомментировать строку авторизации в конфигурационном файле /etc/pam.d/vsftpd

#%PAM-1.0
session    optional     pam_keyinit.so    force revoke
auth       required     pam_listfile.so item=user sense=deny file=/etc/vsftpd/f$
#auth       required    pam_shells.so
auth       include  password-auth
account    include  password-auth
session    required     pam_loginuid.so
session    include  password-auth

Вот ты и причина. Если вы добавите /sbin/nologin в качестве системы оболочки, вы, вероятно, сможете открыть нежелательный бэкдор в своей системе. Вместо этого изменение этого файла, безусловно, влияет только на vsftpd .

Я не знаю, ищет ли другой процесс, такой как sshd , системные оболочки, но я думаю, что изменение файла pam.d является лучшим решением, чем другие.

1
27.01.2020, 19:54

Теги

Похожие вопросы