up:: Linux
別のマシンのターミナルに繋ぎたいときの超基本処理。
keygen
ssh-keygen -C "comment" -t ed25519 -f filename
type
vscodeをlinuxに繋ぐ
Visual Studio Code の Remote SSH で Linux 上のファイルを直接編集する VSCode - Qiita
一般ssh
- キー作ってクライアントとサーバーの特定フォルダに入れる
- クライアントが秘密鍵
- サーバー
- サーバーにログイン用のユーザーを作る
- ファイアウォールでssh用のtcpを許可
- 後述するコンフィグで開けるポートのtcp
sudo firewall-cmd --add-port 25565/tcp
永続化する場合は--permanent
付けて実行後--reload
でリロードする。
- sshサーバーの設定
- `/etc/ssh/sshd_config`を編集、`PermitRootLogin`など
- sshサーバーを起動
- `systemctl start sshd`
- クライアント
- コンフィグを書く
- 間違えやすいポイント
- コンフィグを書く
Host #適当な名前
HostName #IPアドレスかURL
User #linuxのユーザー
Port #ポート、sshのデフォは22
IdentityFile #秘密鍵のパス、パス区切りは/ ~使用可能
IdentitiesOnly yes #IdentityFileが必要ならyes
-
- コンフィグファイルの権限を自分だけに設定
- windows特有の問題
- ssh接続
- パスワードを訊かれなければOK
- 訊かれる場合はサーバーで
PasswordAuthentication:no
やPubkeyAuthentication yes
を設定する
- コンフィグファイルの権限を自分だけに設定
初心者がSSHについて学ぶ(´・ω・`) Network - Qiita
最低限のセキュアなSSH接続 初心者 - Qiita
Windows に何もインストールせずに SSH を使う OpenSSH - Qiita
powershellのプロファイルとして設定しておくと、すぐに繋げられるようになるらしい。
.ssh/configファイルでSSH接続を管理する Linux - Qiita
Permission denied (publickey)
キーが見つからないとなる奴。
自分の解決策とか意地張ってないで、サーバー側で/etc/ssh/sshd_config
でLogLevel DEBUG
を張ってsystemctl restart sshd
をかけ、繋ぎ直してjournalctl -u sshd -n 100
をかける。
今回は接続対象のユーザーのホームディレクトリに~/.ssh/authorized_keys
が無かった。
……それと作ったディレクトリ所有者がrootだったので、対象のユーザーに変更した。chown。
デバッグ sshやscpで接続できないときに確認する内容(debug)
arch linux - Where are my sshd logs? - Unix & Linux Stack Exchange
【chown】Linuxでファイルやディレクトリの所有者やグループ変更するコマンド | UX MILK
scp
ファイルをコピーしたい場合、このsshを通したscpコマンドが使える。
scp target path
で動き、リモートマシンはuser@hostname:path
で指定できる。
【備忘録】リモートホスト⇔ローカルホスト ファイルの転送 Linux - Qiita
【scp】Linuxでリモート・ローカル間でファイルを転送するコマンド | UX MILK
sudo権
sudoは/etc/sudoers
で管理されている。
ここに書いてあるグループにユーザーを追加すればOK。
ubuntuとかだとsudoグループらしいが、endeavourosだとrootか、includeされている/etc/sudoers.d/10.installer
のwheel。
wheelが推奨されてるはず。
Sudo - ArchWiki
Permission to execute sudo commands without password rules being overwritten by another file - General system / Newbie - EndeavourOS
TermuxにVSCode繋ぐ
vscodeはglibcベースのLinuxディストリビューションに繋ぐことしか想定してない。要するにUbuntuなど。
なのでUbuntuを入れてそこでsshサーバーを建てて繋ぐ。
Remote Code Development on Termux using VS Code and Neovim
GitHub - MFDGaming/ubuntu-in-termux: This is a script by which you can install Ubuntu in your termux application without a rooted device
なんか知らんが駄目だった。
パスワードが効かなかった。cursorじゃなくvscodeも使ったが駄目だった。