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クエリ速度を最適化する方法

推薦する

React コンポーネント間で通信する 3 つの方法 (シンプルで使いやすい)

目次1. 親子コンポーネント通信2. クロスレベルコンポーネント通信1. レイヤーごとに値を渡す2....

エレメントアバターアップロード練習

この記事は、Element公式サイトとQiniu Cloud公式サイトを使用しています。 eleme...

包括的なウェブサイト評価ソリューション

<br />「XXXのウェブサイトを見てみませんか?」といった質問をされることもあります...

Jenkinsはマイクロサービスをパッケージ化してDockerイメージを構築し、実行します。

目次環境の準備始める1. GitLabリモートリポジトリがマイクロサービスプロジェクトを作成する2....

MySQL の非主キー自己増分使用例の分析

この記事では、例を使用して、MySQL の非主キーの自己増分の使用方法を説明します。ご参考までに、詳...

Vue プロジェクトはファイルダウンロードの進行状況バー機能を実装します

日常業務でファイルをダウンロードする一般的な方法は 2 つあります。 1 つ目は、サーバーのファイル...

MySQLの大文字と小文字の区別によって発生する問題の分析

MYSQLは大文字と小文字を区別します言葉を見れば信じられます。タイトルを見れば内容がわかります。 ...

Windows での MySQL のダウンロード、インストール、設定、使用に関するチュートリアル

MySQLの概要MySQL はリレーショナル データベース管理システムです。データベースは構造化され...

Vue3 のウォッチの使用方法とベストプラクティスガイド

目次序文🌟 1. APIの紹介2. 複数のデータソースの監視3. リスニングアレイ4. 監視対象5....

JavaScript の便利な配列トリック 12 選

目次アレイ重複排除1. from() を新しい Set() メソッドに重ねる2. スプレッド演算子 ...

JS+Canvas が抽選ホイールを引く

この記事では、宝くじターンテーブルを描画するJS + Canvasの具体的なコードを参考までに共有し...

MySQLトリガーの詳細な説明と簡単な例

MySQLトリガーの簡単な例文法CREATE TRIGGER <トリガー名> -- トリ...

MySQLインデックスの簡単な分析

データベース インデックスは、テーブル操作の速度を向上させることを目的としたデータ構造です。高速なラ...

Dockerコンテナアプリケーションログの表示方法

docker アタッチコマンドdocker attach [options] 容器実行中のコンテナに...

ウェブページをデザインするには?ウェブページを作成するには?

Web デザインの理解に関しては、多くの人がまだ Web ページ制作のレベルにとどまっているようで...