Антон Губарев, копать в сторону хостера. PTR прописывает владелец сетевого сегмента. В большинстве случаев это хостер. У многих хостеров можно это сделать самостоятельно через панель управления, например digitalocean и hetzner это позволяют.
27.01.2015 14:36:30
Антон Губарев, копать в сторону хостера. PTR прописывает владелец сетевого сегмента. В большинстве случаев это хостер. У многих хостеров можно это сделать самостоятельно через панель управления, например digitalocean и hetzner это позволяют.
|
|
|
10.12.2014 16:24:15
s909, ну, я просто установил:
# yum install vsftpd и поправил пару параметров в конфиге: anonymous_enable=NO nopriv_user=bitrix chroot_local_user=YES Потом создал пользователя: # adduser ftpuser -g600 -o -u600 -d /home/bitrix/ext_www/ параметры -g и -u нужно выставить такие же, как у пользователя bitrix: # cat /etc/passwd | grep ^bitrix bitrix:x:600:600::/home/bitrix:/bin/bash Мне нужен был всего один пользователь с доступом ко всем сайтам и директориям. Если нужен более гранулированный доступ для нескольких разных пользователей, то лучше использовать виртуальных пользователей ftp. Как это сделать - смотреть в справке. |
|
|
01.12.2014 13:06:18
Боюсь, что приличных вариантов нет. Любая виртуализация в linux потребует манипуляций с ядром, чего лучше избегать на работающем production-сервере.
Проще арендовать новый сервер (если речь про хостинг) и на него перетащить все сайты, уже в среду виртуализации, например |
|
|
09.11.2014 20:51:54
Иван, вот так уже предметнее. Но чтобы хоть как-то успешно воспользоваться указанной, гм, "уязвимостью", пользователь должен знать пароль к mysql.
Тут возможны три сценария: 1) нам необходимо дать кому-то (например, разработчику, который докручивает решение) доступ на все директории сайта. В таком случае он легко читает файлик dbconn.php и получает пароль. Но мы ему и так дадим пароль на mysql и еще и в явном виде разрешим проброс порта в ssh, потому как это необходимо для работы (а некоторые странные люди даже выставляют mysql голой жопой в интернет для таких задач). Даже если мы запретим такому пользователю проброс портов, тунелирование или даже создадим виртуального ftp-пользователя, никто не помешает ему установить web-shell на сайт, который (внимание!) все равно будет работать с правами реального пользователя, от которого запущен апач, в данном случае это пользователь bitrix. Соответсвенно, риск "о господи, пользователь может пробросить порт! Ололо! Алярма!" считаем приемлемым, т.к. никакого повышения прав или несанкционированного доступа к чему-либо, кроме того, к чему и так есть доступ, не происходит. Условно говоря, давая кому-то ключ от входной двери, ты не паришься, сможет ли он открыть форточку. 2) нам необходимо дать кому-то доступ в какую-то конкретную директорию, например с каким-то модулем, для его доработки. Тут пользователь не может посмотреть файл dbconn.php, но в большинстве случаев ему все равно требуется доступ к базе и он его получит. Параноидальные режимы "надо же создать отдельного mysql-пользователя с доступом только в конкретные таблицы!" не рассматриваем. В реальности так никто не делает, практически никогда. Слишком невыгодное соотношение трудозатраты/безопасность. 3) вариация второго, но доступ только в папку с какими-нибудь картинками или еще чем-то подобным, когда нет доступа к директориям, где можно запускать php-файлы на исполнение и, соответственно, веб-шелл не запустить. Что ж, веб-шелла уже и так нет, пароль на mysql мы не сообщаем и узнать его пользователь не может (нет доступа к dbconn.php из-за chroot), остается только возможность пробросить порты и рассылать СПАМ от имени нашего сервера и делать подобные нехорошие штуки. Но т.к. этот пользователь - человек, которого мы нанимаем и, соответственно доверяем в какой-т остепени, а все действия оседают в логах (кто и когда подключался), то вероятность реализации данной уязвимости стремится к нулю. А т.к. риск это (грубо) - функция вероятности реализации угрозы потенциальной уязвимости и итогового влияния на актив, то при вероятности, стремящейся к нулю, риск также стремится к нулю. Итак, если все же заморочиться оценкой рисков и посчитать ROI трудозатрат на реализацию ftp с виртуальными пользователями vs реализацию простого и быстрого способа (фактически - одна команда в ssh, также одна команда на отключение пользователя, всё, никаких больше телодвижений) способа реализации FTP-доступа, указанного выше, то мы приходим к выводам, что это вполне адекватный задаче способ с приемлемым уровнем риска. Итого, задача решается с минимальными трудозатратами, обеспечивая адекватный результат. Я лично не вижу смысла (кроме как неиссякаемого перфекционисткого стремления к идеалу) заморачиваться чем-то еще. Но спасибо за поднятые вопросы, они очень интересны, хорошая получилась беседа, полагаю, что наша беседа пригодится читающим, каждый сделает свои выводы исходя из своих приоритетов и задач. |
|
|
09.11.2014 19:34:16
Иван, это не заблуждение, это man sshd_config
На моем сервере туннель не работает, как ему и положено.
|
|||
|
09.11.2014 18:47:05
|
|||
|
09.11.2014 17:54:07
Иван, любопытные рассуждения. Жаль, что отталкиваются от неверных предпосылок. Директива PermitTunnel в конфиге sshd по умолчанию имеет значение No. И в BitrixEnv оставлено значение по умолчанию. Это нужно залезть и изменить конфиг и не забыть перезапустить ssd демон.
Поэтому все описанные сценарии неосуществимы. Если есть еще идеи возможных угроз - прошу поделиться. Пока я не вижу никаких. |
|
|
08.11.2014 09:55:37
Да, есть смысл это делать, если нужно предоставить разный доступ нескольким разным людям. Но если нужно всего одному - то без разницы. |
|||||
|
07.11.2014 21:29:13
Анна Головко, если есть желание держать в голове еще одну деталь при каждом обновлении - велкам, каждый сам себе выбирает приключения. Я свой вопрос вполне конкретно задал - как решить задачу без корректировок дефолтных, штатных прав на файлы и папки. Решение есть, через штатный механизм OS. Оно является оптимальным во всех смыслах.
|
|
|
07.11.2014 18:20:23
Анна Головко, вот об этом и речь. BitrixEnv по неведомым причинам запихивает сайты в папку пользователя, на которую права 700. И либо требуется менять дефолтные права на папку пользователя (что не есть хорошо и неизвестно, как поведет себя скрипт обновления BitrixEnv, не захочет ли восстановить права и все в таком духе), либо создавать пользователя с идентичным UserID. Выше предложено второе и по моему мнению, второе лучше. Тоже не очень, грязновато, но лучше, чем права направо-налево корежить с неизвестными последствиями в будущем.
Так понятнее? |
|
|
07.11.2014 17:09:19
Анна Головко, проблема немного сложнее, чем вам кажется. Что такое права на папку "700" вам известно? В данном случае ключевое значение имеет вторая цифра, которая как раз сообщает, какие права назначены группе, к которой принадлежит владелец папки. И какие же? Правильно - никаких. Доступа нет. И именно об этом я говорил, когда писал "не ломая права на папку".
|
|
|
06.11.2014 22:50:41
Виталий Черепанов, спасибо, помогло!
Магически-шаманско-бубенная часть этой инструкции - создание юзера с айдишником пользователя bitrix. Мне почему-то казалось, что это невозможно (id пользователя должен быть уникален). По крайней мере usermod не дает сменить существующему пользователю id, только удалить и создать заново. |
|
|
06.11.2014 22:01:03
Александр Панишев, и нет никакого workaround'а приличного?
|
|
|
06.11.2014 08:38:21
Андрей, не знаю, как было в 4-й (не пользовался), а вот в пятой все сайты лежат внутри личной папки пользователя bitrix и права на нее только ему предоставлены. И апач запущен от имени bitrix.
Соответственно, дать кому-либо доступ, не "поломав" права на папку /home/bitrix мне не представляется возможным. Может у кого-то есть идеи, как дать доступ FTP-пользователю в какую-нибудь конкретную папку сайта или же к папке ext_www, например? Не ломая прав на папку /home/bitrix? |
|
|
05.11.2014 11:38:59
|
|||
|
04.11.2014 16:21:52
Просвирнов Андрей, ну, "решить" - это громко сказано. Нашел workaround - установил CentOS 6.5, поставил BitrixEnv, обновил CentOS (yum check-update && yum upgrade) до 6.6. В такой последовательности все норм.
|
|
|
04.11.2014 02:37:29
|
|||
|