Kindle Fire HD 10に、TermuxというLinuxコンソールアプリを入れて、SSHで操作してみました!
Termux自体は以前から使っていたのですが、やはりスマホやタブレットのキーボードでは少し使いづらい……
なのでSSH接続→PCから遠隔操作で、楽に作業をできるようになります!
どんなことができるの?
PCや別のAndroid端末のTermuxなど、SSH接続が使える端末からリモートで、Termuxを操作することができます。
Kindle Fire HD 10にTermuxを入れる
PlayストアからTermuxをインストールします。
Kindle Fire HD 10にPlayストアを入れるには、ごにょごにょしないといけません。
Playストアのインストールは、自己責任でございます。
クライアント側でSSH鍵の作成
ssh-keygenを使って、SSH鍵を作成する。
- 「ssh-keygen」コマンドを実行
- 出力先パスを聞かれるので、特に指定がなければ、そのままEnter
- 設定するパスワードを入力
- パスワードをもう1度入力
その際の表示はこんな感じ(先頭の数字は手順と対応)。
[1] $ ssh-keygen Generating public/private rsa key pair. [2] Enter file in which to save the key (/data/data/com.termux/files/home/.ssh/id_rsa): [3] Enter passphrase (empty for no passphrase): [4] Enter same passphrase again:
こんな感じで出力されればOK。
$ ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/data/data/com.termux/files/home/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /data/data/com.termux/files/home/.ssh/id_rsa. Your public key has been saved in /data/data/com.termux/files/home/.ssh/id_rsa.pub. The key fingerprint is: SHA256:Nu+zGyqS0rguyaeZ/HSOQ2hT4H2lu7FEwBCKjLZqRe0 u0_a24@localhost The key's randomart image is: +---[RSA 3072]----+ | o+ | |=. o. . | |=oo...o | |..oo.+ | | .o.oE. S | |.+.. + . o | |+oo+.o+ o | |=.*oBo. o.. | | B*=.o .. ++ | +----[SHA256]-----+
これで「~/.ssh*1」に、
- id_rsa
- id_rsa.pub
ができています。
このうち「id_rsa」を操作するPCに送って任意のパスに置きます。
ぼくはpushbulletを使って、転送しました。
scpコマンドとかでもいい気がするけど、Windows間とでできるのかはよくわからない……
SSHサーバを実行……したらエラー
SSHサーバをtermuxで実行しようとしたらエラーが出たので対処。
そのエラーというのが、いろいろやったときに出るこれ。
$ sshd WARNING: linker: Unsupported flags DT_FLAGS_1=0x8 WARNING: linker: Unsupported flags DT_FLAGS_1=0x8
まずは問題解決に使うパッケージをインストールします。
$apt install termux-elf-cleaner
問題が発生しているファイルを検索します。
$ find $PREFIX/lib -type f -name *.so* | xargs -I{} termux-elf-cleaner {} termux-elf-cleaner: Replacing unsupported DF_1_* flags 8 with 0 in '/data/data/com.termux/files/usr/lib/libcrypto.so.1.1' termux-elf-cleaner: Replacing unsupported DF_1_* flags 8 with 0 in '/data/data/com.termux/files/usr/lib/libssl.so.1.1'
インストールした問題解決用パッケージ「termux-elf-cleaner」を、検索にヒットしたファイルに実行します。
$ termux-elf-cleaner /data/data/com.termux/files/usr/lib/libcrypto.so.1.1 $ termux-elf-cleaner /data/data/com.termux/files/usr/lib/libssl.so.1.1
ぼくの場合この2つでしたが、他にもファイルが表示されたら、そいつらにも実行が必要だと思われます。
改めてSSHサーバを実行
sshdやってもでなくなった!
ps ax | grep sshd
で確認。
ちゃんと立ち上がってますね!
ということで、SSHでアクセスします。
$ ssh -i <作った鍵のパス> -p 8022 <接続先IP>
キター!
あとがき
Kindle Fire HD 10に、Termuxを入れてSSH接続するお話でした!
PCで作業できる場合、タブレットとかのキーボード操作って面倒ですよね。
SSH接続しちゃえば、PCで作業しながら、タブレットもコンソール操作できちゃいます。
調べながらいじくるにも、この方が楽ですしね。
Androidなら同じことができるので、家で面倒ながらポチポチしているならお試しください!
とはいえ、Androidようにキーボードがあれば、通信速度を踏まえるとそちらの方が早いとは思いますが。
*1:/data/data/com.termux/files/home/.ssh