Analyse des Implementierungsprozesses der Docker-Intranet-Penetration-FRP-Bereitstellung

Analyse des Implementierungsprozesses der Docker-Intranet-Penetration-FRP-Bereitstellung

1. Erstellen Sie ein Konfigurationsdateiverzeichnis

cd /home-Verzeichnis

mkdir frp

Die endgültige Verzeichnisstruktur:

2. Erstellen Sie eine Serverkonfigurationsdatei

vi frps.ini

[gemeinsam]
Bindeport = 17000
token = meinToken
vhost_http_port = 10080
vhost_https_port = 10443
 
Dashboard-Port = 17500
Dashboard_Benutzer = Administrator
dashboard_pwd = Administrator
 
 
tcp_mux = wahr
max_pool_count = 10

3. Erstellen Sie eine serverseitige YML-Datei

vi frps-docker-compose.yml

Version: '3'
Leistungen:
 
  frps:
    Bild: snowdreamtech/frps
    Häfen:
      - "17000:17000"
      - "27500:17500"
      - "10022:10022" #Für SSH-Verbindung - "10080:10080" #Für externen Netzwerkzugriff # Je nach tatsächlichem Bedarf können weitere Ports hinzugefügt werden:
      - ./frps.ini:/etc/frp/frps.ini Containername: frps

4. Starten Sie den Server

docker-compose -f frps-docker-compose.yml up Hinweis: Hintergrundausführung aktivieren -d

5. Erstellen Sie eine Client-Konfigurationsdatei

vifrpc.ini

[gemeinsam]
#Server-IP
Serveradresse = xxxx
server_port = 17000
token = meinToken
 
[ssh]
Typ = TCP
lokale_ip = 127.0.0.1
lokaler_Port = 22
Remote-Port = 10022
use_encryption = true
use_compression = wahr
 
[pi.meinedomain.com]
Typ = http
lokaler_Port = 80
benutzerdefinierte_Domänen = pi.meinedomain.com

6. Client-YML-Datei erstellen

vi frpc-docker-compose.yml

Version: '3'
Leistungen:
  frpc:
    Bild: cloverzrg/frpc-docker
    Bände:
      - ./frpc.ini:/conf/frpc.ini
    Containername: frpc
    Netzwerkmodus: Host

8. Starten Sie den Client

docker-compose -f frpc-docker-compose.yml up -d

  • Besuchen Sie den Domänennamen http://pi.mydomain.com:10080. Sie können die Webseite normal aufrufen (Voraussetzung ist, dass der Client-Computer den HTTP-Server startet und Port 80 überwacht). Beachten Sie, dass der Domänenname A-Eintrag von pi.mydomain.com zuerst in IP xxxx aufgelöst werden sollte. Wenn der Server bereits einen entsprechenden Domänennamen hat, können Sie den CNAME-Eintrag auch in den ursprünglichen Domänennamen des Servers auflösen.
  • Stellen Sie eine Remoteverbindung über ssh -p 10022 username@xxxx her.
  • Besuchen Sie http:xxxx:27500 und Sie können das Dashboard sehen, das den Verbindungsstatus jedes Clients anzeigt.

Referenz: https://liyangweb.com/service/358.html

Chinesisches frp-Dokument: https://www.cnblogs.com/yanglang/p/12035934.html

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Analyse des Bereitstellungsprozesses der Leistungstestplattform nGrinder mit Docker
  • So stellen Sie MySQL- und Redis-Dienste mit Docker bereit
  • So installieren Sie Tomcat in Docker und stellen das Springboot-Projekt-War-Paket bereit
  • Schritte zum Bereitstellen mehrerer Tomcat-Dienste mithilfe von DockerFile im Docker-Container
  • Erstellen, Hochladen, Abrufen und Bereitstellen von Docker-Images (mithilfe von Alibaba Cloud)
  • Detaillierte Bereitstellung von Docker+Gitlab+Gitlab-Runner
  • So stellen Sie eigenständigen Pulsar und geclustertes Redis mit Docker bereit (Entwicklungsartefakt)
  • Analyse des Consul-Konfigurationsprozesses für die Docker-Bereitstellung

<<:  Implementierungscode für mehrzeilige Textkomponenten der Vue-Faltanzeige

>>:  MySQL 8.0.21 Installationsschritte und Problemlösungen

Artikel empfehlen

Docker erstellt Python Flask+ Nginx+Uwsgi-Container

Installieren Sie Nginx Ziehen Sie zuerst das Cent...

Grafisches Tutorial zur Installation und Konfiguration von MySQL 5.5

Organisieren Sie die Tutorialnotizen zur Installa...

Probleme mit der Rancher-Bereitstellung und dem Importieren von K8S-Clustern

Die Rancher-Bereitstellung kann über drei Archite...

Tipps zum Erstellen zweidimensionaler Arrays in JavaScript

Erstellen eines zweidimensionalen Arrays in Js: Z...

Frameset über Iframe in Body einfügen

Da Frameset und Body auf derselben Ebene liegen, k...

Verwendung der VUE-Renderfunktion und ausführliche Erklärung

Inhaltsverzeichnis Vorwort Die Rolle des Renders ...

Detaillierte Erklärung der Concat-bezogenen Funktionen in MySQL

1. concat()-Funktion Funktion: Mehrere Zeichenfol...

HTML5+CSS3-Codierungsstandards

Die goldene Regel Unabhängig davon, wie viele Per...

Node.js erstellt ein einfaches Crawler-Case-Tutorial

Vorbereitung Zuerst müssen Sie nodejs herunterlad...

Detaillierter Prozess der NTP-Serverkonfiguration unter Linux

Inhaltsverzeichnis 1. Umgebungskonfiguration 1.NT...

Zwei Methoden zum Strecken des Hintergrundbilds einer Webseite

Es gibt zwei Lösungen: Eine Möglichkeit ist CSS, b...