mvn clean package -DskipTests
api:
curl -v -X PUT http://localhost/rule/create -H "Content-Type: application/json" --data '{"sourceNetwork":"x.x.x.x/24","sourceLocation":"A","destinationNetwork":"x.x.x.x/20","destinationLocation":"B","requireSshTunnel":"true","requireRemoteForwarding":"false","tunnelBridgeHost":"x.x.x.x","tunnelBridgeUid":"xxx","tunnelBridgePwd":"xxx","tunnelBridgeSshPort":"xx","requireSocksProxy":"false","proxyHost":null,"proxyPort":null}'
req body:
{"sourceNetwork":"x.x.x.x/24","sourceLocation":"B","destinationNetwork":"x.x.x.x/24","destinationLocation":"B","requireSshTunnel":"true","requireRemoteForwarding":"false","tunnelBridgeHost":"x.x.x.x","tunnelBridgeUid":"xxx","tunnelBridgePwd":"xxx","tunnelBridgeSshPort":"xx","requireSocksProxy":"false","proxyHost":null,"proxyPort":null}
api:
curl -v -X PUT http://localhost/rule/create -H "Content-Type: application/json" --data '{"destinationNetwork":"x.x.x.x/24","destinationLocation":"A","sourceNetwork":"x.x.x.x/24","sourceLocation":"A","requireSshTunnel":"true","requireRemoteForwarding":"true","tunnelBridgeHost":"x.x.x.x","tunnelBridgeUid":"xxx","tunnelBridgePwd":"xxx","tunnelBridgeSshPort":"xx","requireSocksProxy":"true","proxyHost":"x.x.x.x","proxyPort":"xxxxx"}'
req body:
{"destinationNetwork":"x.x.x.x/24","destinationLocation":"A","sourceNetwork":"x.x.x.x/24","sourceLocation":"B","requireSshTunnel":"true","requireRemoteForwarding":"true","tunnelBridgeHost":"x.x.x.x","tunnelBridgeUid":"xxx","tunnelBridgePwd":"xxx","tunnelBridgeSshPort":"xx","requireSocksProxy":"true","proxyHost":"x.x.x.x","proxyPort":"xxxx"}
api:
curl -v -XDELETE http://localhost/rule/delete?id=2
req params:
id=2
api:
curl -v http://localhost/rule/list
response;
[{"destinationLocation":"A","destinationNetwork":"x.x.x.x/24","id":1,"requireRemoteForwarding":false,"requireSocksProxy":false,"requireSshTunnel":true,"sourceLocation":"B","sourceNetwork":"x.x.x.x/22","tunnelBridgeHost":"x.x.x.x","tunnelBridgePwd":"xxx","tunnelBridgeSshPort":xx,"tunnelBridgeUid":"xxx","valid":true}]
api:
curl -v http://localhost/rule/get?id=1
req params:
id=1
resp:
{"destinationLocation":"A","destinationNetwork":"x.x.x.x/24","id":1,"requireRemoteForwarding":false,"requireSocksProxy":false,"requireSshTunnel":true,"sourceLocation":"B","sourceNetwork":"x.x.x.x/22","tunnelBridgeHost":"x.x.x.x","tunnelBridgePwd":"xxx","tunnelBridgeSshPort":xx,"tunnelBridgeUid":"xxx","valid":true}
api:
curl http://localhost/rule/find?sourceIp=x.x.x.x&sourceLocation=A&destinationIp=x.x.x.x&destinationLocation=B
req params:
sourceIp=x.x.x.x&sourceLocation=A&destinationIp=x.x.x.x&destinationLocation=B
resp:
{"destinationLocation":"A","destinationNetwork":"x.x.x.x/24","id":1,"requireRemoteForwarding":false,"requireSocksProxy":false,"requireSshTunnel":true,"sourceLocation":"B","sourceNetwork":"x.x.x.x/22","tunnelBridgeHost":"x.x.x.x","tunnelBridgePwd":"xxx","tunnelBridgeSshPort":xx,"tunnelBridgeUid":"xxx","valid":true}
api:
curl -X PUT http://localhost/tunnel/forwarding/local/create?ruleId=x&destinationIp=x.x.x.x&destinationPort=xx
curl -X PUT http://localhost/tunnel/forwarding/remote/create?ruleId=x&servicePort=xxxx
api:
curl http://localhost/tunnel/list
resp:
[
{
"hasError": false,
"running": true,
"sshTunnel": {
"accessPort": xxxxx,
"bridgeHostIp": "x.x.x.x",
"bridgeHostSshPort": xx,
"bridgeHostSshPwd": "xxxx",
"bridgeHostSshUid": "xxxx",
"destinationIp": "x.x.x.x",
"destinationPort": xx,
"id": "1adaf4e0-9f6f-4539-b7b4-d9b0ad7aa630",
"ruleId": x
}
}
]
api:
curl -X DELETE http://localhost/tunnel/kill?tunnelId=1adaf4e0-9f6f-4539-b7b4-d9b0ad7aa630