Отложенный перезапуск неудачного контейнера - Ошибка синхронизации модуля в Minikube

Я сталкиваюсь с этой ошибкой при попытке создать поды. Это происходит даже с очень распространенными образами, такими как Ubuntu, Alpine. Я новичок в Kubernetes и использую узел Minikube (версия v0.24.1)

Команда:

kubectl run ubuntu --image==ubuntu

Ошибка :

Back-off restarting failed container - Error syncing pod

Версии:

  • Версия клиента: version.Info {Major : «1», второстепенный: «8», GitVersion: «** v1.8.0 **», GitCommit: «6e937839ac04a38cac63e6a7a306c5d035fe7b0a», GitTreeState: «clean», BuildDate: «2017-09-28T22: 57: 57Z», GoVersion : "

    VSFTPD отлично работает при подключении к локальным пользователям. Он закрепляет пользователя в его ранее созданном доме в / ftp / pub / {user_name} с помощью "useradd -d" . Я добавил шифрование TLS, которое тоже отлично работает (отключено здесь, чтобы увидеть, что не так). Я установил контекст SElinux / ftp на public_content_t ; / ftp / pub (/.*)? в public_content_rw_t и установил права 755 на / ftp / pub

    Недавно я попытался добавить аутентификацию LDAP к серверу VSFTPD, выполнив это:

    authconfig --enableldap --enableldapauth --ldapserver=name_of_my_server --ldapbasedn="dc=item1,dc=item2,dc=item3" --enablemkhomedir --update    
    

    , но он добавляет аутентификацию только для самого сервера (я могу использовать ssh для сервера с нелокальной учетной записью), а не для службы (vsftp), поэтому я получил:

    500 OOPS: невозможно сменить каталог: / home / default / path

    Из этой ошибки я понял, что она пытается войти в систему по умолчанию (которая, очевидно, не существует), не создавая новую. Что я хочу сделать, это когда нелокальный пользователь пытается подключиться к FTP на моем сервере, он создает ему новый дом в / ftp / pub / {user_name} и исключает его в нем.

    Здесь это pam.d / login:

    #%PAM-1.0
    auth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so
    auth       substack     system-auth
    auth       include      postlogin
    account    required     pam_nologin.so
    account    include      system-auth
    password   include      system-auth
    # pam_selinux.so close should be the first session rule
    session    required     pam_selinux.so close
    session    required     pam_loginuid.so
    session    optional     pam_console.so
    # pam_selinux.so open should only be followed by sessions to be executed in the user context
    session    required     pam_selinux.so open
    session    required     pam_namespace.so
    session    optional     pam_keyinit.so force revoke
    session    include      system-auth
    session    include      postlogin
    -session   optional     pam_ck_connector.so
    

    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/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
    

    vsftpd.conf:

    anonymous_enable=NO
    #Permet aux utilisateurs locaux de RW
    local_enable=YES
    write_enable=YES
    local_umask=022
    pasv_enable=YES
    pasv_max_port=1026
    pasv_min_port=1025
    dirmessage_enable=YES
    connect_from_port_20=YES
    ascii_download_enable=YES
    ascii_upload_enable=YES
    ftpd_banner=Welcome to blah FTP service.
    
    #Partie chroot
    chroot_local_user=YES
    allow_writeable_chroot=YES
    local_root=/ftp/pub/$USER
    user_sub_token=$USER
    # (default follows)
    #chroot_list_file=/etc/vsftpd/chroot_list
    
    #logs
    xferlog_enable=YES
    xferlog_std_format=NO
    log_ftp_protocol=YES
    
    listen=YES
    listen_ipv6=NO
    pam_service_name=vsftpd
    userlist_enable=YES
    tcp_wrappers=YES
    
    # Ajouts
    use_localtime=YES
    rsa_cert_file=/etc/ssl/private/vsftpd.pem
    rsa_private_key_file=/etc/ssl/private/vsftpd.pem
    require_ssl_reuse=NO
    ssl_ciphers=HIGH
    ssl_enable=NO
    allow_anon_ssl=NO
    force_local_data_ssl=YES
    force_local_logins_ssl=YES
    ssl_tlsv1=YES
    ssl_sslv2=YES
    ssl_sslv3=YES
    

    Я действительно застрял на этом ldap auth для VSFTPD и не могу найти, что мне делать в других сообщениях на serverfault. Если бы кто-то мог мне помочь или порекомендовать документацию, я был бы очень признателен.

    РЕДАКТИРОВАТЬ : Логин SSH успешно создает дом для пользователя в пути по умолчанию (/ home), логин FTP не создает его в / home, ни в / ftp / pub , моя цель - создать дом для пользователя с FTP-входом в / ftp / pub

    EDIT2 : Как было предложено mxttie, я мог бы использовать pam_exec, но было бы больше «обойти» проблему, не решая ее. Мне пришлось бы создать папку в «/ home», а затем папку в «/ ftp / pub» для каждого пользователя, который будет подключаться, чтобы решить две последовательные ошибки 500 OOPS

1
задан 1 August 2018 в 15:56
1 ответ

Используйте модуль pam_exec для вызова сценария, который выполняет необходимые команды (т. Е. Создать дом в / ftp / pub для нелокальных пользователей)

1
ответ дан 3 December 2019 в 23:13

Теги

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