電話の標準ポートにSSH、HTTP、SMBサーバーを配置したいのですが。
Termuxをrootとして実行し、サーバーを特権ポートで実行する方法はありますか?
ロック解除されたデバイスでルート化されたAndroid 7.1を実行します。
電話の標準ポートにSSH、HTTP、SMBサーバーを配置したいのですが。
Termuxをrootとして実行し、サーバーを特権ポートで実行する方法はありますか?
ロック解除されたデバイスでルート化されたAndroid 7.1を実行します。
回答:
su
Termux のデフォルトは単純です。実行すると/system/bin/sh
、Termuxのシェル(通常はbash
)の代わりに表示されます。この問題を解決するには、次の方法でTermuxのカスタムsuラッパーをインストールできます。
apt tsuをインストール
そして、あなたはtsu
あなたbash
とすべてがルート特権の下にあるように実行することができます。
詳細情報:の
ようなエディターを使用vim
して確認する/data/data/com.termux/files/usr/bin/su
と、10行目でexec su $@
直接呼び出されtsu
、でシェル検出が実行され、80行目で実行されます。
exec su --preserve-environment -c "LD_LIBRARY_PATH = $ PREFIX / lib $ ROOT_SHELL"
Termux環境を維持します。
同じ問題を自分で解決しました。津は私のためにうまくいきませんでした。私はこのプロジェクトを見つけました:https : //github.com/st42/termux-sudo
また、ルートとしてsshdを実行したいと思いました。これはそのままで、termux-sudoを備えていますが、最初はauthorized_keysファイルを使用したくありませんでした。これは、その権限とすべての親ディレクトリがルートに制限されていないためです(私のデバイスでは/ディレクトリを制限できないため)ルート700に移動します。メディアプレーヤーソフトウェアが何らかの理由で動作しなくなったためです。
そのStrictModes no
ため、sshd構成ファイルにオプションを追加する必要がありました/data/data/com.termux/files/usr/etc/ssh/sshd_config
。これで機能します!:)
suを実行すると、termuxサブシェルから抜けます。SELinux permissiveを試すことができます。これが、許可が拒否されたことを回避する方法です。