Introduction
Chromebookを久しぶりに起動して、ARM版のLinuxを動かしたくなった。
色々調べていると、Chrome OS側でLinuxの環境を提供する仕組み (ベータ) が用意されているようになった。
で、中のLinuxにsshでアクセスしたくなった。
説明によればポート番号2222でアクセスできるようだけど、
1 | This service allows sftp connections only.` |
というsftpしか使えないと言うメッセージが出る。
そもそも、systemctlでsshdが動いていない。
どういうことなの?
Resolution
手順としては3ステップ
ユーザにパスワードを設定
Linux内にて、sudo passwd xxxx
でxxxxユーザにパスワードを設定。
ポート番号の変更
Linux内にて、/etc/ssh/sshd_config
を開き、下記のように変更
1 | # default value. |
ポート番号は1024より大きい、かつ2222以外の値を指定
sshd の解放
Linux内にて、/etc/ssh/sshd_not_to_be_run
というファイルを /etc/ssh/sshd_not_to_be_run.bak
に変更し、systemctl restart sshd
でデーモンを再起動。
ポート転送
Chrome OS上で、Linuxに向けてポート転送を実行。
ポート転送先は、sshdで設定したポート番号を指定。
以上で、Chrome OS上のipと上述のポート番号を使用してsshで内部のLinuxに接続できるようになる。