frpc_full.ini 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221
  1. # [common] is integral section
  2. [common]
  3. # A literal address or host name for IPv6 must be enclosed
  4. # in square brackets, as in "[::1]:80", "[ipv6-host]:http" or "[ipv6-host%zone]:80"
  5. server_addr = 0.0.0.0
  6. server_port = 7000
  7. # if you want to connect frps by http proxy or socks5 proxy, you can set http_proxy here or in global environment variables
  8. # it only works when protocol is tcp
  9. # http_proxy = http://user:passwd@192.168.1.128:8080
  10. # http_proxy = socks5://user:passwd@192.168.1.128:1080
  11. # console or real logFile path like ./frpc.log
  12. log_file = ./frpc.log
  13. # trace, debug, info, warn, error
  14. log_level = info
  15. log_max_days = 3
  16. # for authentication
  17. token = 12345678
  18. # set admin address for control frpc's action by http api such as reload
  19. admin_addr = 127.0.0.1
  20. admin_port = 7400
  21. admin_user = admin
  22. admin_passwd = admin
  23. # connections will be established in advance, default value is zero
  24. pool_count = 5
  25. # if tcp stream multiplexing is used, default is true, it must be same with frps
  26. tcp_mux = true
  27. # your proxy name will be changed to {user}.{proxy}
  28. user = your_name
  29. # decide if exit program when first login failed, otherwise continuous relogin to frps
  30. # default is true
  31. login_fail_exit = true
  32. # communication protocol used to connect to server
  33. # now it supports tcp and kcp, default is tcp
  34. protocol = tcp
  35. # specify a dns server, so frpc will use this instead of default one
  36. # dns_server = 8.8.8.8
  37. # proxy names you want to start divided by ','
  38. # default is empty, means all proxies
  39. # start = ssh,dns
  40. # heartbeat configure, it's not recommended to modify the default value
  41. # the default value of heartbeat_interval is 10 and heartbeat_timeout is 90
  42. # heartbeat_interval = 30
  43. # heartbeat_timeout = 90
  44. # 'ssh' is the unique proxy name
  45. # if user in [common] section is not empty, it will be changed to {user}.{proxy} such as 'your_name.ssh'
  46. [ssh]
  47. # tcp | udp | http | https | stcp | xtcp, default is tcp
  48. type = tcp
  49. local_ip = 127.0.0.1
  50. local_port = 22
  51. # true or false, if true, messages between frps and frpc will be encrypted, default is false
  52. use_encryption = false
  53. # if true, message will be compressed
  54. use_compression = false
  55. # remote port listen by frps
  56. remote_port = 6001
  57. # frps will load balancing connections for proxies in same group
  58. group = test_group
  59. # group should have same group key
  60. group_key = 123456
  61. # enable health check for the backend service, it support 'tcp' and 'http' now
  62. # frpc will connect local service's port to detect it's healthy status
  63. health_check_type = tcp
  64. health_check_interval_s = 10
  65. [ssh_random]
  66. type = tcp
  67. local_ip = 127.0.0.1
  68. local_port = 22
  69. # if remote_port is 0, frps will assign a random port for you
  70. remote_port = 0
  71. # if you want to expose multiple ports, add 'range:' prefix to the section name
  72. # frpc will generate multiple proxies such as 'tcp_port_6010', 'tcp_port_6011' and so on.
  73. [range:tcp_port]
  74. type = tcp
  75. local_ip = 127.0.0.1
  76. local_port = 6010-6020,6022,6024-6028
  77. remote_port = 6010-6020,6022,6024-6028
  78. use_encryption = false
  79. use_compression = false
  80. [dns]
  81. type = udp
  82. local_ip = 114.114.114.114
  83. local_port = 53
  84. remote_port = 6002
  85. use_encryption = false
  86. use_compression = false
  87. [range:udp_port]
  88. type = udp
  89. local_ip = 127.0.0.1
  90. local_port = 6010-6020
  91. remote_port = 6010-6020
  92. use_encryption = false
  93. use_compression = false
  94. # Resolve your domain names to [server_addr] so you can use http://web01.yourdomain.com to browse web01 and http://web02.yourdomain.com to browse web02
  95. [web01]
  96. type = http
  97. local_ip = 127.0.0.1
  98. local_port = 80
  99. use_encryption = false
  100. use_compression = true
  101. # http username and password are safety certification for http protocol
  102. # if not set, you can access this custom_domains without certification
  103. http_user = admin
  104. http_pwd = admin
  105. # if domain for frps is frps.com, then you can access [web01] proxy by URL http://test.frps.com
  106. subdomain = web01
  107. custom_domains = web02.yourdomain.com
  108. # locations is only available for http type
  109. locations = /,/pic
  110. host_header_rewrite = example.com
  111. # params with prefix "header_" will be used to update http request headers
  112. header_X-From-Where = frp
  113. health_check_type = http
  114. # frpc will send a GET http request '/status' to local http service
  115. # http service is alive when it return 2xx http response code
  116. health_check_url = /status
  117. health_check_interval_s = 10
  118. [web02]
  119. type = https
  120. local_ip = 127.0.0.1
  121. local_port = 8000
  122. use_encryption = false
  123. use_compression = false
  124. subdomain = web01
  125. custom_domains = web02.yourdomain.com
  126. [plugin_unix_domain_socket]
  127. type = tcp
  128. remote_port = 6003
  129. # if plugin is defined, local_ip and local_port is useless
  130. # plugin will handle connections got from frps
  131. plugin = unix_domain_socket
  132. # params with prefix "plugin_" that plugin needed
  133. plugin_unix_path = /var/run/docker.sock
  134. [plugin_http_proxy]
  135. type = tcp
  136. remote_port = 6004
  137. plugin = http_proxy
  138. plugin_http_user = abc
  139. plugin_http_passwd = abc
  140. [plugin_socks5]
  141. type = tcp
  142. remote_port = 6005
  143. plugin = socks5
  144. plugin_user = abc
  145. plugin_passwd = abc
  146. [plugin_static_file]
  147. type = tcp
  148. remote_port = 6006
  149. plugin = static_file
  150. plugin_local_path = /var/www/blog
  151. plugin_strip_prefix = static
  152. plugin_http_user = abc
  153. plugin_http_passwd = abc
  154. [secret_tcp]
  155. # If the type is secret tcp, remote_port is useless
  156. # Who want to connect local port should deploy another frpc with stcp proxy and role is visitor
  157. type = stcp
  158. # sk used for authentication for visitors
  159. sk = abcdefg
  160. local_ip = 127.0.0.1
  161. local_port = 22
  162. use_encryption = false
  163. use_compression = false
  164. # user of frpc should be same in both stcp server and stcp visitor
  165. [secret_tcp_visitor]
  166. # frpc role visitor -> frps -> frpc role server
  167. role = visitor
  168. type = stcp
  169. # the server name you want to visitor
  170. server_name = secret_tcp
  171. sk = abcdefg
  172. # connect this address to visitor stcp server
  173. bind_addr = 127.0.0.1
  174. bind_port = 9000
  175. use_encryption = false
  176. use_compression = false
  177. [p2p_tcp]
  178. type = xtcp
  179. sk = abcdefg
  180. local_ip = 127.0.0.1
  181. local_port = 22
  182. use_encryption = false
  183. use_compression = false
  184. [p2p_tcp_visitor]
  185. role = visitor
  186. type = xtcp
  187. server_name = p2p_tcp
  188. sk = abcdefg
  189. bind_addr = 127.0.0.1
  190. bind_port = 9001
  191. use_encryption = false
  192. use_compression = false