ФорумРазработкаУстановка и администрирование ПОВебсервер → sftp chrooted

sftp chrooted

  • artoodetoo

    Сообщения: 5147 Репутация: N Группа: в ухо

    Spritz 26 ноября 2015 г. 17:00

    @adw0rd, к тебе наверное вопрос? Обнаружил, что реал отличается от инструкций, поэтому хочу консультацию.

    Решил дать пользователю www-data sftp и ограничить его только sftp. и чтобы не вылазил с /var/www
    В sshd_config:

    Subsystem sftp internal-sftp
    Match User www-data
            ChrootDirectory /var/www
            ForceCommand internal-sftp
            AllowTcpForwarding no
            X11Forwarding no
    

    Везде написано, что после чрута домашняя папка переезжает, следовательно authorized_keys ищется относительно нового дома, следовательно в passwd надо дом изменить на "/". пруф. Но в реале, когда я это проделал, внезапно стал спрашиваться пароль, т.е. ключ не находит.
    В итоге я домашней папкой объявил /home/www, чрутю в /var/www и всё работает. ЧЯДНТ? Может это наложение ошибок и скоро всё сломается?

    www-datax33:33:www-data:/home/www:/bin/false
    

    Debian 8, если что

    ιιlllιlllι унц-унц
  • adw0rd

    Сообщения: 22959 Репутация: N Группа: в ухо

    Spritz 26 ноября 2015 г. 17:02, спустя 2 минуты 37 секунд

    Не сталкивался, потому что фрилансерам даю фтп в силу их возможностей (и фтп чрутю, а нужные каталоги монтирую bind/unionfs)
    а проверенным пацикам дают ссх и сфтп соответственно

    @phpdude должен уметь, я просто уверен

    https://smappi.org/ - платформа по созданию API на все случаи жизни
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 26 ноября 2015 г. 17:03, спустя 38 секунд

    полагаю что авторизация (поиск ключа тобишь) до chroot, поэтому эти два события идут друг за другом, а не паралельно .. возможно то что ты прочитал так при иных условиях

    Сапожник без сапог
  • artoodetoo

    Сообщения: 5147 Репутация: N Группа: в ухо

    Spritz 26 ноября 2015 г. 17:06, спустя 3 минуты 20 секунд

    ну ок если так. сейчас работает, просто я засомневался и решил профи спросить.

    кстати, когда нормальный парсер Markdown будет? хули он в коде смайлики расставляет! на пхп давно бы решили вопрос )))

    ιιlllιlllι унц-унц
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 26 ноября 2015 г. 17:08, спустя 1 минуту 44 секунды

    на пхп давно бы решили вопрос )))

    @artoodetoo, хуеплет же сам же понимаешь?) тут не важно на каком языке, решают теже самые люди, а там хоть пхп хоть питон хоть на эрланге. пока нет настроения и времени нихуя не сдвинется ))

    Спустя 153 сек.

    вот блядь щас засяду тестировать походу

    Спустя 4 сек.

    любопытно

    Спустя 48 сек.

    [ubuntu] SSH key with OpenSSH SFTP chroot() with ChrootDirectory [ubuntuforums.org]

    Спустя 31 сек.

    ну короче на мой взгляд проблема как раз в том что ключи читает до chroot'а. поэтому такая беда

    Сапожник без сапог
  • adw0rd

    Сообщения: 22959 Репутация: N Группа: в ухо

    Spritz 26 ноября 2015 г. 17:13, спустя 5 минут 5 секунд

    Настроения нет, потому что cmd+Enter в хроме не пашет
    и нет нормальный адаптивной верстки :-(

    https://smappi.org/ - платформа по созданию API на все случаи жизни
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 26 ноября 2015 г. 17:13, спустя

    еще решение проблемы в таком виде

    AuthorizedKeysFile /etc/ssh-pool/%u.pub

    Сапожник без сапог
  • adw0rd

    Сообщения: 22959 Репутация: N Группа: в ухо

    Spritz 26 ноября 2015 г. 17:13, спустя 28 секунд

    еще решение проблемы в таком виде

    AuthorizedKeysFile /etc/ssh-pool/%u.pub

    @phpdude, норм решение

    https://smappi.org/ - платформа по созданию API на все случаи жизни
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 26 ноября 2015 г. 17:14, спустя 11 секунд

    то есть вбивать нормальный user home, а поиск ключа просто подменять на нужный формат и все.

    Спустя 13 сек.

    еще решение проблемы в таком виде

    AuthorizedKeysFile /etc/ssh-pool/%u.pub

    @phpdude, норм решение

    @adw0rd, да, дуд все может

    Спустя 7 сек.

    он герой

    Спустя 27 сек.

    это решение по крайней мере не "должно наебнуться изза наплыва ошибок" :)

    Сапожник без сапог
  • adw0rd

    Сообщения: 22959 Репутация: N Группа: в ухо

    Spritz 26 ноября 2015 г. 17:14, спустя 49 секунд

    @phpdude, мой герой

    https://smappi.org/ - платформа по созданию API на все случаи жизни
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 26 ноября 2015 г. 17:16, спустя 1 минуту 19 секунд

    @phpdude, мой герой

    @adw0rd, :-*

    Сапожник без сапог
  • mathete

    Сообщения: 435 Репутация: N Группа: Джедаи

    Spritz 27 ноября 2015 г. 1:37, спустя 8 часов 20 минут 55 секунд

    -

  • artoodetoo

    Сообщения: 5147 Репутация: N Группа: в ухо

    Spritz 27 ноября 2015 г. 8:58, спустя 7 часов 21 минуту 8 секунд

    @phpdude, буду пользовать AuthorizedKeysFile … %u спасибо!
    Итого, пишу чтобы себе закладочку сделать:
    Пусть будет группа неприкасаемых, пока в ней только www-data. В будущем разные сайты хочу разнести по учеткам.
    /etc/passwd

    www-datax33:33:www-data:/:/bin/false
    

    /etc/ssh/sshd_config

    #Subsystem sftp /usr/lib/openssh/sftp-server
    Subsystem sftp internal-sftp
    
    #Match User www-data
    Match group wwwonly
            ChrootDirectory /var/www
            PasswordAuthentication no
            PubkeyAuthentication yes
            AuthorizedKeysFile /home/wwwonly/%u.keys
            ForceCommand internal-sftp
            AllowTcpForwarding no
            X11Forwarding no
    

    Создаю группу тех, кто должен быть заключен в ловушку /var/www, их ключи будут лежать в одном месте.
    Стандартно папка ~/.ssh принадлежит пользователю и имеет доступ 700. Для общей свалки ключей придется изменить правило.

    # группа неприкасаемых
    groupadd wwwonly
    usermod -a -G wwwonly www-data
    # место хранения публичных ключей для всех, кто в группе
    mkdir /home/wwwonly
    chown www-data:wwwonly /home/wwwonly
    chmod 770 /home/wwwonly
    # ключик тащу на новое место, старая папка мне больше не нужна
    mv /home/www/.ssh/authorized_keys /home/wwwonly/www-data.keys
    rm -rf /home/www/
    # если до сих пор не сделал этого
    /etc/init.d/ssh restart
    
    ιιlllιlllι унц-унц

Пожалуйста, авторизуйтесь, чтобы написать комментарий!