VSCode の Remote-SSH を使用して Linux に接続し、リモート開発を行う

VSCode の Remote-SSH を使用して Linux に接続し、リモート開発を行う

Remote-SSHをインストールして設定する

まず VSCode を開き、拡張機能を見つけて、Remote を検索し、Remote-Development プラグインをダウンロードすると、Remote-SSH を含む他の Remote プラグインが自動的にインストールされます。


設定に移動し、 sshを検索し、拡張機能の Remote-SSH でShowLoginTerminalオプションを見つけて選択します。接続時に、ターミナルで yes またはパスワードなどの入力が求められるためです。


次に、Linux サーバーのアドレス情報を設定する必要があります。CTRL CTRL+SHIFT+Pを押してsshを検索し、 Open Configuration Fileオプションを見つけます。


次に住所情報を入力します:

Linux への OpenSSH サーバーの導入と設定

ウブントゥ

// 最初にアンインストールします sudo apt-get remove openssh-server
//インストール sudo apt-get install openssh-server

//sshd サービスを再起動します sudo service ssh --full-restart
// sudo systemctl enable ssh を自動的に開始します

セントOS

//インストール yum install -y openssl openssh-server

//sshd サービスを再起動します systemctl restart sshd.service

// systemctl enable sshd を自動的に起動します

設定ファイルの編集

設定ファイルのバックアップ

sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.backup

設定ファイルの編集

sudo vim /etc/ssh/sshd_config

構成ファイルに次の構成を追加します。

ポートはカスタマイズ可能



パスワードでログイン


保存後、sshd サーバーを再起動します。再起動コマンドは上記に記載されています。

パスワードを使用してSSHに接続する

設定した Linux サーバーを見つけます。


パスワードを入力して Enter キーを押します。


次に、フォルダーを開いてコードの記述を開始します。


CTRL + SHIFT + ~を使用してターミナルを呼び出すと、ターミナルでコマンドを操作したり、ファイルを開いたりしてコードを記述することができます。

キーを使用してパスワードなしでログイン

クライアント構成

ローカルの Windows オペレーティング システムに ssh がインストールされていることを確認します。
SSH キー ペアを生成します。

ssh-keygen -t rsa -b 4096

(-b 4096 は、生成される RSA キー ペアの長さが 4096 ビットであることを意味します) このコマンドを入力すると、キー ファイルが生成されるディレクトリを指定するように求められます。この手順をスキップするには、Enter キーを押します。生成されるディレクトリはc:\user\WINDSUN\.ssh id-rsaid-rsa.pub 2 つのファイルが生成されます。最初のファイルは秘密キー ファイルで、2 番目のファイルは公開キー ファイルです。ユーザー名は、自分のコンピューターのユーザー名です。

サーバー側の設定

sshサービスが開始されているかどうかを確認する

netstat -ntlp | grep ssh

設定ファイルを変更する

vim /etc/ssh/sshd_config

ここで最も重要なことは、キーベースの認証を使用したログインを許可するには、 PubkeyAuthentication yesに設定する必要があることです。
最後に、クライアントの公開鍵id-rsa.pubファイルを対応するユーザーのルートディレクトリの.sshフォルダにアップロードし、.sshと入力して公開鍵の内容をauthorized_keysファイルにコピーします。

cp id_rsa.pub 承認キー

次に、対応するファイルの権限を設定します

chmod 700 .ssh
chmod 600 .ssh/承認済みキー

VS リモートSSHプラグインの設定

vscode の Remote - SSH プラグイン構成ファイルを設定します。

ホスト アリユン
  ホスト名 XXXX
  ユーザー XXX
  アイデンティティファイル C:\Users\WINDSUN\.ssh\id_rsa

発生した問題

パイプラインエラーが報告された場合、次のような問題が考えられます。

  • Linux サーバーの ssh 設定に問題があります。設定を変更して問題が解決するかどうかをテストします。
  • サーバー上に作成された「.vscode-server」ディレクトリを削除します。これは、ホーム ディレクトリに作成された隠しディレクトリです (「ls -la」を使用すると、すべてのファイルを表示できると思います)。そこに間違ったデータがキャッシュされている可能性があるので、ディレクトリを削除すると状況がかなり改善されます。削除後、vscode でリモート SSH 経由で再接続を試みることができます。
  • それでもうまくいかない場合は、FTPを使用してローカル公開鍵をLinuxに再度アップロードし、それをauthorized_keysファイルにコピーし、権限を設定し、SSHサーバーを再起動して再接続してみてください。

