diff --git a/frontend/static/federation.json b/frontend/static/federation.json index 4193c0224..5ce3a4232 100644 --- a/frontend/static/federation.json +++ b/frontend/static/federation.json @@ -176,6 +176,47 @@ "mainnetNodesPubkeys": ["0385262f7e9e2eeeba1e7d6182a0efec98e79d01154b76189f3e0b88bcee279dd0"], "testnetNodesPubkeys": ["0355f8604df9ec4bee20a284f045f94e26cdd1fc5e15dee0716a5a5dfc7cd33b7c"] }, + "veneto": { + "longAlias": "BitcoinVeneto", + "shortAlias": "veneto", + "description": "Nati come gruppo di informatici con esperienze diverse, scoperti i bitcoin a fine 2013 ci siamo entusiasmati e dedicati al bitcoin, alla blockchain ed alle criptovalute in generale, in particolare aiutando, informando e seguendo nel percorso di alfabetizzazione nel mondo della valuta digitale tutte le Aziende ed i privati che negli ultimi anni ci hanno dato la loro fiducia.", + "motto": "Le Tue Guide NON Virtuali su Bitcoin, Blockchain e Crypto. In Veneto.", + "color": "#000D27", + "established": "2024-02-24", + "contact": { + "email": "bitcoinveneto@proton.me", + "website": "https://bitcoinvenetocenter.it", + "pgp": "/static/federation/pgp/498E269DDDF63969A215FED32A2C489EAF23D549.asc", + "fingerprint": "498E269DDDF63969A215FED32A2C489EAF23D549" + }, + "badges": { + "isFounder": false, + "donatesToDevFund": 30, + "hasGoodOpSec": true, + "robotsLove": false, + "hasLargeLimits": true + }, + "policies": { + "Privacy Policy 1": "Evidence in Disputes: In the event of a dispute, users will be asked to provide transaction-related evidence. This could include transaction IDs, screenshots of payment confirmations, or other pertinent transaction records. Personal information or unrelated transaction details should be redacted to maintain privacy.", + "Privacy Policy 2": "Short-term Storage: Sensitive information related to disputes will be stored only for the duration necessary to resolve the issue. Once resolved, the data will be permanently deleted. For ease of use e-mail communications are permitted, but E2EE and decentralized platforms such as NOSTR, SIMPLEX and MATRIX are advised.", + "Data Policy 1": "No Third-Party Sharing: Under no circumstances will user information be shared with third parties.", + "Data Policy 2": "Short-term Storage: Any log needed to operate the coordinator will be cleared after 7 days, unless strictly needed to process disputes. To ensure utmost privacy, the coordinator will be accessible only through TOR.", + "Rule 1:": "Do not share personal information through the chat, unless strictly needed for completing the trade.", + "Rule 2:": "Any dispute can be fist address through our public chats in the different social networks but never will be started using private chats." + }, + "mainnet": { + "onion": "http://mmhaqzuirth5rx7gl24d4773lknltjhik57k7ahec5iefktezv4b3uid.onion", + "clearnet": "", + "i2p": "" + }, + "testnet": { + "onion": "http://wsjyhbashc4zrrex6vijpryujggbka5plry2o62dxqoz3pxinblnj4ad.onion", + "clearnet": "", + "i2p": "" + }, + "mainnetNodesPubkeys": ["02c5b5972b05fba2cd2c2d9269a47bc478f73fae0f248a85cb1e5af60a07c1919d"], + "testnetNodesPubkeys": ["032b698c8143f293d138c0926594f11d119194ddedb513f63a944d14c094d0e54a"] + }, "local": { "longAlias": "Local Dev", "shortAlias": "local", diff --git a/frontend/static/federation/avatars/veneto.small.webp b/frontend/static/federation/avatars/veneto.small.webp new file mode 100644 index 000000000..44ee911cc Binary files /dev/null and b/frontend/static/federation/avatars/veneto.small.webp differ diff --git a/frontend/static/federation/avatars/veneto.webp b/frontend/static/federation/avatars/veneto.webp new file mode 100644 index 000000000..475a6373c Binary files /dev/null and b/frontend/static/federation/avatars/veneto.webp differ diff --git a/frontend/static/federation/pgp/498E269DDDF63969A215FED32A2C489EAF23D549.asc b/frontend/static/federation/pgp/498E269DDDF63969A215FED32A2C489EAF23D549.asc new file mode 100644 index 000000000..1607ad9cf --- /dev/null +++ b/frontend/static/federation/pgp/498E269DDDF63969A215FED32A2C489EAF23D549.asc @@ -0,0 +1,10 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Comment: 498E 269D DDF6 3969 A215 FED3 2A2C 489E AF23 D549 + +xjMEZcaRuxYJKwYBBAHaRw8BAQdAQmYhwsAC+4DcyCCUkbDK1ibB85Pa3C5mMziF +yZdKFmLOOARlxpG7EgorBgEEAZdVAQUBAQdAQSqqJzxqPXQ92M4X/T7y0L8QYvi2 +9e7S7o4LD28FzgwDAQgHwn4EGBYKACYWIQRJjiad3fY5aaIV/tMqLEieryPVSQUC +ZcaRuwIbDAUJBaRf9QAKCRAqLEieryPVSavtAP96luNWpsOevaFz+VQMjd2LcQqa +KQ5+Q3vInF1cq02YUQD8DqAf+r7qnnZIZye/9Ra/fN6qMKFCdj55iBGGZF2wYw0= +=5JHR +-----END PGP PUBLIC KEY BLOCK----- diff --git a/nodeapp/coordinators/veneto/locations.conf b/nodeapp/coordinators/veneto/locations.conf new file mode 100644 index 000000000..366dee58c --- /dev/null +++ b/nodeapp/coordinators/veneto/locations.conf @@ -0,0 +1,59 @@ +# BitcoinVeneto Mainnet Locations +location /mainnet/veneto/static/assets/avatars/ { + proxy_pass http://mainnet_veneto/static/assets/avatars/; +} + +location /mainnet/veneto/api/ { + # if ($request_method = 'OPTIONS') { + # add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS'; + # add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range'; + # add_header 'Access-Control-Max-Age' 1728000; + # add_header 'Content-Type' 'text/plain; charset=utf-8'; + # add_header 'Content-Length' 0; + # return 204; + # } + # if ($request_method = 'POST') { + # add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS'; + # add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range'; + # add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range'; + # } + # if ($request_method = 'GET') { + # add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS'; + # add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range'; + # add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range'; + # } + proxy_pass http://mainnet_veneto/api/; + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "Upgrade"; + proxy_set_header Host $host; +} + +location /mainnet/veneto/ws/ { + proxy_pass http://mainnet_veneto/ws/; + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "Upgrade"; + proxy_set_header Host $host; +} + +# BitcoinVeneto Coordinator Testnet Locations +location /test/veneto/static/assets/avatars/ { + proxy_pass http://testnet_veneto/static/assets/avatars/; +} + +location /testnet/veneto/api/ { + proxy_pass http://testnet_veneto/api/; + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "Upgrade"; + proxy_set_header Host $host; +} + +location /testnet/veneto/ws/ { + proxy_pass http://testnet_veneto/ws/; + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "Upgrade"; + proxy_set_header Host $host; +} \ No newline at end of file diff --git a/nodeapp/coordinators/veneto/upstreams.conf b/nodeapp/coordinators/veneto/upstreams.conf new file mode 100644 index 000000000..22fbd8e1c --- /dev/null +++ b/nodeapp/coordinators/veneto/upstreams.conf @@ -0,0 +1,9 @@ +# BitcoinVeneto Coordinator Mainnet +upstream mainnet_veneto { + server localhost:105; +} + +# BitcoinVeneto Coordinator Testnet +upstream testnet_veneto { + server localhost:1005; +} \ No newline at end of file diff --git a/nodeapp/nginx.conf b/nodeapp/nginx.conf index d5e388813..6b0eedd52 100644 --- a/nodeapp/nginx.conf +++ b/nodeapp/nginx.conf @@ -34,8 +34,10 @@ http { include /etc/nginx/conf.d/temple/upstreams.conf; # Satstralia include /etc/nginx/conf.d/satstralia/upstreams.conf; - #TheBigLake + # TheBigLake include /etc/nginx/conf.d/lake/upstreams.conf; + # BitcoinVeneto + include /etc/nginx/conf.d/veneto/upstreams.conf; server { @@ -76,6 +78,8 @@ http { include /etc/nginx/conf.d/satstralia/locations.conf; # TheBigLake include /etc/nginx/conf.d/lake/locations.conf; + # BitcoinVeneto + include /etc/nginx/conf.d/veneto/locations.conf; # do not log healtchecks made against "/selfhosted" location /selfhosted { diff --git a/nodeapp/robosats-client.sh b/nodeapp/robosats-client.sh index 20f1ce693..f3d7376b4 100644 --- a/nodeapp/robosats-client.sh +++ b/nodeapp/robosats-client.sh @@ -56,6 +56,18 @@ testnet_lake_port=1004 mainnet_lake_socat="socat tcp4-LISTEN:${mainnet_lake_port},reuseaddr,fork,keepalive,bind=127.0.0.1 SOCKS4A:${TOR_PROXY_IP:-127.0.0.1}:${mainnet_lake_onion}:80,socksport=${TOR_PROXY_PORT:-9050}" testnet_lake_socat="socat tcp4-LISTEN:${testnet_lake_port},reuseaddr,fork,keepalive,bind=127.0.0.1 SOCKS4A:${TOR_PROXY_IP:-127.0.0.1}:${testnet_lake_onion}:80,socksport=${TOR_PROXY_PORT:-9050}" +################################ +# BitcoinVeneto +# Mainnet +mainnet_veneto_onion=mmhaqzuirth5rx7gl24d4773lknltjhik57k7ahec5iefktezv4b3uid.onion +mainnet_veneto_port=105 +# Testnet +testnet_veneto_onion=wsjyhbashc4zrrex6vijpryujggbka5plry2o62dxqoz3pxinblnj4ad.onion +testnet_veneto_port=1005 +# socat cmd +mainnet_veneto_socat="socat tcp4-LISTEN:${mainnet_veneto_port},reuseaddr,fork,keepalive,bind=127.0.0.1 SOCKS4A:${TOR_PROXY_IP:-127.0.0.1}:${mainnet_veneto_onion}:80,socksport=${TOR_PROXY_PORT:-9050}" +testnet_veneto_socat="socat tcp4-LISTEN:${testnet_veneto_port},reuseaddr,fork,keepalive,bind=127.0.0.1 SOCKS4A:${TOR_PROXY_IP:-127.0.0.1}:${testnet_veneto_onion}:80,socksport=${TOR_PROXY_PORT:-9050}" + # RUN! -$mainnet_exp_socat & $testnet_exp_socat & $mainnet_temple_socat & $testnet_temple_socat & $mainnet_satstralia_socat & $testnet_satstralia_socat& $mainnet_lake_socat & $testnet_lake_socat & nginx \ No newline at end of file +$mainnet_exp_socat & $testnet_exp_socat & $mainnet_temple_socat & $testnet_temple_socat & $mainnet_satstralia_socat & $testnet_satstralia_socat & $mainnet_lake_socat & $testnet_lake_socat & $mainnet_veneto_socat & $testnet_veneto_socat & nginx \ No newline at end of file