ставьте клоуна)
Короче, вопрос, как принудительно задать shell у юзера в sshd_config?
Суть в чём: я пытаюсь запустить sshd_сервер от термукса, путём матов, угроз, костылей и прочего из adb на нерутированном девайсе.
Я уже скопировал нужные либы, сгенерил ключи, поправил конфиги, у меня уже запускается sshd, но не даёт залогиниться, так как
User shell not allowed because shell /data/data/com.termux/files/usr/bin/bash does not exist
Failed none for invalid user shell from 127.0.0.1 port 53309 ssh2
Запускаю через |HWMAR:/data/local/tmp/tmux_exp $ LD_LIBRARY_PATH=. LD_PRELOAD=./libtermux-exec.so $PWD/sshd -f $PWD/sshd_config -d
Логи https://paste.mva.name/6JLQjrEt.txt
Когда копировал логи, заметил, что похоже ещё надо как-то rexec поправить
rexec_argv[0]='/data/data/com.termux/files/usr/bin/sshd'
...
rexec of /data/data/com.termux/files/usr/bin/sshd failed: Permission denied
Почему я хочу ssh в adb? Ну, ля, хочу. Если запустится - оно удобнее чем adb, у которого странные отношения с терминалом,
А вообще, изначально - хотел запустить htop от shell-a, но вместо htop-a получил
255|HWMAR:/data/local/tmp/tmux_exp $ LD_LIBRARY_PATH=. LD_PRELOAD=./libtermux-exec.so $PWD/htop
Error opening terminal: xterm-256color.
Почему не взять дропбеар? Да х его з. Можно, если не нужно самому собирать под андроид.
почему я уверен, что если я залезу в телефон через ssh столь странным способом у меня заработает htop? Ну, может не заработает. Во-первых, никто не запрещает попробовать, телефон от этого сломаться не должен, вроде бы. А во-вторых - в любом случае я получу забавный опыт запуска sshd там, где он не предусматривался.
Может дело в том, что приложениям разрешено запускать бинарники только из своей папки
Я ща не понял, зачем тебе еще к этому адб, если из термукса это работает?
интересно конечно ты случаем не с плей маркета запускаешь термукс? на версии с ф-дроида у меня запускается нормально, только порт поменял
в /etc/users можно задать персональную оболочку
Там он не обновляется больше, насколько помню
Какой-то очень странный способ запуска sshd. Поставить openssh через пакетник без вот этих костылей не судьба?
Термукс запукается от юзера с урезанными правами. у юзера, с которым работает адб (whoami говорит что это shell) прав чуточку больше. он уже видит кто сколько памяти жрёт, на сколько загружен проц, имеет доступ к /dev/ и другие вещи, которые термукс не имеет
чтобы поставить что-то через пакетник, нужно сначала поставить в это что-то пакетник.
в термуксе есть пакетник...
Круто. замечательно. как это мне поможет запустить sshd с правами shell-a?
всмысле с правами шелла?
Я. Хочу. Вывести. В htop. Все. Процессы. Запущенные. На. Телефоне. Ещё раз: все. (ну, по возможности) Для этого. Нужно. Запустить. htop. из-под. юзера. shell HWMAR:/data/local/tmp/tmux_exp $ whoami shell Когда. Ты. запускаешь. htop. из. termux. у него. есть. доступ. только. к. своим. процессам.
Если пользовать термукс и поставить рут совсем никак — продолжай стродать дальше. Но т.к. ведроид — не GNU, то это уже из разряда оффтопа
У меня и шеловский топ, и термукс показывает одно и то же, но проц не показывает, пишет 0 (без рута) 🤷♂
У меня термукс в htop показывает вот что. (сорян за скрин)
И телеграм показывает, и все другие com.* *, кроме системных
на huawei p30 lite поставить рут совсем никак. Обсуждалось уже тут. Так же обсуждалось, что я покупал телефон, когда на него было поставить рут ещё можно. Но внезапно производитель эту фичу отключил.
А, давно обсуждалось. Ещё с моего старого акка. https://t.me/grouplinux/1431641
xda ВЕСЬ смотрел? Я помню с каким-то хуйвеем надо было дампать какую-то часть бутлоадера, отсылать в китайский чат + 5€ и ждать патча, который надо прошить (ну или самому делать, но я так и не понял ничего, что там делают)
Я видел переодически появляющиеся посты аля "дайте денег, и удалёнку на ваш комп, всё сломаю", но чёт пахнет какой-то дичью.
Возможно, надо проверять, но я лично подобный вариант делал для какого-то хуйвея, все работало, деньги вперед, правда
Стродай :) Алсо: > Error opening terminal Пробовал сунуть TERM=linux?
ы, кстати нет. щща попробую
LD_LIBRARY_PATH=. TERM=linux $PWD/htop Error opening terminal: linux.
terminfo мб поставить надо?
Читай тред полностью
Ладно, вкинуть не удалось, придётся читать 🌚
afaik это "где-то слышал" или "ставил сам"? (кстати, я где-то слышал что под этим же названием хуавей ещё один телефон выпустили, и не факт что мы об одном и том же)
Это "где-то слышал и могу попробовать нарыть если надо"
Просто запусти sshd из под adb
я в шоке. как же я раньше-то не догадался. так просто всё оказывается. Расказывай как. По пунктам. Начнём с того, что sshd в PATH нету (сюрприз)
> Начнём с того, что sshd в PATH И что?
я не спрашиваю что. я спрашиваю "как". ты же написал что это "просто". значит можешь рассказать как
А, да, ещё. Из термукса: :~$ which sshd /data/data/com.termux/files/usr/bin/sshd Из ADB 127|HWMAR:/ $ /data/data/com.termux/files/usr/bin/sshd /system/bin/sh: /data/data/com.termux/files/usr/bin/sshd: inaccessible or not found 127|HWMAR:/ $ ls -la /data/data/com.termux/files/usr/bin/sshd ls: /data/data/com.termux/files/usr/bin/sshd: Permission denied 1|HWMAR:/ $ ls -la /data/data/com.termux/files/usr/ ls: /data/data/com.termux/files/usr/: Permission denied 1|HWMAR:/ $ ls -la /data/data/com.termux/files/ ls: /data/data/com.termux/files/: Permission denied 1|HWMAR:/ $ ls -la /data/data/com.termux/ То есть у adb нет прав на доступ в директорию к термуксу. Я всё ещё жажду получить инструкцию по "просто запусти"
> То есть у adb нет прав на доступ в директорию к термуксу. chmod не сработает?
Там на транзите где-то беда
У вас либо телефон рутирован, либо версия андроида разная
Только что выдал 755 на /data/data/com.termux, ls -ld на эту папку из adb shell даёт Permission denied
Чистый Андроид точно другой, у меня 13
Это я из термукса сделал если что
Я это уже нашёл. Ну, то что надо сменить. Вопрос на какое. Ибо всё что пробовал (не вспомню на память) не подошло
нельзя. (фьють) Error opening terminal: xterm.
тооже йух
да в целом я top-ом глянул что жрёт память. просто htop-ом оно как-то красивее и нагляднее
Слушай, а почему у тебя нет доступа до /data/data/com.termux/files ? Вроде оно world-readable...
Тут бы глянуть исходники, но я не знаю как это свойство должно выглядить
На самом деле можно: 1) Положыть x/xterm-256color в $HOME/.terminfo (Если текущий $HOME нельзя писать -- то установить $HOME куда-нибудь, где писать можно). 2) Попробовать положыть результат infocmp -C -r xterm-256color в переменную TERMCAP (вот прямо вот всю эту портянку).
Да какие исходники, попробуй в adb туда cd сделать и всё такое.
А, слушай, кажэтся я понял -- у тебя libncurses не от termux что ли в итоге? И вообще все либы? (А нахрена? Чем тебе термуксовый ssh ненравится?)
Да, посмотрел -- укажы TERMINFO=/data/data/com.termux/files/usr/share/terminfo
.... permission denied
Ну, перепишы папочку хоть в Download, и укажы её.
Обсуждают сегодня