LINUX.ORG.RU
ФорумAdmin

Управление сервером без ssh

 , ,


0

2

Здравствуйте.

Существует проблема. Дали в работу проект, а из доступов выдали только FTP. SSH доступ клиент предоставить не может, то ли из-за не понимания сути просьбы, толи из каких-то своих соображений.

При этом нам, этот проект надо как-то поддерживать. Прав пользователя из под которого запускаются скриты PHP вполне хватает на запуск git, и прочей мелочевки.

Собственно вопрос в том, есть ли какое-то решение, которое можно запустить из под php, а затем конектиться к нему терминалом?

phpshell - от части подходит, но у него нет возможности работы с интерактивными программами, например тем же mc.


Объясните клиенту, либо они дают все доступы для работы, либо идут лесом. Самый адекватный вариант.

Чем городить какие-то костыли через php.

th3m3 👍👍
()

при помощи того же phpshell скачать сорцы openssh, собери и запусти на на > 1024 порту, подключись и получи нормальную сонсоль.

Spoofing
()

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

CHIPOK
()
Ответ на: комментарий от Deleted

клиент обнаружив шелл

Это не должно быть by design: секрет фирмы же :)

gh0stwizard
()
Ответ на: комментарий от gh0stwizard

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

Deleted
()
Ответ на: комментарий от Deleted

Тут еще вопрос, с чего все решили, что все порты доступны? А заливать можно все что угодно, только не факт что это заработает. gcc может не оказаться, файрволл может быть грамотно настроен, все может крутиться под виртуалкой с урезанными (пониженными до минимума) COMPAT. Может сразу брутфорс на рута запустить?

PHP shell это не преступление. В грамотно настроенном серваке он максимум что позволит — управлять файлами через веб-морду. Что и нужно ТС.

gh0stwizard
()
Последнее исправление: gh0stwizard (всего исправлений: 1)
Ответ на: комментарий от Deleted

Ну это уже мало вероятно но возможно, если спустится чуть на землю то если на сервере че нибуть поломается, то я уверен что ТС обвинят и накажут. Так что это самый лучший вариант с возможных.

CHIPOK
()
Ответ на: комментарий от gh0stwizard

PHP shell это не преступление.

Преступление не шелл, а «неправомерный доступ к информации», шелл лишь инструмент для оного, и если в договоре не описан этот самый доступ, то он какбы запрещен 8)

Deleted
()
Ответ на: комментарий от CHIPOK

Если говорить про операции с пайпами, то не очень. А на шеллах, что я дал там это можно.

gh0stwizard
()
Ответ на: комментарий от gh0stwizard

если дают из пыха запускать что попало вроде гита и FTP голой жопой наружу торчит, а ssh нет - то это что-то нездоровое и там вряд ли имеется грамотный админ.
вообще, если клиент не может/не хочет предоставлять доступ, то пусть сам занимается сопровождением.

Iron_Bug ☕☕☕☕☕
()
Ответ на: комментарий от Deleted

неправомерный доступ к информации

К какой информации? Тебя кто-то просит вылазить вне своего каталога? А если все сделано через одно место, то крутить php в небезопасной конфигурации уже преступление, т.к. открывает преднамеренную дыру.

gh0stwizard
()
Ответ на: комментарий от gh0stwizard

К какой информации?

Никого не беспокоит, емнип в законе даже если ты просто залез в админку чужого сайта и еще ничего не делал - то уже доступ есть.

Deleted
()
Ответ на: комментарий от Deleted

Никого не беспокоит, емнип в законе даже если ты просто залез в админку чужого сайта и еще ничего не делал - то уже доступ есть.

Нет не беспокоит, т.к. доступ дали на доверии. Зачем было давать доступ, даже к фтп, когда и так ясны последствия?

gh0stwizard
()
Ответ на: комментарий от gh0stwizard

доступ дали на доверии.

доступ на установку системы, а не на «следующие 100 лет», в этом разница 8), все упирается в то что написано у них там в договоре.

