__ ______ ____ ___ ____ ____ ______ / / / / __ / __ __ ____ / __ / __ / ____/ / / / / / / / /_/ /_/ // __ / /_/ / /_/ / / / /_/ / /_/ / ____/ __// /_/ / _, _/ ____/ /___ ____/_____/_/ /____/__, /_/ |_/_/ ____/ /____/
Proyek ini banyak terinspirasi dari udp2raw
Terowongan yang Mengubah Lalu Lintas UDP menjadi Lalu Lintas gRPC/TCP Terenkripsi, membantu Anda Melewati FireWalls UDP (atau Lingkungan UDP yang Tidak Stabil) Asumsikan UDP Anda diblokir atau di-QOS atau tidak didukung dengan baik.
Tarik gambar dockerhub
buruh pelabuhan menarik mrjoshlab/udp2grpc:terbaru
Unduh rilis biner dari https://github.com/mrjosh/udp2grpc/releases
Asumsikan ip server Anda adalah 127.0.0.1 dan domain layanan Anda adalah example.com
# buat untuk alamat ip tertentuutg gen-certificates --dir ./cert --ip 127.0.0.1# buat untuk nama domain tertentuutg gen-certificates --dir ./cert --domain example.com# buat untuk domain dan iputg gen -sertifikat --dir ./cert --domain example.com --ip 127.0.0.1
utg genkey# keluaran# R1kvISImDxxRS1AnMDURSy0xVg9XFzhDCyszGSdAX04=
utg rekan -n Joshua-MBP -r 127.0.0.1:51820
keluaran
server side config: ------------------------------------------------------------- ... peers: - name: Joshua-MBP privatekey: LlRIVyEqVxtZORxdIgoiMTg6UxIsTCBYRC4/K0U4VjM= remote: 127.0.0.1:51820 available_from: - 0.0.0.0/0 ... client side config: ------------------------------------------------------------- client: privatekey: LlRIVyEqVxtZORxdIgoiMTg6UxIsTCBYRC4/K0U4VjM= remote: '{{ server ip address }}' ...
File konfigurasi sisi server
server: kunci pribadi: "{{ server-super-aman-kunci-pribadi }}" dengarkan: 0.0.0.0:52935 tls:tidak aman: falsecert_file: ./cert/server.crtkey_file: ./cert/server.key rekan: - nama: "PeerName"privatekey: "{{ super-aman-klien-private-key }}"remote: "127.0.0.1:51820"available_from: - 192.168.1.0/24
File konfigurasi sisi klien
klien: kunci pribadi: "{{ kunci-klien-pribadi-super-aman }}" dengarkan: 0.0.0.0:51820 jarak jauh: 127.0.0.1:52935 gigihKeepalive: 30 tls:tidak aman: falsecert_file: ./cert/server.crt
Asumsikan domain server Anda example.com dan Anda memiliki layanan yang mendengarkan pada port udp 51820. jika Anda ingin menjalankan server tanpa tls, gunakan flag --insecure
untuk klien dan server
# Jalankan di sisi server:utg server --config-file server.yaml# Jalankan di sisi klien:utg client --config-file client.yaml
versi: '3.7'layanan: # init-container # menghasilkan sertifikat untuk server dan klien sertifikat gen:gambar: mrjoshlab/udp2grpc:perintah terbaru: - "gen-certificates" # alamat ip server - "--ip" - "127.0.0.1" # direktori sertifikat - "--dir" - "/cert"volume: - "$PWD/sertifikat/:/sertifikat" # wadah server udp2grpc udp2grpc-server:gambar: mrjoshlab/udp2grpc:latestports: - Perintah "52935:52935/tcp": - "server" - "--config-file" - "/config/server.yaml" volume: - "$PWD/cert/:/cert" - "$PWD/server.yaml:/config/server.yaml"restart: kecuali-dihentikandepends_on: sertifikat-gen:kondisi: layanan_selesai_sukses # wadah klien udp2grpc udp2grpc-client:gambar: mrjoshlab/udp2grpc:latestports: - Perintah "51820:51820/udp": - "klien" - "--config-file" - "/config/client.yaml" volume: - "$PWD/cert/server.crt:/cert/server.crt" - "$PWD/client.yaml:/config/client.yaml"restart: kecuali-stoppeddepends_on: gen-sertifikat:kondisi: service_completed_successously
Terima kasih telah mempertimbangkan untuk berkontribusi pada proyek UDP2gRPC!
UDP2gRPC adalah perangkat lunak sumber terbuka yang dilisensikan di bawah lisensi MIT.