Compare commits
209 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bd2ad22b0b | ||
|
|
5a8a211841 | ||
|
|
6011cded16 | ||
|
|
3350154c18 | ||
|
|
73a73adecb | ||
|
|
9be39f4b24 | ||
|
|
09075d7465 | ||
|
|
40b2dc00b3 | ||
|
|
d2c6817ec1 | ||
|
|
d3ca27b699 | ||
|
|
136356348c | ||
|
|
b9e6c6861e | ||
|
|
2091a76e50 | ||
|
|
9c9c79d6de | ||
|
|
91bd7d81ce | ||
|
|
6fab896993 | ||
|
|
70869272fa | ||
|
|
d9aece1dcf | ||
|
|
b68b0d1dc4 | ||
|
|
07be762bf7 | ||
|
|
35e42fcc39 | ||
|
|
26e21f19d7 | ||
|
|
27f8e57933 | ||
|
|
f324a3e684 | ||
|
|
178492d97b | ||
|
|
a37e0632b3 | ||
|
|
55c06c7fa8 | ||
|
|
146e25413d | ||
|
|
a7fe4526e4 | ||
|
|
260aeb5d47 | ||
|
|
e40db0e79c | ||
|
|
a1e8fa4274 | ||
|
|
cf51379adf | ||
|
|
70d01413e9 | ||
|
|
4007b40ad8 | ||
|
|
4c47916519 | ||
|
|
d3271e3a46 | ||
|
|
bf3980902e | ||
|
|
77c1dcaded | ||
|
|
c94026fa74 | ||
|
|
f59324eed2 | ||
|
|
7aca50c409 | ||
|
|
add13712e4 | ||
|
|
d78b02a174 | ||
|
|
b60b2d938f | ||
|
|
c1998942ab | ||
|
|
5f4cb11ea6 | ||
|
|
3d78b4e621 | ||
|
|
df8ffe13f1 | ||
|
|
93b8f928a5 | ||
|
|
02e87a0a21 | ||
|
|
636a917e16 | ||
|
|
fb58386f24 | ||
|
|
97e8dde97a | ||
|
|
51736eee10 | ||
|
|
397f4c159a | ||
|
|
8c271fb1cd | ||
|
|
5074810ce8 | ||
|
|
734d85ceb4 | ||
|
|
598e7f42b9 | ||
|
|
26ea4d3e1e | ||
|
|
df7bb21b8d | ||
|
|
9e4a79f7c6 | ||
|
|
2eb9916de7 | ||
|
|
c06a787754 | ||
|
|
aafdf01911 | ||
|
|
32508586cd | ||
|
|
e2270a7320 | ||
|
|
b5c446bd24 | ||
|
|
05429d4952 | ||
|
|
ea8f7b6995 | ||
|
|
d9e99e7a30 | ||
|
|
69177d6478 | ||
|
|
81a9f77d3d | ||
|
|
8cc539092d | ||
|
|
66865cb816 | ||
|
|
3e723c7b6c | ||
|
|
e9f8d5110c | ||
|
|
f815b67fce | ||
|
|
04bcd228f1 | ||
|
|
5a8d2d8131 | ||
|
|
ff24575d01 | ||
|
|
4f0e07f4f1 | ||
|
|
82fca18617 | ||
|
|
09dd5fdb18 | ||
|
|
01f23635d2 | ||
|
|
abf48c92bc | ||
|
|
4d08a43297 | ||
|
|
7b47e2212b | ||
|
|
42c5020629 | ||
|
|
9e5bbf298c | ||
|
|
ce4fe5dbcc | ||
|
|
9397a47a55 | ||
|
|
bece058668 | ||
|
|
0644103ae1 | ||
|
|
c905c50d7f | ||
|
|
bbed4d0579 | ||
|
|
ab6728cdbe | ||
|
|
45a937f983 | ||
|
|
cf03ceabb0 | ||
|
|
1d7ba4a33c | ||
|
|
e8209e8422 | ||
|
|
56a34e0f17 | ||
|
|
4c9977ab08 | ||
|
|
66493abc6a | ||
|
|
06611757b1 | ||
|
|
02fd0afa84 | ||
|
|
b1e65e5563 | ||
|
|
909d29aebc | ||
|
|
b18282c497 | ||
|
|
5c9c79327f | ||
|
|
7ac54fb750 | ||
|
|
e6d91193f7 | ||
|
|
843d28284a | ||
|
|
ff39c4020f | ||
|
|
08d924e4ca | ||
|
|
82fa2536e6 | ||
|
|
2884d54d42 | ||
|
|
96bbc39920 | ||
|
|
9cf295ecf5 | ||
|
|
8e3b8440e0 | ||
|
|
6119b75bcc | ||
|
|
0cf9a851a2 | ||
|
|
583ea5e680 | ||
|
|
1417f41545 | ||
|
|
be049b5377 | ||
|
|
addf7d561a | ||
|
|
99296d8227 | ||
|
|
8e8236efb0 | ||
|
|
1eb3d483ef | ||
|
|
d1e53a48d6 | ||
|
|
05935279a4 | ||
|
|
f0cb78e1e5 | ||
|
|
a91d55e642 | ||
|
|
784fa59c3d | ||
|
|
0740504a7c | ||
|
|
b8abeccf85 | ||
|
|
27a811ef19 | ||
|
|
7c2ce8d841 | ||
|
|
7dbda02d72 | ||
|
|
653dade3b0 | ||
|
|
d7f0a1cf0f | ||
|
|
c72dfc795b | ||
|
|
9a30250061 | ||
|
|
14fb0d4b3a | ||
|
|
8a9faf5537 | ||
|
|
13080a1751 | ||
|
|
059be0b09d | ||
|
|
555dd22483 | ||
|
|
addc6c3b23 | ||
|
|
4be96e1bb2 | ||
|
|
74690b3bc5 | ||
|
|
9fcfffee53 | ||
|
|
12eb34ca82 | ||
|
|
65b96dff67 | ||
|
|
eef71be240 | ||
|
|
68d7f289b9 | ||
|
|
12092e5c5e | ||
|
|
fca4a10041 | ||
|
|
a2fd2dd18e | ||
|
|
d5aac11198 | ||
|
|
0dd88e81f6 | ||
|
|
e497f0b128 | ||
|
|
8d940aa66a | ||
|
|
e82cec285a | ||
|
|
b7077b64aa | ||
|
|
7a87b9a4c8 | ||
|
|
7398777ee5 | ||
|
|
cbb889f022 | ||
|
|
e969f7154a | ||
|
|
83c54a1f12 | ||
|
|
c7e2d722aa | ||
|
|
972f3d03cd | ||
|
|
58fbae3431 | ||
|
|
216b396fca | ||
|
|
7a09caebde | ||
|
|
6194c54240 | ||
|
|
8e5bb7b0e4 | ||
|
|
72b913edb4 | ||
|
|
694ba93ae2 | ||
|
|
59c7ca63e7 | ||
|
|
b81136c26e | ||
|
|
2fdde92706 | ||
|
|
871ee743dc | ||
|
|
af0ada67d5 | ||
|
|
b2b2d925e9 | ||
|
|
3746dddd68 | ||
|
|
5f4e47eee7 | ||
|
|
2ac1203235 | ||
|
|
545261a16e | ||
|
|
0411debc39 | ||
|
|
267813e358 | ||
|
|
bdffd1776a | ||
|
|
e8c63a51bf | ||
|
|
ecc2e971d8 | ||
|
|
763873bf57 | ||
|
|
17a6610322 | ||
|
|
79ca096e52 | ||
|
|
d7263f019c | ||
|
|
68db5140c8 | ||
|
|
a3d6c115ac | ||
|
|
53b16ddce9 | ||
|
|
64e0efb34a | ||
|
|
aa1e627cef | ||
|
|
ef977878c5 | ||
|
|
d163f67455 | ||
|
|
1802d23414 | ||
|
|
007b3bb244 | ||
|
|
d676018cb3 |
128
CODE_OF_CONDUCT.md
Normal file
128
CODE_OF_CONDUCT.md
Normal file
@@ -0,0 +1,128 @@
|
||||
# Contributor Covenant Code of Conduct
|
||||
|
||||
## Our Pledge
|
||||
|
||||
We as members, contributors, and leaders pledge to make participation in our
|
||||
community a harassment-free experience for everyone, regardless of age, body
|
||||
size, visible or invisible disability, ethnicity, sex characteristics, gender
|
||||
identity and expression, level of experience, education, socio-economic status,
|
||||
nationality, personal appearance, race, religion, or sexual identity
|
||||
and orientation.
|
||||
|
||||
We pledge to act and interact in ways that contribute to an open, welcoming,
|
||||
diverse, inclusive, and healthy community.
|
||||
|
||||
## Our Standards
|
||||
|
||||
Examples of behavior that contributes to a positive environment for our
|
||||
community include:
|
||||
|
||||
* Demonstrating empathy and kindness toward other people
|
||||
* Being respectful of differing opinions, viewpoints, and experiences
|
||||
* Giving and gracefully accepting constructive feedback
|
||||
* Accepting responsibility and apologizing to those affected by our mistakes,
|
||||
and learning from the experience
|
||||
* Focusing on what is best not just for us as individuals, but for the
|
||||
overall community
|
||||
|
||||
Examples of unacceptable behavior include:
|
||||
|
||||
* The use of sexualized language or imagery, and sexual attention or
|
||||
advances of any kind
|
||||
* Trolling, insulting or derogatory comments, and personal or political attacks
|
||||
* Public or private harassment
|
||||
* Publishing others' private information, such as a physical or email
|
||||
address, without their explicit permission
|
||||
* Other conduct which could reasonably be considered inappropriate in a
|
||||
professional setting
|
||||
|
||||
## Enforcement Responsibilities
|
||||
|
||||
Community leaders are responsible for clarifying and enforcing our standards of
|
||||
acceptable behavior and will take appropriate and fair corrective action in
|
||||
response to any behavior that they deem inappropriate, threatening, offensive,
|
||||
or harmful.
|
||||
|
||||
Community leaders have the right and responsibility to remove, edit, or reject
|
||||
comments, commits, code, wiki edits, issues, and other contributions that are
|
||||
not aligned to this Code of Conduct, and will communicate reasons for moderation
|
||||
decisions when appropriate.
|
||||
|
||||
## Scope
|
||||
|
||||
This Code of Conduct applies within all community spaces, and also applies when
|
||||
an individual is officially representing the community in public spaces.
|
||||
Examples of representing our community include using an official e-mail address,
|
||||
posting via an official social media account, or acting as an appointed
|
||||
representative at an online or offline event.
|
||||
|
||||
## Enforcement
|
||||
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||
reported to the community leaders responsible for enforcement at
|
||||
.
|
||||
All complaints will be reviewed and investigated promptly and fairly.
|
||||
|
||||
All community leaders are obligated to respect the privacy and security of the
|
||||
reporter of any incident.
|
||||
|
||||
## Enforcement Guidelines
|
||||
|
||||
Community leaders will follow these Community Impact Guidelines in determining
|
||||
the consequences for any action they deem in violation of this Code of Conduct:
|
||||
|
||||
### 1. Correction
|
||||
|
||||
**Community Impact**: Use of inappropriate language or other behavior deemed
|
||||
unprofessional or unwelcome in the community.
|
||||
|
||||
**Consequence**: A private, written warning from community leaders, providing
|
||||
clarity around the nature of the violation and an explanation of why the
|
||||
behavior was inappropriate. A public apology may be requested.
|
||||
|
||||
### 2. Warning
|
||||
|
||||
**Community Impact**: A violation through a single incident or series
|
||||
of actions.
|
||||
|
||||
**Consequence**: A warning with consequences for continued behavior. No
|
||||
interaction with the people involved, including unsolicited interaction with
|
||||
those enforcing the Code of Conduct, for a specified period of time. This
|
||||
includes avoiding interactions in community spaces as well as external channels
|
||||
like social media. Violating these terms may lead to a temporary or
|
||||
permanent ban.
|
||||
|
||||
### 3. Temporary Ban
|
||||
|
||||
**Community Impact**: A serious violation of community standards, including
|
||||
sustained inappropriate behavior.
|
||||
|
||||
**Consequence**: A temporary ban from any sort of interaction or public
|
||||
communication with the community for a specified period of time. No public or
|
||||
private interaction with the people involved, including unsolicited interaction
|
||||
with those enforcing the Code of Conduct, is allowed during this period.
|
||||
Violating these terms may lead to a permanent ban.
|
||||
|
||||
### 4. Permanent Ban
|
||||
|
||||
**Community Impact**: Demonstrating a pattern of violation of community
|
||||
standards, including sustained inappropriate behavior, harassment of an
|
||||
individual, or aggression toward or disparagement of classes of individuals.
|
||||
|
||||
**Consequence**: A permanent ban from any sort of public interaction within
|
||||
the community.
|
||||
|
||||
## Attribution
|
||||
|
||||
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
|
||||
version 2.0, available at
|
||||
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
|
||||
|
||||
Community Impact Guidelines were inspired by [Mozilla's code of conduct
|
||||
enforcement ladder](https://github.com/mozilla/diversity).
|
||||
|
||||
[homepage]: https://www.contributor-covenant.org
|
||||
|
||||
For answers to common questions about this code of conduct, see the FAQ at
|
||||
https://www.contributor-covenant.org/faq. Translations are available at
|
||||
https://www.contributor-covenant.org/translations.
|
||||
485
README.md
485
README.md
@@ -1,11 +1,23 @@
|
||||
|
||||
Frps服务端一键配置脚本,Frp最新版本:0.50.0
|
||||
===========
|
||||
## Frp服务端一键配置脚本,脚本默認获取Frp最新版本
|
||||
## Frp server one-click configuration script. The script obtains the latest Frp version by default
|
||||
|
||||
[![GitHub Repo][repo-shield]][repo-url]
|
||||
[![Stars][stars-shield]][stars-url]
|
||||
[![Forks][forks-shield]][forks-url]
|
||||
|
||||
[repo-shield]: https://img.shields.io/badge/GitHub-mvscode%2Ffrps--onekey-brightgreen?style=flat-square&logo=github
|
||||
[repo-url]: https://github.com/mvscode/frps-onekey
|
||||
[stars-shield]: https://img.shields.io/github/stars/mvscode/frps-onekey.svg?style=flat-square&logo=github&color=yellow
|
||||
[stars-url]: https://github.com/mvscode/frps-onekey/stargazers
|
||||
[forks-shield]: https://img.shields.io/github/forks/mvscode/frps-onekey.svg?style=flat-square&logo=github&color=green
|
||||
[forks-url]: https://github.com/mvscode/frps-onekey/network/members
|
||||
|
||||
|
||||
*Frp 是一个高性能的反向代理应用,可以帮助您轻松地进行内网穿透,对外网提供服务,支持 tcp, http, https 等协议类型,并且 web 服务支持根据域名进行路由转发。*
|
||||
|
||||
* 详情:fatedier (https://github.com/fatedier/frp)
|
||||
* 此脚本原作者:clangcn (https://github.com/clangcn/onekey-install-shell)
|
||||
* Detail(详情):fatedier[<img alt="github" src="https://img.shields.io/badge/github/fatedier/frp-8da0cb?style=for-the-badge&labelColor=555555&logo=github" height="16">](https://github.com/fatedier/frp)
|
||||
* Script author(脚本原作者):clangcn [<img alt="github" src="https://img.shields.io/badge/github/clangcn/onekey_install_shell-8da0cb?style=for-the-badge&labelColor=555555&logo=github" height="16">](https://github.com/clangcn/onekey-install-shell)
|
||||
|
||||
## Frps-Onekey-Install-Shell For CentOS/Debian/Ubuntu/Fedora (32bit/64bit)
|
||||
|
||||
@@ -37,413 +49,80 @@ chmod 700 ./install-frps.sh
|
||||
```Bash
|
||||
Usage: /etc/init.d/frps {start|stop|restart|status|config|version}
|
||||
```
|
||||
Frps onkey-install-shell Changelog<br>Frp版本更新说明
|
||||
|
||||
## Script ChangeLog
|
||||
---------------------------------------
|
||||
|
||||
<!-- vim-markdown-toc GFM -->
|
||||
### [1.0.7] - 2024-07-24
|
||||
|
||||
#### Added
|
||||
* Add progress bar for download frps tar file
|
||||
[Issue 101](https://github.com/mvscode/frps-onekey/issues/101)
|
||||
|
||||
#### Fixed
|
||||
* fix typo
|
||||
|
||||
### [1.0.6] - 2024-06-25
|
||||
|
||||
#### Added
|
||||
* Add new server os to support, RHEL,Rocky,AlmaLinux OS.
|
||||
|
||||
* Add new server os on frps.init file
|
||||
|
||||
#### Fixed
|
||||
* fix check server os version script bug
|
||||
|
||||
### [1.0.5] - 2024-06-19
|
||||
|
||||
#### Added
|
||||
* Add quic of transport protocol support,server port default same as https port.
|
||||
|
||||
* Add user-defined functions for the kcp bind port,server port default same as bind port.
|
||||
|
||||
#### Fixed
|
||||
* Fix the script under frps server start faild still install complete bug.
|
||||
|
||||
### [1.0.4] - 2024-06-18
|
||||
|
||||
#### Updated
|
||||
* Add trace option at log level, default is info
|
||||
|
||||
* Update shell update function, ask the user if they want to update
|
||||
|
||||
#### New
|
||||
* frps support transport heartbeatTimeout = 90, default is enable
|
||||
|
||||
### [1.0.3] - 2024-06-16
|
||||
|
||||
#### Amendment
|
||||
* Amend function name to frps
|
||||
|
||||
#### Changed
|
||||
* Change curl command to get server ip from wget command [Issue 117](https://github.com/mvscode/frps-onekey/issues/117)
|
||||
|
||||
### [1.0.2] - 2024-06-13
|
||||
|
||||
#### Update
|
||||
* Update frp server config format to follow up the latest version.
|
||||
```
|
||||
bind_addr --> bindAddr
|
||||
bind_port --> bindPort
|
||||
kcp_bind_port --> kcpBindPort
|
||||
etc..
|
||||
```
|
||||
|
||||
### [1.0.1] - 2024-06-07
|
||||
|
||||
#### Changed
|
||||
* frps program config file change to frps.toml from frps.int
|
||||
|
||||
|
||||
|
||||
* ## [v0.50.0 [2023/06/27]](#v0.50.0[2023/06/27])
|
||||
* ### Notes
|
||||
> For enhanced security, the default values for tls_enable and disable_custom_tls_first_byte have been set to true.If you wish to revert to the previous default values, you need to manually set the values of these two parameters to false.
|
||||
|
||||
* ### Features
|
||||
> Added support for allow_users in stcp, sudp, xtcp. By default, only the same user is allowed to access. Use * to allow access from any user. The visitor configuration now supports server_user to connect to proxies of other users.
|
||||
|
||||
> Added fallback support to a specified alternative visitor when xtcp connection fails.
|
||||
|
||||
* ### Improvements
|
||||
> Increased the default value of MaxStreamWindowSize for yamux to 6MB, improving traffic forwarding rate in high-latency scenarios.
|
||||
|
||||
* ### Fixes
|
||||
|
||||
> Fixed an issue where having proxies with the same name would cause previously working proxies to become ineffective in xtcp.
|
||||
|
||||
|
||||
* ## [v0.49.0 [2023/05/30]](#v0.49.0[2023/05/30])
|
||||
* ### Notes
|
||||
> v0.49.0 版本修改比較大,詳情可以作者那查看
|
||||
|
||||
* ### New
|
||||
> The frpc has added the nathole discover command for testing the NAT type of the current network.
|
||||
|
||||
> XTCP has been refactored, resulting in a significant improvement in the success rate of penetration.
|
||||
|
||||
> When verifying passwords, use subtle.ConstantTimeCompare and introduce a certain delay when the password is incorrect.
|
||||
|
||||
* ### Fix
|
||||
|
||||
> Fix the problem of lagging when opening multiple table entries in the frps dashboard.
|
||||
|
||||
|
||||
* ## [v0.48.0 [2023/03/08]](#v0.48.0[2023/03/08])
|
||||
* ### New
|
||||
> The httpconnect type in tcpmux now supports authentication through the parameters http_user and http_pwd.
|
||||
|
||||
* ### Improve
|
||||
> The web framework has been upgraded to vue3 + element-plus, and the dashboard has added some information display and supports dark mode.
|
||||
|
||||
> The e2e testing has been switched to ginkgo v2.
|
||||
|
||||
* ## [v0.47.0 [2023/02/10]](#v0.47.0[2023/02/10])
|
||||
* ### New
|
||||
> Added config bandwidth_limit_mode in frpc, default value is client which is current behavior. Optional value is server, to enable bandwidth limit in server. The major aim is to let server plugin has the ability to modify bandwidth limit for each proxy.
|
||||
|
||||
* ### Improve
|
||||
> dns_server supports ipv6.
|
||||
|
||||
> frpc supports graceful shutdown for protocol quic.
|
||||
|
||||
* ## [shell updated [2023/02/03]]
|
||||
* ### Add new download path
|
||||
> Add gitee as frps download file
|
||||
|
||||
* ## [v0.46.1 [2023/01/15]](#v0.46.1[2023/01/15])
|
||||
* ### FIX
|
||||
> Server Plugin sends incorrect op name for NewWorkConn.
|
||||
|
||||
> QUIC stream leak.
|
||||
|
||||
* ## [v0.46.0 [2022/12/18]](#v0.46.0[2022/12/18])
|
||||
* ### NEW
|
||||
> Add oidc_scope parameter to frpc when authentication_method = oidc.
|
||||
|
||||
> Support quic protocol between frpc and frps.
|
||||
|
||||
* ### Improve
|
||||
> Upgrade oidc and oauth2 package which is forward compatible.
|
||||
|
||||
* ## [v0.45.0 [2022/11/03]](#v0.45.0[2022/11/03])
|
||||
* ### Improve
|
||||
> Adjust http group load balancing to forward requests to each frpc proxy round robin. Previous behavior is always forwarding requests to a single proxy in the case of single concurrency.
|
||||
|
||||
* ## [v0.44.0 [2022/07/11]](#v0.44.0[2022/07/11])
|
||||
* ### NEW
|
||||
> Use auto generated certificates if plugin_key_path and plugin_crt_path are empty for plugin https2https and https2http.
|
||||
|
||||
> Server dashboard supports TLS configs.
|
||||
|
||||
* ### FIX
|
||||
> xtcp error with IPv6 address.
|
||||
|
||||
* ## [v0.43.0 [2022/05/28]](#v0.43.0[2022/05/28])
|
||||
* ### NEW
|
||||
> Added route_by_http_user in http and tcpmux proxy to support routing to different clients by HTTP basic auth user.
|
||||
|
||||
> CONNECT method can be forwarded in http type proxy.
|
||||
|
||||
> Added tcpmux_passthrough in tcpmux proxy. If true, CONNECT request will be forwarded to frpc.
|
||||
|
||||
* ## [v0.42.0 [2022/04/22]](#v0.42.0[2022/04/22])
|
||||
* ### NEW
|
||||
> Added new parameter config_dir in frpc to run multiple client instances in one process.
|
||||
|
||||
* ### FIX
|
||||
> Equal sign in environment variables causes parsing error.
|
||||
|
||||
* ## [v0.41.0 [2022/03/24]](#v0.41.0[2022/03/24])
|
||||
* ### NEW
|
||||
> Support go http pprof.
|
||||
|
||||
* ### IMPROVE
|
||||
> Change underlying TCP connection keepalive interval to 2 hours.
|
||||
|
||||
> Create new connection to server for sudp visitor when needed, to avoid frequent reconnections.
|
||||
|
||||
* ## [v0.40.0 [2022/03/13]](#v0.40.0[2022/03/13])
|
||||
* ### NEW
|
||||
> Added dial_server_timeout in frpc to specify connecting timeout to frps.
|
||||
|
||||
> Additional EndpointParams can be set for OIDC.
|
||||
|
||||
> Added CloseProxy operation in server plugin.
|
||||
|
||||
* ### IMPROVE
|
||||
> Added some randomness in reconnect delay.
|
||||
|
||||
* ### FIX
|
||||
> TLS server name is ignored when tls_trusted_ca_file isn’t set.
|
||||
|
||||
* ## [v0.39.1 [2022/02/09]](#v0.39.1[2022/02/09])
|
||||
* ### FIX
|
||||
> Fixed IPv6 address parse issue.
|
||||
|
||||
* ## [v0.39.0 [2022/01/28]](#v0.39.0[2022/01/28])
|
||||
* ### NEW
|
||||
> Added connect_server_local_ip in frpc to specify local IP connected to frps.
|
||||
|
||||
> Added tcp_mux_keepalive_interval both in frpc and frps to set tcp_mux keepalive interval seconds if tcp_mux is enabled. After using this params, you can set heartbeat_interval to -1 to disable application layer heartbeat to reduce traffic usage(Make sure frps is in the latest version).
|
||||
|
||||
* ### Improve
|
||||
> Server Plugin: Added client_address in Login Operation.
|
||||
|
||||
* ### FIX
|
||||
> Remove authentication for healthz api.
|
||||
|
||||
* ## [v0.38.0 [2021/10/28]](#v0.38.0[2021/10/28])
|
||||
* ### NEW
|
||||
> Add /healthz API.
|
||||
|
||||
> frpc support disable_custom_tls_first_byte .If set true, frpc will not send custom header byte.
|
||||
|
||||
* ### Improve
|
||||
> Use go standard embed package instead of statik.
|
||||
|
||||
* ## [v0.37.1 [2021/08/04]](#v0.37.1[2021/08/04])
|
||||
* ### FIX
|
||||
> Plugin https2https not work.
|
||||
|
||||
> context canceled problem for http_proxy plugin when multiple requests reuse same connection.
|
||||
|
||||
> In some cases, frps can't get server name for https proxy.
|
||||
|
||||
* ## [v0.37.0 [2021/06/03]](#v0.37.0[2021/06/03])
|
||||
* ### NEW
|
||||
> frpc add subcommand verify to validate configures before running.
|
||||
|
||||
> frpc support includes option to split multiple proxy configs into different files.
|
||||
|
||||
> Support sudp in dashboard.
|
||||
|
||||
* ### FIX
|
||||
> Use empty string as default value for dashboard user and password.
|
||||
|
||||
> login_fail_exit is not valid when protocol = kcp.
|
||||
|
||||
* ## [v0.36.2 [2021/03/22]](#v0.36.2[2021/03/22])
|
||||
* ### IMPROVE
|
||||
> Support reverseproxy to dashboard with additional parts in path.
|
||||
|
||||
* ### FIX
|
||||
> Fix logic error when parsing configs.
|
||||
|
||||
* ## [v0.36.1 [2021/03/19]](#v0.36.1[2021/03/19])
|
||||
* ### FIX
|
||||
> Fix bind_udp_port listen on error port.
|
||||
|
||||
* ## [v0.36.0 [2021/03/17]](#v0.36.0[2021/03/17])
|
||||
* ### NEW
|
||||
> New plugin https2https.
|
||||
|
||||
> frpc supports tls_server_name to override the default value from server_addr.
|
||||
|
||||
* ### IMPROVEMENT
|
||||
> Increase reconnect frequency if it occurs an network error between frpc and frps
|
||||
|
||||
* ## [v0.35.1 [2021/01/25]](#v0.35.1[2021/01/25])
|
||||
* ### FIX
|
||||
> Reduce binary file size.
|
||||
|
||||
* ## Shell Upadte [2021/01/24]
|
||||
* ### Amend
|
||||
> Aliyun download url replace by Gitee download url
|
||||
|
||||
* ## [v0.35.0 [2021/01/20]](#v0.35.0[2021/01/20])
|
||||
* ### NEW
|
||||
> Server Plugin supports HTTPS.
|
||||
|
||||
* ### FIX
|
||||
> Fix IPv6 address parse problem.
|
||||
|
||||
> HTTP type proxy can't handle websocket protocol due to error Connection header value.
|
||||
|
||||
* ## [v0.34.3 [2020/11/20]](#v0.34.2[2020/11/20])
|
||||
* ### NEW
|
||||
> Command line parameters support enable_prometheus.
|
||||
|
||||
* ## [v0.34.2 [2020/11/12]](#v0.34.2[2020/11/12])
|
||||
* ### FIX
|
||||
> Stream data transfer delay(e.g. chunked data) for HTTP type proxy.
|
||||
|
||||
* ## [v0.34.1 [2020/10/01]](#v0.34.1[2020/10/01])
|
||||
* ### NEW
|
||||
> Support NTLM protocol for http proxy to connect frps.
|
||||
|
||||
> Official docker image support on DockerHub and Github registry.
|
||||
|
||||
* ### FIX
|
||||
> Fix a dashboard stats data lost problem after client reconnect more than 7 days.
|
||||
|
||||
> Fix TLS certificate verification failed.
|
||||
|
||||
|
||||
* ## [v0.34.0 [2020/09/19]](#v0.34.0[2020/09/19])
|
||||
* ### NEW
|
||||
> Support TLS certificate and mutual TLS authentication.
|
||||
|
||||
> Support set max UDP package size, default is 1500.
|
||||
|
||||
> New e2e test framework.
|
||||
|
||||
* ### FIX
|
||||
> UDP and SUDP proxy don't support compression and encrytion.
|
||||
|
||||
> Call server plugins in fixed order.
|
||||
|
||||
* ## [v0.33.0 [2020/04/27]](#v0.33.0[2020/04/27])
|
||||
* ### NEW
|
||||
> Server plugin add NewUserConn interface.
|
||||
|
||||
> New proxy type sudp to provide a safe way to expose udp service like stcp.
|
||||
|
||||
> Support load balancing for tcpmux.
|
||||
|
||||
* ### FIX
|
||||
> Fix invalid of AuthenticateNewWorkConns in frpc.
|
||||
|
||||
> Fix a panic problem if accept many connections concurrently.
|
||||
|
||||
* ## [v0.32.1 [2020/04/03]](#v0.32.1[2020/04/03])
|
||||
* ### NEW
|
||||
> New operation Ping and NewWorkConn support in Server Plugin.
|
||||
|
||||
> Add apiVersion and op params in Server Plugin HTTP request.
|
||||
|
||||
* ### Improvement
|
||||
> Prevent frequently relogin when connection broken after login success soon.
|
||||
|
||||
* ### Fix
|
||||
> Fix a memory leak problem caused by frequently relogin.
|
||||
|
||||
* ## Shell Upadte [2020/03/24]
|
||||
* ### Add
|
||||
> Add new download url-gitee,just support install package
|
||||
|
||||
* ## [v0.32.0 [2020/03/11]](#v0.32.0[2020/03/11])
|
||||
* ### New
|
||||
> Support tls_only = true in frps.ini to enforce frps only accept TLS connection.
|
||||
|
||||
> Set detailed_errors_to_client = false in frps.ini to hide detailed error information to client.
|
||||
|
||||
> Support prometheus monitor.
|
||||
|
||||
> Optional OIDC authentication.
|
||||
|
||||
> New proxy type tcpmux. Support TCP port multiplexing over HTTP Connect tunnel.
|
||||
* ### Fix
|
||||
> Bandwidth limit configure not compared correctly when reloading.
|
||||
|
||||
> Incorrect connection count stats.
|
||||
|
||||
* ## [v0.31.2 [2020/02/05]](#v0.31.2[2020/02/05])
|
||||
* ### Fix
|
||||
> Fix not release port when client start proxy error.
|
||||
|
||||
* ## [v0.31.1 [2020/01/06]](#v0.31.1[2020/01/06])
|
||||
* ### Fix
|
||||
> Fix panic when proxy meta data is set.
|
||||
|
||||
* ## [v0.31.0 [2020/01/03]](#v0.31.0[2020/01/03])
|
||||
* ### New
|
||||
> New server manage plugin to extend frp's ability
|
||||
* ### Improvement
|
||||
> Improve xtcp's success rate in some special case.
|
||||
|
||||
* ## [v0.30.0 [2019/11/29]](#v0.30.0[2019/11/29])
|
||||
* ### New
|
||||
> Support bandwidth limit for each proxy.
|
||||
|
||||
> New plugin https2http, explore https service as http protocol.
|
||||
|
||||
* ## [v0.29.1 [2019/11/03]](#v0.29.1[2019/11/03])
|
||||
* ### Fix
|
||||
> Fix bug when use_encryption is true for xtcp.
|
||||
|
||||
* ## [v0.29.0 [2019/08/30]](#v0.29.0[2019/08/30])
|
||||
* ### New
|
||||
> New disable_log_color configure to disable console log color.
|
||||
|
||||
> Plugin https2http support attatch headers by plugin_header_ prefix.
|
||||
* ### Change
|
||||
> Provide a high-level Go API.
|
||||
* ### Fix
|
||||
> max_pool_count is invalid.
|
||||
|
||||
> Judge error between IPv4 and IPv6 in proxy protocol
|
||||
|
||||
* ## [v0.28.2 [2019/08/10]](#v0.28.2[2019/08/10])
|
||||
* ### Fix
|
||||
> Fix a bug that health check worker may stop unexpected.
|
||||
|
||||
* ## [v0.28.1 [2019/08/08]](#v0.28.1[2019/08/08])
|
||||
* ### New
|
||||
> Update standard http ReverseProxy to handle more upgrade protocol
|
||||
|
||||
> Update some vendor packages.
|
||||
|
||||
* ## [v0.28.0 [2019/08/03]](#v0.28.0[2019/08/03])
|
||||
* ### New
|
||||
> type http support load balancing.
|
||||
* ### Fix
|
||||
> Fix a connection leak problem when login_fail_exit is false.
|
||||
|
||||
* ## [v0.27.1 [2019/07/15]](#v0.27.1[2019/07/15])
|
||||
* ### Fix
|
||||
> Add read timeout for TLS connection check.
|
||||
|
||||
* ## [v0.27.0 [2019/04/25]](#v0.27.0[2019/04/25])
|
||||
* ### New
|
||||
> Proxy Protocol support plugin unix_domain_socket.
|
||||
|
||||
> frps support custom 404 page.
|
||||
|
||||
* ## [v0.26.0 [2019/04/10]](#v0.26.0[2019/04/10])
|
||||
* ### New
|
||||
> Support Proxy Protocol.
|
||||
|
||||
> New plugin https2http.
|
||||
* ### Fix
|
||||
> Fix router config conflict when frpc start by command line mode. #1165
|
||||
|
||||
* ## [v0.25.3 [2019/03/26]](#v0.25.3[2019/03/26])
|
||||
* ### Fix
|
||||
> Fix panic error when reconnection with tls_enable is true.
|
||||
|
||||
* ## [v0.25.2 [2019/03/25]](#v0.25.2[2019/03/25])
|
||||
* ### Change
|
||||
> Change Update version of kcp-go.
|
||||
* ### Fix
|
||||
> Fix connection leak of http health check. #1155
|
||||
|
||||
* ## [v0.25.1 [2019/03/15]](#v0.25.1[2019/03/15])
|
||||
* ### Fix
|
||||
>Fix a match problem with multilevel subdomain. #1132
|
||||
frps --log_file is useless. #1125
|
||||
|
||||
* ## [v0.25.0 [2019/03/11]](#v0.25.0[2019/03/11])
|
||||
* ### New
|
||||
> Support TLS between frpc and frps, Set
|
||||
tls enable to enable this feature in frpC.Improve stability of xtcp.
|
||||
* ### Fix
|
||||
> Fix a bug that xtcp don't release connections in some case.
|
||||
|
||||
##### Note: xtcp is incompatible with old versions.
|
||||
|
||||
##### 注意:此版本的xtcp和之前版本不兼容,需要同步升级服务端和客户端才能正常使用
|
||||
|
||||
* ## [v0.24.1 [2019/02/12]](#v0.24.1[2019/02/12])
|
||||
* ### Fix
|
||||
> Fix Error clear frpc configure file when /api/config called without token set
|
||||
|
||||
* ## [v0.24.0 [2019/02/11]](#v0.24.0[2019/02/11])
|
||||
* ### New
|
||||
> New Support admin UI for frpc
|
||||
|
||||
* ## [v0.23.3 [2019/01/30]](#v0.23.3[2019/01/30])
|
||||
* ### Fix
|
||||
> Fix Reload proxy not saved after reconnecting
|
||||
|
||||
* ## [v0.23.2 [2019/01/26]](#v0.23.2[2019/01/26])
|
||||
* ### Fix
|
||||
> Fix client not working caused by reconnecting.
|
||||
|
||||
* ## [v0.23.1 [2019/01/16]](#v0.23.1[2019/01/16])
|
||||
* ### Fix
|
||||
>Fix status api.
|
||||
|
||||
>Fix reload and status command error.
|
||||
|
||||
* ## [v0.23.0 [2019/01/15]](#v0.23.0[2019/01/15])
|
||||
* ### New
|
||||
>Support render configure file template with os environment.
|
||||
* ### Change
|
||||
>Remove check for authentication timeout.
|
||||
|
||||
32
frps.init
32
frps.init
@@ -19,19 +19,19 @@
|
||||
### END INIT INFO
|
||||
|
||||
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
|
||||
ProgramName="Frps"
|
||||
ProgramName="frps"
|
||||
ProgramPath="/usr/local/frps"
|
||||
NAME=frps
|
||||
BIN=${ProgramPath}/${NAME}
|
||||
CONFIGFILE=${ProgramPath}/frps.ini
|
||||
CONFIGFILE=${ProgramPath}/frps.toml
|
||||
SCRIPTNAME=/etc/init.d/${NAME}
|
||||
version="0.50.0"
|
||||
version="2024"
|
||||
program_version=`${BIN} --version`
|
||||
RET_VAL=0
|
||||
|
||||
[ -x ${BIN} ] || exit 0
|
||||
strLog=""
|
||||
fun_clangcn()
|
||||
fun_frps()
|
||||
{
|
||||
echo ""
|
||||
echo "+---------------------------------------------------------+"
|
||||
@@ -57,7 +57,7 @@ fun_load_config(){
|
||||
fun_start()
|
||||
{
|
||||
if [ "${arg1}" = "start" ]; then
|
||||
fun_clangcn
|
||||
fun_frps
|
||||
fi
|
||||
if fun_check_run; then
|
||||
echo "${ProgramName} (pid $PID) already running."
|
||||
@@ -78,7 +78,7 @@ fun_start()
|
||||
|
||||
fun_stop(){
|
||||
if [ "${arg1}" = "stop" ] || [ "${arg1}" = "restart" ]; then
|
||||
fun_clangcn
|
||||
fun_frps
|
||||
fi
|
||||
if fun_check_run; then
|
||||
echo -n "Stoping ${ProgramName} (pid $PID)... "
|
||||
@@ -108,19 +108,23 @@ fun_status(){
|
||||
fi
|
||||
}
|
||||
checkos(){
|
||||
if grep -Eqi "CentOS" /etc/issue || grep -Eq "CentOS" /etc/*-release; then
|
||||
if grep -Eqi "CentOS" /etc/issue || grep -Eq "CentOS" /etc/*-release; then
|
||||
OS=CentOS
|
||||
elif grep -Eqi "Red Hat Enterprise Linux" /etc/issue || grep -Eq "Red Hat Enterprise Linux" /etc/*-release; then
|
||||
OS=RHEL
|
||||
elif grep -Eqi "Fedora" /etc/issue || grep -Eq "Fedora" /etc/*-release; then
|
||||
OS=Fedora
|
||||
elif grep -Eqi "Rocky" /etc/issue || grep -Eq "Rocky" /etc/*-release; then
|
||||
OS=Rocky
|
||||
elif grep -Eqi "AlmaLinux" /etc/issue || grep -Eq "AlmaLinux" /etc/*-release; then
|
||||
OS=AlmaLinux
|
||||
elif grep -Eqi "Debian" /etc/issue || grep -Eq "Debian" /etc/*-release; then
|
||||
OS=Debian
|
||||
elif grep -Eqi "Ubuntu" /etc/issue || grep -Eq "Ubuntu" /etc/*-release; then
|
||||
OS=Ubuntu
|
||||
elif grep -Eqi "Alpine" /etc/issue || grep -Eq "Alpine" /etc/*-release; then
|
||||
OS=Alpine
|
||||
elif grep -Eqi "Fedora" /etc/issue || grep -Eq "Fedora" /etc/*-release; then
|
||||
OS=Fedora
|
||||
else
|
||||
echo "Not support OS, Please reinstall OS and retry!"
|
||||
return 1
|
||||
echo "Unsupported OS. Please use a supported Linux distribution and retry!"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
fun_config(){
|
||||
@@ -156,7 +160,7 @@ case "${arg1}" in
|
||||
fun_help
|
||||
;;
|
||||
*)
|
||||
fun_clangcn
|
||||
fun_frps
|
||||
echo "Usage: $SCRIPTNAME {start|stop|restart|status|config|version}"
|
||||
RET_VAL=1
|
||||
;;
|
||||
|
||||
66
generate-certs.sh
Normal file
66
generate-certs.sh
Normal file
@@ -0,0 +1,66 @@
|
||||
#!/bin/bash
|
||||
|
||||
# 创建证书存放目录
|
||||
mkdir -p /etc/pki/tls/frp/ca
|
||||
mkdir -p /etc/pki/tls/frp/frps
|
||||
mkdir -p /etc/pki/tls/frp/frpc
|
||||
|
||||
# 创建 OpenSSL 配置文件
|
||||
cat > /etc/pki/tls/frp/my-openssl.cnf << EOF
|
||||
[ ca ]
|
||||
default_ca = CA_default
|
||||
[ CA_default ]
|
||||
x509_extensions = usr_cert
|
||||
[ req ]
|
||||
default_bits = 2048
|
||||
default_md = sha256
|
||||
default_keyfile = privkey.pem
|
||||
distinguished_name = req_distinguished_name
|
||||
attributes = req_attributes
|
||||
x509_extensions = v3_ca
|
||||
string_mask = utf8only
|
||||
[ req_distinguished_name ]
|
||||
[ req_attributes ]
|
||||
[ usr_cert ]
|
||||
basicConstraints = CA:FALSE
|
||||
nsComment = "OpenSSL Generated Certificate"
|
||||
subjectKeyIdentifier = hash
|
||||
authorityKeyIdentifier = keyid,issuer
|
||||
[ v3_ca ]
|
||||
subjectKeyIdentifier = hash
|
||||
authorityKeyIdentifier = keyid:always,issuer
|
||||
basicConstraints = CA:true
|
||||
EOF
|
||||
|
||||
# 生成默认 CA
|
||||
echo "====> Generating CA key and certificate"
|
||||
openssl genrsa -out /etc/pki/tls/frp/ca/ca.key 2048
|
||||
openssl req -x509 -new -nodes -key /etc/pki/tls/frp/ca/ca.key -subj "/CN=example.ca.com" -days 5000 -out /etc/pki/tls/frp/ca/ca.crt
|
||||
|
||||
# 生成服务器证书
|
||||
echo "====> Generating server key and certificate"
|
||||
openssl genrsa -out /etc/pki/tls/frp/frps/server.key 2048
|
||||
openssl req -new -sha256 -key /etc/pki/tls/frp/frps/server.key \
|
||||
-subj "/C=XX/ST=DEFAULT/L=DEFAULT/O=DEFAULT/CN=server.com" \
|
||||
-reqexts SAN \
|
||||
-config <(cat /etc/pki/tls/frp/my-openssl.cnf <(printf "\n[SAN]\nsubjectAltName=DNS:localhost,IP:${defIP}")) \
|
||||
-out /etc/pki/tls/frp/frps/server.csr
|
||||
openssl x509 -req -days 365 -sha256 \
|
||||
-in /etc/pki/tls/frp/frps/server.csr -CA /etc/pki/tls/frp/ca/ca.crt -CAkey /etc/pki/tls/frp/ca/ca.key -CAcreateserial \
|
||||
-extfile <(printf "subjectAltName=DNS:localhost,IP:${defIP}") \
|
||||
-out /etc/pki/tls/frp/frps/server.crt
|
||||
|
||||
# 生成客户端证书
|
||||
echo "====> Generating client key and certificate"
|
||||
openssl genrsa -out /etc/pki/tls/frp/frpc/client.key 2048
|
||||
openssl req -new -sha256 -key /etc/pki/tls/frp/frpc/client.key \
|
||||
-subj "/C=XX/ST=DEFAULT/L=DEFAULT/O=DEFAULT/CN=client.com" \
|
||||
-reqexts SAN \
|
||||
-config <(cat /etc/pki/tls/frp/my-openssl.cnf <(printf "\n[SAN]\nsubjectAltName=DNS:localhost"))\
|
||||
-out /etc/pki/tls/frp/frpc/client.csr
|
||||
openssl x509 -req -days 365 -sha256 \
|
||||
-in /etc/pki/tls/frp/frpc/client.csr -CA /etc/pki/tls/frp/ca/ca.crt -CAkey /etc/pki/tls/frp/ca/ca.key -CAcreateserial \
|
||||
-extfile <(printf "subjectAltName=DNS:localhost") \
|
||||
-out /etc/pki/tls/frp/frpc/client.crt
|
||||
|
||||
echo "Certificate generation completed."
|
||||
929
install-frps.sh
929
install-frps.sh
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user