у нас был договор на сопровождение, у нас сразу был оговорен доступ - нет доступа «пока-пока!». Был случай когда саппорт задекларировали, а доступ нет, его и не дали, срач был на уровне руководства - хотя мы могли залезть на сервер, но делать это «нелегально» себе дороже, т.к. народ искал повод нам подгадить, и «хакирьство» нам бы никто не простил.

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от Deleted

все упирается в то что написано у них там в договоре.

Верно. Только как можно было подписать договор с доступом только по FTP и после требовать дать SSH?

--

Вобщем, когда у меня случаются такие ситуации, то я обычно делаю то, что нужно, чтобы выполнить задание. Любые претензии про «неправомерный доступ» легко отшиваются, т.к. ничего этого я не делал: не лез туда куда не надо; не сливал данные, которые не нужны для работы; не оставлял дыр после себя; подчищал то, что не нужно для работы сайта/сервера. Это и есть доверие. Либо ты подтверждаешь свое доверие, либо как экс-сотрудник яндекса падаешь вниз.

Все зависит от клиента. Чувствуешь, что клиент бяка — не делаешь ничего, пока не сделают по-нормальному. А если клиент располагает и объясняет причины отказа, то идешь на встречу и выкручиваешься при необходимости. Молча.

gh0stwizard
()
Ответ на: комментарий от gh0stwizard

Согласен, надо смотреть что там за клиент и т.п. в конце концов если сделать все через шелл, а потом удалить то нмв ничего страшного, но ТС видимо не планирует удалять.

Deleted
()
Ответ на: комментарий от Deleted

Некоторые шеллы, что я дал имеют ограничение по IP. Все имеют ограничение по паролю. Так что не вижу проблем с шеллом, кроме уж совсем слабоумных действий, типа без пароля и паролей в 123.

gh0stwizard
()

Если там есть бинарник /usr/sbin/sshd, то скопируй его конфиг из /etc/ssh/sshd_config в свою папку, поправь там пути к ключам машины в этой папке, сгенерируй ключи с помощью ssh-keygen, и запусти /usr/sbin/sshd -f <твой_файл_конфига> -p <порт_>_1024> (от обычного пользователя). И, конечно, согласуй с клиентом, что ты сам на время работы с сервером будешь запускать sshd.

Если бинарника нет, то распакуй его из бинарного пакета нужного дистрибутива куда-нибудь в свою папку. И не надо ничего компилировать.

anonymous
()
Ответ на: комментарий от EvgGad_303

Допустим ТС дали вместо FTP SFTP, как твои мысли ему помогут? Вопрос с шеллом ты не решил. Вопрос с запуском консольных программ ты не решил. Вопрос с получением доступа к файлам вне настроек SFTP (пусть они мега-секьюрны) ты не решил.

--

С Iron_Bug я не согласен только в том моменте, что если много воротить носом будешь сидеть на хлебе и воде. Однако, она симпатичная русская канадка, так что ее позиция ясна.

gh0stwizard
()
Ответ на: комментарий от gh0stwizard

Спасибо.

В общем после того как полдня промудохался с этой проблемой в итоге получил следующие результаты.

из хорошего

Был написан bash-скрипт, запускаемый из под php, который делал почти все. Менял директорию; запускал ssh-agent; ставил ему нужные сертификаты для git через ssh; затем запускал клонирование репозитория, в котором лежал проект.

Все это работало.

А из плохого, на хостинге оказался какой-то урезанный git, и команда git pull тупо не работала.

Поэтому, я решил прекратить мутарства, и просто заюзал такую неплохую вобщемто штуку как git-ftp.

Аплоад довольно долгий, и нет отслеживания состояния файлов на сервере, но зато работает.

Всем спасибо.

merlex
() автор топика

давать фтп вместо шелл еще хуже на порядки в плане безопасности

не исключено, что сервера заказчика имеют неосиляторство в плане безопасности, админства и прочего

предложите встречно: нормальное админство, аудит кода, рефакторинг, оптимизацию, услуги по GPL-лицензированию проекта, переезд на github, обучение, консалтинг, предоставление общественных интересов и т.п.

anonymous
()

Какой еще git? Какой SSH? Это же ПХП. Откуда ты вообще узнал про ssh и git?

redixin
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.