Python を使用して HTTP サーバーを構築し、外部ネットワーク アクセスやイントラネットへの侵入のためにパブリック インターネットに公開します。

1 はじめに

比較的人気のあるプログラミング言語として、Python は単純な構文と明確なステートメントを備えており、互換性が高く、他のプログラミング言語 (C/C++ など) で確立されているモジュールと簡単に接続でき、機能が豊富で強力です。図書館はパッケージ化されており、簡単に呼び出すことができるため、非常に人気があります。

今日は、Python を使用して、ローカル コンピューター上の指定されたディレクトリとファイルを表示する単純な http サーバーを構築してみます。

2. ローカル http サーバーを構築する

一般に、Python の単純な http サーバーは、http サービスを作成するコマンドが 1 行で済むため、Apache や IIS などの複雑なサーバー プログラムに依存しません。ただし、この単純な http サービスは複雑な機能を提供できず、比較的単純なディレクトリ サービスしか提供できません。ただし、Python を学習して詳しく知りたい人にとって、これはもう 1 つの必要なステップです。

2.1.Pythonのインストールとセットアップ

まず、Python プログラムをローカルにインストールする必要があります。Python プログラムは公式 Web サイト ( www.python.org/ ) で見つけて、対応するオペレーティング システムのバージョンをダウンロードできます。著者は Windows オペレーティング システムを使用しているため、ダウンロードする Windows バージョンを選択してください。

20230330132801

20230330132802

Python のダウンロードが完了したら、installer.exe を直接クリックしてインストールします。同時に、インストールプロセス中にAdd python.exe to PATHオプションを確認する必要があることに注意してください。

20230330132803

20230330132804

Python プログラムのインストールが完了したら、Python http サーバーの構築を開始できます。

2.2.Python サーバーのセットアップとテスト

Python にはシンプルな http サービス パッケージが組み込まれているため、Python の場合、コマンド行を入力するだけで http サービスを簡単に開くことができます。もちろん、Web ページを実行するには、Web ページに表示コンテンツが必要です。したがって、最初に Web ページ ファイルを保存するためのフォルダーを作成できます。たとえば、作成者はローカル コンピュータの E ドライブの下に新しい「test」フォルダを作成しました。

20230330132805

次に、命令提示符ローカル コンピュータのインターフェイスを管理者として実行し、ファイルが保存されているハードディスクに転送するコマンドを入力します。

e:

共有したいフォルダーに移動します

cd test

20230330132806

20230330132807

次にコマンドを入力します启动http服务

  • Python のバージョンが 2.x の場合は、次のコマンドを入力します。
python -m SimpleHTTPServer 8081
  • Python のバージョンが 3.x の場合は、次のコマンドを入力します。
python -m http.server 8001

このうち、空いているポートを選択すれば、8081 が構築するサーバーの出力ポートになります。ファイアウォールのプロンプト メッセージが表示された場合は、允许访问それを選択するだけです。

コマンドラインが入力されると、Python はフィードバックを返しますServing HTTP on 0.0.0.0 port 8081 ...。これは、Python http サービスがローカル ポート 8081 で正常に開かれたことを意味します。

20230330132808

次に、ローカル コンピュータのブラウザのアドレス バーに入力して、localhost:8081共有するフォルダ内のファイルを開きます。

20230330132809

これらの内容が表示されるということは、ローカル コンピューター上の Python の http サービスが有効になっていて、このフォルダー内のファイルがすでに確認できることを意味します。同様に、このフォルダーに Web ページ ファイルを置くと、Web ページとして表示することもできます。

このとき、同一LAN内のデバイスであれば、ローカルコンピュータのIPアドレス+ポート番号(具体的な形式は192.168.XXX.XXX:ポート番号)をブラウザに入力すればPythonのWebページを表示することができます。表示されます。

20230330132810

ただし、パブリック インターネット上でアクセスできない Web ページは常に魂の欠如を感じます。そのため、cpolar イントラネット ペネトレーションを使用してイントラネット ペネトレーション データ トンネルを作成し、パブリック インターネット条件下で Python にアクセスできるようにします。

3. cpolarのインストールと登録