予防

公開鍵を使用して Linux に初めて接続する場合、パスワードの入力を求められることがあります。接続が完了すると、ユーザーの .ssh ディレクトリに known_hosts ファイルが生成されます。このディレクトリには、公開鍵と秘密鍵 id-rsa.pub と id-rsa も含まれています。次に、公開鍵をサーバーにアップロードし、上記のコピーを .ssh/authorized_keys に繰り返し、権限をリセットして、Linux に再度接続してみます。パスワードを再度入力する必要はありません。

VSCode の Remote-SSH を使用して Linux に接続し、リモート開発を行う方法についての記事はこれで終わりです。VSCode の Remote-SSH を使用して Linux に接続する方法についての詳細は、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • リモート SSH 経由で vscode にリモート接続して設定する方法
  • VSCode で Remote-SSH プラグインを使用する方法
  • VScode リモート SSH リモート編集とデバッグコード
  • Win10 で VScode リモート開発 ssh-remote を構成する (パスワードなしのログイン)

<<:  fullpage.js フルスクリーンスクロールの具体的な使い方

>>:  MySQLクエリ速度を最適化する方法

推薦する

Xshell を使用して VMware 上の Linux 仮想マシンに接続する (グラフィック手順)

はじめに: 最近 Hadoop プラットフォームの構築を勉強し始めたので、ローカルマシンに VMwa...

MySQLのロック機構に関する最も包括的な説明

目次序文グローバルロック完全なデータベース論理バックアップFTWRL と set global re...

CSS XTHML の記述標準とよくある問題の概要 (ページ最適化)

プロジェクトドキュメントディレクトリDiv+CSS 命名規則 - 4 - Div+css 命名規則 ...

js と jQuery での Ajax の使用例の詳細

目次ネイティブJS GETリクエストの送信方法投稿リクエストの送信方法パラメータ付きのGETリクエス...

テキスト ファイルの並べ替えに役立つ Awk コマンドラインまたはスクリプト (推奨)

Awk は、ソートを含む他の一般的なユーティリティによって実行できるいくつかのタスクを実行できる強...

Deepin Linuxでカーネルを手動でアップグレードする方法

deepinとUbuntuどちらもdebianをベースにしたディストリビューションであり、ここではU...

HTML でスクロールバーを非表示にしたり削除したりする方法

1. 属性付きHTMLタグXML/HTML コードコンテンツをクリップボードにコピー< htm...

Vue2.0でデータの双方向バインディング機能をjsを使って実装する

Object.definePropertyの理解文法:オブジェクト.defineProperty(o...

JavaScript キャンバスはマウスの動きに合わせてボールを動かすことを実装します

この記事の例では、マウスに従ってボールを動かすjsの具体的なコードを参考までに共有しています。具体的...

div が contentEditable=true に設定されている場合、コンテンツをリセットした後にカーソルを配置することはできません。

最近、絵文字にコメントする機能が必要なコメント機能に取り組んでいたため、 contentEditab...

MySQL でトリガーを無効化および有効化するチュートリアル [推奨]

MYSQL を使用する場合、トリガーがよく使用されますが、不適切な使用によって問題が発生する場合が...

HTML構造化実装方法

DIV+css構造 CSSレイアウトを学んでいますか?まだ純粋な CSS レイアウトを完全に習得でき...

Linux ssh サーバーの構成コード例

LinuxホストにSSHサーバーをインストールするには、次のターミナルコマンドを使用します: sud...

Vue+SpringBoot で Alipay サンドボックス決済を実装するためのサンプルコード

まず、Alipay サンドボックスから一連のものをダウンロードします。多くのブログで取り上げられてお...

JavaScript の Set データ構造の詳細な説明

目次1. セットとは何か2. セットコンストラクタ2.1) 配列2.2) 文字列2.3) 議論2.4...