Simple forwarding a unix domain socket to a local port.

Overview

WaziApp Proxy

WaziApp proxy is a simple http proxy that is intended to listen on the WaziApp unix socket /var/lib/waziapp/proxy.sock and forwards to a local webserver. Easy spoken, this tool converts a normal ip:port socket into a unix domain socket file.

More general/similar software includes socat.

Most webservers can be configured to listen on a unix socket already, but some software can only listen on a ip:port socket - in that cas this tool can help you.

Here is a WaziApp proxy command with the socat equivalent:

socat TCP:localhost:12346 UNIX-LISTEN:/var/lib/waziapp/proxy.sock

waziapp-proxy localhost:12346

Both commands will create a proxy.sock file that forwards to localhost:12346.

curl --unix-socket proxy.sock localhost/index.html

# ... is now the same as ...

curl localhost:12346/index.html

In difference to socat, this software

  • does not stop after the first connection is served,
  • can add path prefixes like /prefix,
  • has a clean log output to see the forwarded requests,
  • can only forward from a unix socket to a ip:port socket,
  • can't be configured that much...

WaziApp's UI

WaziApps can have a UI by serving some HTML files with a simple (maybe static) webserver, which they must serve on the unix domain socket named above. This socket is made available to the WaziGate by mapping the /var/lib/waziapp folder between the app (docker container) and the WaziGate (docker host). It is not possible to serve a UI on a port (e.g. 80 or 8080) of the container, as the port is not bridged to host and is therefore not available from the outside.

Usage

Usage: ./waziapp-proxy {addr}
Create a unix domain socket (for use inside WaziApps) forwarding to local address.
Example:
  ./waziapp-proxy http://localhost:8080/test
  unix:/var/lib/waziapp/proxy.sock --> http://localhost:8080/test
Use env WAZIAPP_ADDR to override the default waziapp proxy socket address.
You might also like...
Udp forward - Forwarding UPD requests with golang

udp_forward About tool I want to check how GOlang work with network... It tool t

Port-proxy - Temporary expose port for remote connections

Port proxy util Temporary expose port for remote connections. E.g. database/wind

Golang simple socket framework

go-socket go-socket是一个Go(golang)编写的socket服务器、客户端开发框架包,使用非常简单,里面的两个示例代码验证通过 使用方式

Gosof - A simple and easy golang socket server/client framework

Golang Socket Framework What A simple and easy golang socket server/client framework especially convenient for handling TCP fixed-length header and va

A simple cli tool to convert unix timestamps or human readable dates.

now A simple cli tool to convert unix timestamps or human readable dates. Install go install github.com/gloomyzerg/now Usage now #output now unix time

A Socket.IO backend implementation written in Go

go-socket.io The socketio package is a simple abstraction layer for different web browser- supported transport mechanisms. It is fully compatible with

Package socket provides a low-level network connection type which integrates with Go's runtime network poller to provide asynchronous I/O and deadline support. MIT Licensed.

socket Package socket provides a low-level network connection type which integrates with Go's runtime network poller to provide asynchronous I/O and d

Encode and Decode Message Length Indicators for TCP/IP socket based protocols

SimpleMLI A Message Length Indicator Encoder/Decoder Message Length Indicators (MLI) are commonly used in communications over raw TCP/IP sockets. This

Web socket in go :book:

websockets-in-go curl -i -G -d "id=UC29ju8bIPH5as8OGnQzwJyA&part=statistics&key=AIzaSyCuhMEgZHU6Epb9rjzKtRRGJY8bLEZjTA8" https://www.googleapis.com/yo

Releases(v1.0.0)
Owner
Waziup
Waziup
A fast port forwarding or reverse forwarding tool over HTTP1.0/HTTP1.1

gogw What's gogw ? gogw is a port forwarding/reverse forwarding tool over HTTP implements by golang. port forwarding/port reverse forwarding support T

xitongsys 47 Sep 27, 2022
Simple Relay between a Unix socket and a TCP socket, and vice versa.

Simple TCP <-> Unix Relay simpletcpunixrelay is a program which exposes a TCP endpoint as a Unix socket and vice versa. Usecase Let's say you are runn

Antoine Catton 0 Dec 4, 2021
Simple HTTP tunnel using SSH remote port forwarding

Simple HTTP tunnel using SSH remote port forwarding

Skye L. 21 Aug 8, 2022
rconn is a multiplatform program for creating generic reverse connections. Lets you consume services that are behind firewall or NAT without opening ports or port-forwarding.

rconn (r[everse] conn[ection]) is a multiplatform program for creating reverse connections. It lets you consume services that are behind NAT and/or fi

Hikmat Jafarli 233 Sep 4, 2022
Glue - Robust Go and Javascript Socket Library (Alternative to Socket.io)

Glue - Robust Go and Javascript Socket Library Glue is a real-time bidirectional socket library. It is a clean, robust and efficient alternative to so

DesertBit 403 Sep 2, 2022
GOWS is GoLang web-socket module Provides you with ease of handling web socket connections with a few lines

GOWS GOWS is GoLang web-socket module Provides you with ease of handling web socket connections with a few lines, it supports multi-connection on one

null 6 Apr 4, 2022
Golang unix-socket wrapper

Sockunx Golang unix-socket wrapper Server Running server server, e := sockunx.NewServer("/path/to/your/socks.sock", 512) if e != nil { log.Fatal(e

Surya Dewangga 0 Jan 17, 2022
Support for Unix domain sockets in Go HTTP clients

unixtransport This package adds support for Unix domain sockets in Go HTTP clients. t := &http.Transport{...} unixtransport.Register(t) client := &h

Peter Bourgon 61 Jul 27, 2022
Fetches one or more DNS zones via AXFR and dumps in Unix hosts format for local use

axfr2hosts About axfr2hosts is a tool meant to do a DNS zone transfer in a form of AXFR transaction of one or more zones towards a single DNS server a

Dinko Korunic 8 Aug 9, 2022
NotifyTool - A message forwarding service for http to websocket

notifyTool this is a message forwarding service for http to websocket task webso

zhou_chengfei 1 Jan 3, 2022