同様に、cpolar の公式 Web サイト( https://www.cpolar.com/ ) でオペレーティング システムのバージョンに対応するソフトウェアを見つけることができますが、ここでも Windows バージョンを選択します。

20230330132811

20230330132812

Cpolar ソフトウェアをダウンロードしたら、圧縮パッケージを解凍してダブルクリックすると、最後までクリックするだけで.msi文件自動的にインストールされます。Next

20230330132813

20230330132814

cpolar はユーザーごとに独立したデータ トンネルを作成し、データ セキュリティを確保するためにユーザー パスワードとトークン コードによって補完されるため、cpolar を使用する前にユーザーを登録する必要があります。登録方法も非常に簡単で、cpolarのホームページ右上をクリックし用户注册、登録ページに必要事項を記入するだけで登録が完了します。

20230330132815

20230330132816

3.1 Cpolar クラウド設定

cpolar のインストールと登録が完了したら、cpolar を使用してイントラネット侵入データ トンネルを作成し、ローカル コンピューターの Python Web ページをパブリック インターネットに接続できるようになります。cpolar の無料版のデータ トンネルは 24 時間ごとにリセットされることに注意してください。著者はデータ トンネル設定を毎日リセットしたくないため、長期的に安定したイントラネット ペネトレーション データ トンネルを取得するために、cpolar を VIP バージョンにアップグレードしました。

長期的かつ安定したイントラネット侵入データ トンネルを生成するには、まず cpolar 公式 Web サイトにアクセスしてログインし、「ダッシュボード」ページの左側にあるボタンを見つけてクリックして「予約」ページに入る必要があります预留

20230330132817

20230330132818

「予約」ページでは、cpolar がさまざまなプロトコルのデータ トンネル予約項目を提供していることがわかります。そして、Python サーバーは http プロトコルなので、保留二级子域名フィールドを見つけます。もちろん、ドメイン名プロバイダーから独自のドメイン名をすでに購入している場合は、[カスタム ドメイン名を予約] 列を選択することもできます。

「予約された第 2 レベルのサブドメイン名」フィールドには、予約する第 2 レベルのサブドメイン名の情報を設定する必要があります。設定された情報は、ローカル Python サーバーにアクセスするためのトンネルの入り口にもなります。パブリック インターネット (パブリック インターネット部分のアドレス)。設定する必要がある具体的な情報は次のとおりです。

  • 地区: サーバーが配置されているエリア、最も近いものを選択してください
  • 二级域名最終的には、生成されたパブリック インターネット アドレスにネットワーク アドレスの識別子の 1 つとして表示されます。
  • 描述これは、他のトンネルと区別できる、このデータ トンネルの説明とみなすことができます。

これらの設定を入力した後、保留右側のボタンをクリックしてこのデータ トンネルを維持できます。このトンネルの入り口が不要な場合は、右側の「x」をクリックしてトンネルを簡単に削除することもできます。

20230330132819

3.2 Cpolar ローカル設定

cpolar クラウドの設定が完了したら、ローカル コンピューターに戻り、cpolar クライアントを開いてログインします (ブラウザーに localhost:9200 と入力して直接アクセスするか、スタート メニューで cpolar クライアントのショートカットをクリックします)。

20230330132820

クライアントのメイン インターフェイスの左側にあるボタンをクリックして、ローカル トンネル作成ページに入ります (アドレスが 24 時間ごとにリセットされる一時的なデータ トンネルを作成する場合は、空白を設定する代わりに、ここで直接設定できます) cpolar 公式ウェブサイトのデータ トンネル) 隧道管理创建隧道

このページでは、次のようないくつかの情報設定も行う必要があります。

  1. 隧道名称——区別するのに便利な限り、これは cpolar のローカル トンネル情報アノテーションとみなすことができます。
  2. 协议——Tomcat は Web ページを出力するため、http プロトコルを選択します。
  3. 本地地址——ローカル アドレスはローカル Web サイトの出力ポート番号です。先ほど出力ポートとして 8081 を設定したので、ここでは 8081 を入力します。
  4. 域名类型——この例では、cpolar クラウド内の第 2 レベルのサブドメイン名のデータ トンネルを予約しているため、「第 2 レベルのサブドメイン名」を確認します (予約されたドメイン名がカスタム ドメイン名の場合は、カスタム ドメインを確認します) name)、次の行の「サブドメイン」列に予約済みの第 2 レベルのサブドメイン名を入力します。ここでは「pythonweb」と入力します (一時的なデータ トンネルを作成するだけの場合は、「ランダム ドメイン名」を直接チェックしてください)そして、cpolar クライアントはそれ自体でネットワークのアドレスを生成します)。
  5. 地区——cpolar 雲の設定と同じように、実際の位置に応じて最も近い位置を入力します。

20230330132821

これらの設定を完了したら、创建ページの下部にあるボタンをクリックして、ローカル Python サーバー Web ページを cpolar クラウド上に予約された第 2 レベルのサブドメインに接続し、完全なイントラネット侵入データ トンネルを生成できます。

トンネルが作成されると、cpolar は自動的に隧道管理--隧道列表ページにジャンプします。このページでは、データ トンネルのステータス (ブロックが解除されているかどうか) を確認したり、トンネルの開閉、削除を制御したりできます。トンネルの情報を変更する必要がある場合は、ここで「編集」ボタンを使用することもできます。

20230330132822

4. 公衆ネットワークアクセステスト

データ トンネルが確立されたら、cpolar クライアントの左側をクリックします状态- 在线隧道列表ローカルの Python サーバー ページにアクセスできるパブリック インターネット アドレスを見つけます。

20230330132823

このアドレスをブラウザのアドレスに入力するだけで、ローカル コンピュータ上の Python サーバー ページに簡単にアクセスできます。

20230330132824

5。結論

これまでのところ、Python を使用して単純なサーバー ページを構築し、イントラネット障壁を通過できる cpolar を介してそのためのデータ トンネルを作成し、この Python ページをパブリック インターネットに公開することに成功しました。実際、Web ページ (またはソフトウェア) の出力ポート番号がわかっていれば、cpolar を使用してイントラネットに侵入し、公共のインターネット上のローカル Web ページ (またはソフトウェア) にアクセスできるようになります。

おすすめ

転載: blog.csdn.net/m0_73868817/article/details/132474259