ansible: 添加 frp 服务端部署配置
This commit is contained in:
85
ansible/playbooks/frps.yaml
Normal file
85
ansible/playbooks/frps.yaml
Normal file
@@ -0,0 +1,85 @@
|
||||
---
|
||||
- name: 配置 frps 服务端
|
||||
hosts: vps_debian
|
||||
gather_facts: false
|
||||
become: true
|
||||
vars:
|
||||
frp_version: "0.71.0"
|
||||
frp_download_url: "https://github.com/fatedier/frp/releases/download/v{{ frp_version }}/frp_{{ frp_version }}_linux_amd64.tar.gz"
|
||||
frp_local_archive: "/tmp/frp_{{ frp_version }}_linux_amd64.tar.gz"
|
||||
frp_local_tmp_dir: "/tmp/frp_{{ frp_version }}_linux_amd64"
|
||||
frp_install_dir: "/opt/frp"
|
||||
frp_config_dir: "/etc/frp"
|
||||
vars_files:
|
||||
- ../vars/vault.yaml
|
||||
|
||||
tasks:
|
||||
- name: 创建 frp 目录
|
||||
file:
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
mode: '0755'
|
||||
loop:
|
||||
- "{{ frp_install_dir }}"
|
||||
- "{{ frp_config_dir }}"
|
||||
|
||||
- name: 检查本地是否已有该版本的压缩包
|
||||
stat:
|
||||
path: "{{ frp_local_archive }}"
|
||||
register: local_archive
|
||||
delegate_to: localhost
|
||||
run_once: true
|
||||
|
||||
- name: 下载 frp 压缩包到本地
|
||||
get_url:
|
||||
url: "{{ frp_download_url }}"
|
||||
dest: "{{ frp_local_archive }}"
|
||||
timeout: 60
|
||||
delegate_to: localhost
|
||||
run_once: true
|
||||
become: false
|
||||
when: not local_archive.stat.exists
|
||||
|
||||
- name: 解压 frp 压缩包到本地
|
||||
unarchive:
|
||||
src: "{{ frp_local_archive }}"
|
||||
dest: "/tmp/"
|
||||
creates: "{{ frp_local_tmp_dir }}"
|
||||
delegate_to: localhost
|
||||
run_once: true
|
||||
become: false
|
||||
when: not local_archive.stat.exists
|
||||
|
||||
- name: 复制 frps 二进制文件到目标机器
|
||||
copy:
|
||||
src: "{{ frp_local_tmp_dir }}/frps"
|
||||
dest: "{{ frp_install_dir }}/frps"
|
||||
mode: '0755'
|
||||
notify: restart frps
|
||||
|
||||
- name: 生成 frps.toml 配置文件
|
||||
template:
|
||||
src: ../templates/frps.toml.j2
|
||||
dest: "{{ frp_config_dir }}/frps.toml"
|
||||
mode: '0644'
|
||||
notify: restart frps
|
||||
|
||||
- name: 创建 frps 的 systemd 服务文件
|
||||
template:
|
||||
src: ../templates/frps.service.j2
|
||||
dest: /etc/systemd/system/frps.service
|
||||
mode: '0644'
|
||||
notify: restart frps
|
||||
|
||||
- name: 启用并启动 frps 服务
|
||||
systemd:
|
||||
name: frps
|
||||
enabled: true
|
||||
state: started
|
||||
daemon_reload: true
|
||||
|
||||
handlers:
|
||||
- name: restart frps
|
||||
systemd:
|
||||
name: frps
|
||||
state: restarted
|
||||
13
ansible/templates/frps.service.j2
Normal file
13
ansible/templates/frps.service.j2
Normal file
@@ -0,0 +1,13 @@
|
||||
[Uint]
|
||||
Description=Frp Server Service
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
Restart=on-failure
|
||||
RestartSec=5s
|
||||
ExecStart={{ frp_install_dir }}/frps -c {{ frp_config_dir }}/frps.toml
|
||||
LimitNOFILE=1048576
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
14
ansible/templates/frps.toml.j2
Normal file
14
ansible/templates/frps.toml.j2
Normal file
@@ -0,0 +1,14 @@
|
||||
bindPort = {{ vault_frps_bind_port }}
|
||||
|
||||
vhostHTTPPort = {{ vault_frps_vhost_http_port }}
|
||||
vhostHTTPSPort = {{ vault_frps_vhost_https_port }}
|
||||
|
||||
auth.method = "token"
|
||||
auth.token = "{{ vault_frps_token }}"
|
||||
|
||||
webServer.addr = "0.0.0.0"
|
||||
webServer.port = {{ vault_frps_dashboard_port }}
|
||||
webServer.user = "{{ vault_frps_dashboard_user }}"
|
||||
webServer.password = "{{ vault_frps_dashboard_password }}"
|
||||
|
||||
log.to = "/var/log/frps.log"
|
||||
@@ -1,14 +1,25 @@
|
||||
$ANSIBLE_VAULT;1.1;AES256
|
||||
33313937633334633738393933643562333861303332623836313735383561396636333034616662
|
||||
3239633666346235303830346135663362666533353363620a313930393362393536383063326135
|
||||
34363462633030646566643531316466373062343437643863306463626532663761643432366434
|
||||
3964623835393037310a366534643464626161353739383639386264613861326533616164656238
|
||||
38326565616131643131386338363036363765313434316661666535333434396337323039613735
|
||||
32393137393631613333356238613265663839666237623664373431383463323833326164373264
|
||||
33383765393236303263623861376366633862303366356638336363333135623437636133653664
|
||||
64336231333531363339656530393438343265643836363736646438373964313236366437383863
|
||||
64626638363935383664633739363732366461313566393533353333623565313766326231316263
|
||||
36383434313966373461616562353862613237666464653530643431326366353230333735306436
|
||||
32623434306462633830356637626262613131386238656665653831353137356565353539623365
|
||||
38656232323266346266313235343662646137626163653439616334656335383631396438386436
|
||||
3239
|
||||
61636265383264303933623962346361346339663364393133333235613736373561353863303237
|
||||
3565323065346438656438623061396164323136666531340a313238643033383537363439626136
|
||||
65646239663263336431353266316238623035666635623265643863353936363035343135326431
|
||||
6565373532396335330a316432393238353666646235353430343237653034326430653131313561
|
||||
32383865313634623131396661326365303833383734396632616664383363383935353935636137
|
||||
64666662663437633135316634333438313263643862386566353762313161623836373232336262
|
||||
65346131653362343164353739376266386336653331316433353431373334646665646130326437
|
||||
65356237383238323665633866333235383135653039633330336339393163356233333431323064
|
||||
33633130633936643265353332356664326562386565623765313064363431366365646162313464
|
||||
61306333663335616333316362393636383036313364363537393861353935376536343761386335
|
||||
32663364356336363139323138656238313366663062663235353838363864313732373830336565
|
||||
31643132633266346235323436353736373865633166646138333830653762366432353531393732
|
||||
65643061313261613633333236653864396634633931366432666161363730306563316266653464
|
||||
62366331613064633364373464613237383434343765653436323665363434383632363039303864
|
||||
65333934306531316435383635346130303637663636353039636361353132346231373062656631
|
||||
35616530643534396138356238626134666365316630666137616134393561366138386631636239
|
||||
39636538633164383863333431366463313566393131633463623665653264663865386663616632
|
||||
36636265313338396635303764633235376463643938663233393635613333623238636264323934
|
||||
36623561653764376134353534303166363833326136313161313531386239643263326663386432
|
||||
38353965663063393131666464353235316438333365303061303135383863376136653134396330
|
||||
63343230386332323232396136343030663563646366623137383334306161366232323964633562
|
||||
39626636366630363262643533323836333664376634313564613833343533656431353035316262
|
||||
33666137653762383937366237626130333437346165336466326539366566323834366161373265
|
||||
38323432653932666561
|
||||
|
||||
Reference in New Issue
Block a user