01 需要シナリオ
1. クラウド サーバー、Linux (CentOS7) システムがあります。
2. クラウド サーバーにはパブリック ネットワーク IP があり、パブリック ネットワークからアクセスできます。 3.
ローカル コンピューターは、Windows オペレーティング システムを搭載した家庭用ラップトップです
。 4. ローカル コンピューターは、パブリックネットワークIPを持たず、パブリックネットワークからアクセスできない
要件: クラウドサーバーをイントラネットペネトレーションサーバーとして構築し、外部ネットワークを介して自宅のコンピュータ(Webページ)にアクセスする機能を実現します。また、ドメイン名がなくても、パブリック ネットワーク IP 経由でアクセスできます。
02 プロジェクトアドレス
GitHub: https://github.com/fatedier/frp
releases ページ: https://github.com/fatedier/frp/releases
自分の状況に応じて実行ファイルをダウンロードします 私は写真の 2 つをダウンロードしました。
ダウンロード後、解凍してください。
03 ファイル紹介
解凍後、次のようなファイルがいくつか表示されます。
図の左側は Linux システムのファイル、右側は Windows バージョンのファイルです。
その中で、この単語
を含むファイルfrps
はサーバー側、つまりリモートのパブリック ネットワーク サーバーで使用され、末尾の文字 s はサーバーを意味します。
単語を含むファイルfrpc
はクライアント、つまりローカル ホーム サーバーで使用され、末尾の文字 c はクライアントを意味します。
したがって、frp_0.49.0_linux_amd64
これらのファイルを選択してクラウド サーバーにアップロードします。これらのファイルを選択してローカルに保存しますfrps
frps.ini
frps_full.ini
。frp_0.49.0_windows_amd64
frpc.exe
frpc.ini
frpc_full.ini
04 設定ファイルの書き込み
この記事では HTTP ペネトレーションを例に挙げていますが、他のタイプのペネトレーションについては、公式ドキュメントを参照してください: https://gofrp.org/docs/
注: 実際に設定ファイルを記述する際には、設定の各行のコメントとコメントの前のスペースは削除する必要があります。
例:
このように書かないでください:bind_port = 7000 # 服务器接收客户端连接的端口
代わりに次のように書いてください: それ以外のbind_port = 7000
場合、少なくとも最新0.49.0
バージョンでは、以下のすべてが設定の一部とみなされます。
4.1 frps.ini を書き込む
まずfrps.ini
クラウドサーバー側にあるファイルを書き込みます。
[common]
bind_port = 7000 # 服务器接收客户端连接的端口
dashboard_port = 7500 # 后台管理端口
dashboard_user = admin # 后台登录用户名
dashboard_pwd = admin # 后台登录密码
vhost_http_port = 80 # http穿透端口(公网服务器的端口)
vhost_https_port = 443 # https穿透端口(公网服务器的端口)
token = abc123 # 身份验证令牌 frpc要和frps一致
log_file = /root/frp/frps.log # 日志路径
log_level = info # 日志级别
log_max_days = 3 # 日志文件保留天数
authentication_timeout = 0 # 身份验证超时时间 0表示不验证
subdomain_host = xxx.com # 注册的主域名 不带前缀 没有域名就写公网ip
サーバー側のサービスを開始する
# 在文件所在的目录下输入命令启动
./frps -c ./frps.ini &
完了後、http://xxx.com:7500
バックグラウンド管理ページにアクセスし、発行関連のポートに注意を払うことができます。
この構成例では、解放する必要があるポートは 7000、7500、80、および 443 です。
4.2 frpc.iniの作成
次に、ローカルfrpc.ini
ファイルを書き込みます。
[common]
server_addr = xxx.xxx.xxx.xxx # 服务器的公网ip地址
server_port = 7000 # 客户端与服务器连接的端口
token = abc123 # 身份验证令牌 frpc要和frps一致
authentication_timeout = 0 # 身份验证超时时间 0表示不验证
[web] # 添加web节点
type = http # 访问类型为http
local_ip = 127.0.0.1 # 本地设备ip(*注)
local_port = 8080 # 本地访问的端口
custom_domains = xxx.com # 指向远程服务器的域名 没有域名就写服务器公网ip
*注意: ローカル マシンの場合は、local_ip
省略するか、 と書くか127.0.0.1
、ローカル イントラネットの IP アドレスを書くことができます。通常は、192.168.xxx.xxx
クライアント サービスを開始します。
Windows PowerShell を開き、frpc.exe が存在するフォルダーに移動します。(cmd なしで PowerShell を使用します)
起動コマンド: を入力して./frpc.exe -c ./frpc.ini
起動します。
構成ファイルが同じフォルダーにあり、デフォルト名を使用している場合、起動コマンドは単純化されて./frpc.exe
成功し、success と表示されれば起動は成功です。
05 テスト
ローカル入力を通じてhttp://127.0.0.1:8080
アクセスできるローカル nginx ページがあると仮定します。
イントラネットペネトレーションをオンにした後、http://xxx.com:80
または を入力してhttp://公网ip:80
アクセスできるかどうかを確認します。(http プロトコルのポート 80 は省略できます)
他のタイプのイントラネット侵入については、公式ドキュメントを参照してください: https://gofrp.org/docs/