Пользователь не может SFTP после chroot

Вы должны использовать mod_proxy или флаг P, перенаправление не работает

RewriteEngine on
RewriteRule ^owa/?(.*) http://192.168.1.1/$1 [L,P]
3
задан 3 October 2012 в 14:49
5 ответов

Несмотря на то, что ответ Жауме очень хорош, в конце концов он мне не помог. Я попробовал список рассылки OpenSSH, но безуспешно. В итоге я перезагрузил весь свой сервер, что, к счастью, смог сделать. Теперь он работает отлично.

1
ответ дан 3 December 2019 в 06:12

Ваша установка определенно выглядит хорошо, посмотрим, сможем ли мы выяснить, в чем проблема. версия 4.8p1 ( http://www.debian-administration.org/articles/590 ). Убедитесь, что установлена ​​хотя бы эта версия:

 dpkg --list openssh-server
 

[Вероятно, причина не в этом, согласно http://releases.ubuntu.com/lucid/ubuntu-10.04.4-server-amd64.list Версия openssh-server - 5.3p1]

  • Протестируйте SFTP локально.

    Введите терминал на вашем компьютере Ubuntu:

     sftp sam @ localhost
    

    и посмотрите, можете ли вы войти в систему (вы должны ввести пароль Сэма, когда спросил). Если он работает, возможно, проблема с Cyberduck. конфигурация.

    Если вы не можете войти в систему, попробуйте SFTP без chroot.

  • Протестируйте SFTP локально без chroot.

    Приставьте следующий префикс:

     Сопоставьте пользователей группы
     ChrootDirectory% h
     ForceCommand внутренний sftp
     AllowTcpForwarding нет
    

    с помощью # , чтобы закомментировать это, перезапустите sshd ( sudo service ssh перезапустите ), а затем введите:

     sftp sam @ localhost
    

    Введите пароль, когда его спросят, и посмотрите, сможете ли вы войти в систему. Если вы может войти в систему для устранения неполадок конфигурации chroot следующим образом: попробуйте шаг 2 снова с помощью команды sftp -vvv sam @ localhost для подробного описания. выход. Вы также можете увеличить уровень журнала sshd , добавив LogLevel ПЕРЕХОДИТЕ ГЛАГОЛОМ в / etc / ssh / sshd_config и перезапустите sshd . С надеждой вы видите что-то очевидное в консоли или в /var/log/auth.log .

    Если вы не можете войти, попробуйте SSH.

  • Протестируйте SSH локально.

    SFTP требует рабочий SSH, поэтому измените оболочку sam на / bin / bash:

     sudo usermod -s / bin / bash sam
    

    и попробуйте:

     ssh sam @ localhost
    

    Введите пароль Сэма, когда его спросят. Если вы можете войти, попробуйте увеличить многословие, как описано в 3), чтобы выяснить, что не так ( sftp -vvv sam @ localhost и LogLevel VERBOSE в / etc / ssh / sshd_config ). Другая возможность состоит в том, что инициализация оболочки сбивает клиент sftp ( http://www.openssh.org/faq.html#2.9 ):

    2.9 - sftp / scp не может подключиться, но ssh в порядке.

    sftp и / или scp может выйти из строя во время подключения, если у вас есть инициализация оболочки (.profile, .bashrc, .cshrc и т. д.), который производит вывод для неинтерактивных сеансов. Этот вывод сбивает с толку клиента sftp / scp. Вы можете проверить, делает ли это ваша оболочка выполнив:

     ssh yourhost / usr / bin / true
    

    Если приведенная выше команда дает какой-либо результат, то вам необходимо изменить инициализацию оболочки.

    Если вы не можете войти в систему, попробуйте ssh root @ localhost . Если не работает либо что-то не так с sshd на сервере. Увеличение многословность ( LogLevel VERBOSE в / etc / ssh / sshd_config ), перезапустите sshd и просмотрите /var/log/auth.log , ответ, вероятно, есть.

  • 3
    ответ дан 3 December 2019 в 06:12
    1. На наличие ошибки «соединение отклонено» проверьте настройку «UsePAM yes» в sshd_config. Он должен быть ДО "Subsystem sftp"

    2. . В случае проблем с аутентификацией убедитесь, что КАЖДЫЙ каталог в chroot-path принадлежит пользователю root и имеет разрешения 755 или меньше.

    Пример: ChrootDirectory / var / www / data

    проверьте права доступа и владельца для: / var, / var / www, / var / www / data

    1. Для странных проблем, таких как «соединение закрыто после аутентификации», попробуйте обновить или изменить SFTP-сервер.

    apt-get install openssh-server

    «Подсистема sftp internal-sftp» <-> «Подсистема sftp / usr / lib / openssh / sftp-server» (переключитесь с типа с вашими проблемами на другой)

    -1
    ответ дан 3 December 2019 в 06:12

    У меня была такая же проблема, которую разрешили путем установки chroot-dir на корневой каталог владельца и корень группы.

    chown root: root chroot-dir

    1
    ответ дан 3 December 2019 в 06:12

    Centos 7 - Надтай ижил асуудал гарсан - би оношлохын тулд нарны доор бүх зүйлийг туршиж үзсэн - эцэст нь '/ etc / ssh / sshd_conf' доторх sftp дэд системийг өөрчилж, sshd-г дахин эхлүүллээ ([1162434) ] service sshd дахин эхлүүлэх ) ба асуудал шийдэгдсэн:

    Хаанаас:

    #Subsystem      sftp    /usr/libexec/openssh/sftp-server
    

    Хаана:

    Subsystem sftp internal-sftp
    

    Яагаад хоёр хэрэгжилт хангаж байгааг би огт мэдэхгүй байна

    0
    ответ дан 3 December 2019 в 06:12

    Теги

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