[GH-ISSUE #1659] How does frps and frpc authenticate each other? #1315

Closed
opened 2026-05-05 12:50:20 -06:00 by gitea-mirror · 4 comments
Owner

Originally created by @ofer-dev on GitHub (Feb 16, 2020).
Original GitHub issue: https://github.com/fatedier/frp/issues/1659

Issue is only used for submitting bug report and documents typo. If there are same issues or answers can be found in documents, we will close it directly.
(为了节约时间,提高处理问题的效率,不按照格式填写的 issue 将会直接关闭。)
(请不要在 issue 评论中出现无意义的 加1我也是 等内容,将会被直接删除。)
(由于个人精力有限,和系统环境,网络环境等相关的求助问题请转至其他论坛或社交平台。)

Use the commands below to provide key information from your environment:
You do NOT have to include this information if this is a FEATURE REQUEST

What version of frp are you using (./frpc -v or ./frps -v)?
0.31.2

What operating system and processor architecture are you using ('go env')?
Ubuntu linux 18.04 & 19.10

Configures you used:

frpc

[common]
server_addr = ...
server_port = 7000
log_file = ./frpc.log
protocol = kcp
token = *****
tls_enable = true

[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000
use_encryption = true

frps

[common]
bind_port = 7000
kcp_bind_port = 7000
token = *****

Steps to reproduce the issue:
question, not an issue

How does frps and frpc authenticate each other? Is there some kind of Password-authenticated key agreement or shared key derived from supplied token?

Originally created by @ofer-dev on GitHub (Feb 16, 2020). Original GitHub issue: https://github.com/fatedier/frp/issues/1659 Issue is only used for submitting bug report and documents typo. If there are same issues or answers can be found in documents, we will close it directly. (为了节约时间,提高处理问题的效率,不按照格式填写的 issue 将会直接关闭。) (请不要在 issue 评论中出现无意义的 **加1**,**我也是** 等内容,将会被直接删除。) (由于个人精力有限,和系统环境,网络环境等相关的求助问题请转至其他论坛或社交平台。) Use the commands below to provide key information from your environment: You do NOT have to include this information if this is a FEATURE REQUEST **What version of frp are you using (./frpc -v or ./frps -v)?** 0.31.2 **What operating system and processor architecture are you using ('go env')?** Ubuntu linux 18.04 & 19.10 **Configures you used:** **frpc** [common] server_addr = *.*.*.* server_port = 7000 log_file = ./frpc.log protocol = kcp token = ***** tls_enable = true [ssh] type = tcp local_ip = 127.0.0.1 local_port = 22 remote_port = 6000 use_encryption = true **frps** [common] bind_port = 7000 kcp_bind_port = 7000 token = ***** **Steps to reproduce the issue:** question, not an issue How does frps and frpc authenticate each other? Is there some kind of Password-authenticated key agreement or shared key derived from supplied token?
Author
Owner

@fatedier commented on GitHub (Feb 17, 2020):

Hash(token + timestamp)

<!-- gh-comment-id:586825268 --> @fatedier commented on GitHub (Feb 17, 2020): Hash(token + timestamp)
Author
Owner

@ofer-dev commented on GitHub (Feb 29, 2020):

OK, is there an option to use certificate(or any public key with mutual authentication) based authentication and key exchange in order to prevent man in the middle and replay attacks?
thx

<!-- gh-comment-id:592991026 --> @ofer-dev commented on GitHub (Feb 29, 2020): OK, is there an option to use certificate(or any public key with mutual authentication) based authentication and key exchange in order to prevent man in the middle and replay attacks? thx
Author
Owner

@fatedier commented on GitHub (Mar 1, 2020):

Not support, maybe future.

<!-- gh-comment-id:593046863 --> @fatedier commented on GitHub (Mar 1, 2020): Not support, maybe future.
Author
Owner

@ofer-dev commented on GitHub (Mar 1, 2020):

Ok, closing

<!-- gh-comment-id:593098034 --> @ofer-dev commented on GitHub (Mar 1, 2020): Ok, closing
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: github-starred/frp#1315
No description provided.