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

推薦する

Linux IO 多重化 epoll ネットワーク プログラミング

序文この章では、基本的な Linux 関数と epoll 呼び出しを使用して、Linux 上で実行で...

MySQL ユーザー権限管理の分析例

この記事では、MySQL ユーザー権限管理の例について説明します。ご参考までに、詳細は以下の通りです...

Nginx設定ファイルの詳細な説明

Nginx の主な設定ファイルは nginx.conf で、グローバル ブロック、イベント ブロック...

CSS3 を使用した SVG パス ストロークのアニメーション化入門チュートリアル

JavaScript に依存せず、純粋な CSS を使用してsvgストローク描画アニメーション効果と...

UbuntuでMySQLデータベースファイルディレクトリを変更する方法

序文同社の Ubuntu サーバーは、さまざまなシステムのディレクトリを異なる論理パーティションに配...

CentOS 7 で RPM を使用して mysql5.7.13 をインストールする

0. 環境この記事のオペレーティング システム: CentOS 7.2.1511 x86_64 My...

Vue で Alibaba のアイコンフォント ベクター アイコンを使用する方法について

インターネット上には多くのインポート方法があり、公式も3つのインポート方法を提供していますが、インポ...

Ant Design Pro ログイン機能にグラフィック検証コード コンポーネントを統合する方法

序文:この記事では、Ant Design Proログイン機能にグラフィック検証コードコンポーネントを...

MySQL 構成マスタースレーブサーバー (マスター 1 台とスレーブ複数台)

目次アイデアホスト構成confを変更する再起動テストスレーブ 1 の構成スレーブ2の構成マスターとス...

効果的なウェブフォームのための 8 つのルール

ユーザーから情報を収集する場合、Web フォームを使用するより簡単で直接的な方法はありません。適切に...

MySQL の全体的なアーキテクチャの紹介

MySQL の全体的なアーキテクチャは、サーバー層とストレージ エンジン層に分かれています。サーバー...

React Nativeでaxiosを使用してネットワークリクエストを行う方法

フロントエンド開発では、Ajax、jQuery ajax、axios、fetch など、データ要求を...

HTML ページ適応幅テーブル

WEB アプリケーションのページでは、テーブルがよく使用されます。列の数が限られているため、各列のコ...

Linuxファイルコマンドの使用

1. コマンドの紹介ファイル コマンドは、ファイルの種類を識別するために使用されます。ファイル チェ...

単一選択折りたたみメニュー機能を実現するCSS

前回の「最もシンプルなスイッチを実現するCSS」のように、HTML5とCSS3でほとんどの機能をすで...