It works!
This commit is contained in:
commit
ab0521b401
23
broker-config/ca.crt
Normal file
23
broker-config/ca.crt
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIID6zCCAtOgAwIBAgIUQJye5MbZVMpOpu87TmmlN/KOBj0wDQYJKoZIhvcNAQEL
|
||||||
|
BQAwgYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJOWTERMA8GA1UEBwwITmV3IFlv
|
||||||
|
cmsxFTATBgNVBAoMDEV4YW1wbGUgSW5jLjEcMBoGA1UEAwwTY2EubXF0dC5leGFt
|
||||||
|
cGxlLmNvbTEgMB4GCSqGSIb3DQEJARYRYWRtaW5AZXhhbXBsZS5jb20wHhcNMjAx
|
||||||
|
MDA2MTA1OTE4WhcNMzAxMDA0MTA1OTE4WjCBhDELMAkGA1UEBhMCVVMxCzAJBgNV
|
||||||
|
BAgMAk5ZMREwDwYDVQQHDAhOZXcgWW9yazEVMBMGA1UECgwMRXhhbXBsZSBJbmMu
|
||||||
|
MRwwGgYDVQQDDBNjYS5tcXR0LmV4YW1wbGUuY29tMSAwHgYJKoZIhvcNAQkBFhFh
|
||||||
|
ZG1pbkBleGFtcGxlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB
|
||||||
|
ALVndltaj3SX1zuJB0F5woIMUZCHopkgiO027/qE10IgM6SN4lFhR7wR0B/9PXrf
|
||||||
|
zn1xTC63w9xd3GbnlJvcWhWbh/m1t2Qx2mIvOmoELY8wlY6/V6NzjSgju7mZi0u6
|
||||||
|
aitU+LXINNuGS+JhVpc54QQ8M9o0jKlnNGnEmPjv6uhbNXx3f8lw3eqSr1ZqmpGd
|
||||||
|
UQVYKsNYBVzSqsnh/sn/KnGYn/nmpsKRWeLhoslJ3zDjaM/Y4NYol11nWFIPYCk5
|
||||||
|
7rzzxES/WdWLLnZ2W59YCT54YOGFqXE7oYgReD+Og2YwnGVQQpDcvb2HyIZL/2pa
|
||||||
|
oC6avMo/eC8HbSxwUKCnj1cCAwEAAaNTMFEwHQYDVR0OBBYEFEC8a9l0rpIdUqCS
|
||||||
|
i4NJwXlqUoLeMB8GA1UdIwQYMBaAFEC8a9l0rpIdUqCSi4NJwXlqUoLeMA8GA1Ud
|
||||||
|
EwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAGzxJWZdVozskr5yie2uetpL
|
||||||
|
aAReCaHEdWudRN3wVW1Dpm2sE23x4VFiJ+Uow9k21GgtGUsAIFqRgb3/QO+ipODC
|
||||||
|
GRwZmVopkuOaHfCz+tO8xqjvGHCidhhhNFdR9uVkWHoPKsQsvap0SSk12KMtFBRo
|
||||||
|
3rmeQwPP4qEPFEwc2U0hCUMsIUvMSt3KrA/j+aMRzOXU7QIMFbcYEF1IaGJz1RMh
|
||||||
|
h1VCXaUlL2liVTWU4XgudB8rMOuETec7un9hzoBVOWHxXdRrGPaoN4+zWiLRCDXO
|
||||||
|
6wapOhkmTOXuZY/NcMMwTmdJKTEQBD6XIQamv91Ne2bT89LHpcp1LjbaCz+UAxg=
|
||||||
|
-----END CERTIFICATE-----
|
9
broker-config/mosquitto.conf
Normal file
9
broker-config/mosquitto.conf
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
listener 8883
|
||||||
|
connection_messages true
|
||||||
|
log_type all
|
||||||
|
websockets_log_level 9
|
||||||
|
cafile /mosquitto/config/ca.crt
|
||||||
|
keyfile /mosquitto/config/mqtt.example.com.key
|
||||||
|
certfile /mosquitto/config/mqtt.example.com.crt
|
||||||
|
require_certificate true
|
||||||
|
use_identity_as_username true
|
22
broker-config/mqtt.example.com.crt
Normal file
22
broker-config/mqtt.example.com.crt
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIDjjCCAnYCFFfe134gzLKm3ieNbeoxCvOhwsGwMA0GCSqGSIb3DQEBCwUAMIGE
|
||||||
|
MQswCQYDVQQGEwJVUzELMAkGA1UECAwCTlkxETAPBgNVBAcMCE5ldyBZb3JrMRUw
|
||||||
|
EwYDVQQKDAxFeGFtcGxlIEluYy4xHDAaBgNVBAMME2NhLm1xdHQuZXhhbXBsZS5j
|
||||||
|
b20xIDAeBgkqhkiG9w0BCQEWEWFkbWluQGV4YW1wbGUuY29tMB4XDTIwMTAwNjEx
|
||||||
|
MDE1M1oXDTMwMTAwNDExMDE1M1owgYExCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJO
|
||||||
|
WTERMA8GA1UEBwwITmV3IFlvcmsxFTATBgNVBAoMDEV4YW1wbGUgSW5jLjEZMBcG
|
||||||
|
A1UEAwwQbXF0dC5leGFtcGxlLmNvbTEgMB4GCSqGSIb3DQEJARYRYWRtaW5AZXhh
|
||||||
|
bXBsZS5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC8/EqoeDGr
|
||||||
|
42rM2rkEhV8Qrv8aihCKurDcE+e8OXM5GTSP+1NomatGXLWAfF6PY5N8sA3NxlRG
|
||||||
|
gnPhpX9O+NrCMrSHZIfBoU+6GwcPBrn1zD9Le1kRDYZhOQ4Ofj5atxUwePqZo2rx
|
||||||
|
F+BK7D1+GEi1nFiVRmPOVNGI3J96i0KlC4EsVG9aNPwDRpnRB/rP/dersgpu4oFV
|
||||||
|
xUKx2n09vEEKVBwaT6oYilwoM8mw5Q0YBKIolQGIErYj9oFqimXH1e9Wit+551tr
|
||||||
|
T8+ipDhJW8a/CdlbV/8HFLg62542X5sXusTePhPUgU6StRxENf/2Q2ppVQAWgnQo
|
||||||
|
EkWKrVNNJNdbAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAAOowXrxWHpjtrfdkpwG
|
||||||
|
gG4HJD79gkIHYjnXYKaH/RrmlEwdDnjG6OQHsXc9eKAJ1WHaJBUz1fwNCFz3E0Ry
|
||||||
|
cUTATZIBBXlqxZhbZXdBjQslEIvgjlkEcO29iJ5N3aTH92iuGrXgYYZl+c1d0RGo
|
||||||
|
1bXkj7G5AFRGBFGY7PPIjtMmTYE7DB4bZ7HcxYbmXC7IqLXQoUN2A2ITuAdUcK2T
|
||||||
|
5pMZzkQGpUiHFIR3NUiDf2jYx7YTTt16I73TVlXHtb0qzo5oNLZKeogrKWlpb6uy
|
||||||
|
71wRdbgTtRpbdMDu+D65G5aZYVN36a223K7xiR5b75V6PeFgPQXhkLSJjCBBapct
|
||||||
|
mEo=
|
||||||
|
-----END CERTIFICATE-----
|
27
broker-config/mqtt.example.com.key
Normal file
27
broker-config/mqtt.example.com.key
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
-----BEGIN RSA PRIVATE KEY-----
|
||||||
|
MIIEpAIBAAKCAQEAvPxKqHgxq+NqzNq5BIVfEK7/GooQirqw3BPnvDlzORk0j/tT
|
||||||
|
aJmrRly1gHxej2OTfLANzcZURoJz4aV/TvjawjK0h2SHwaFPuhsHDwa59cw/S3tZ
|
||||||
|
EQ2GYTkODn4+WrcVMHj6maNq8RfgSuw9fhhItZxYlUZjzlTRiNyfeotCpQuBLFRv
|
||||||
|
WjT8A0aZ0Qf6z/3Xq7IKbuKBVcVCsdp9PbxBClQcGk+qGIpcKDPJsOUNGASiKJUB
|
||||||
|
iBK2I/aBaoplx9XvVorfuedba0/PoqQ4SVvGvwnZW1f/BxS4OtueNl+bF7rE3j4T
|
||||||
|
1IFOkrUcRDX/9kNqaVUAFoJ0KBJFiq1TTSTXWwIDAQABAoIBAGm/wwcCOsk0OE7p
|
||||||
|
FR6ygr+TLKxtFVSLouuDN+jbPN52fDMVL1cYpf55YhbDgSY7Ugwzd4XttLq/xJg/
|
||||||
|
Qz2tgruoI9yfJFf1K+e3t/twiB5CbCiQnQYty0Qb6QGzIrEgQXseNxxBlVXTRm6m
|
||||||
|
QsKMVCNLmUXuXWrXi2hKC/NGecRf9WcYQeh3FjpWRPqXxK+vw2gD+ls8vG90BcTa
|
||||||
|
/bByZZCnbMEEwL6TSoJa7nVm61lOtSltmODJYzpnsbvGBy2DaF0lhiId7Gl5G/8K
|
||||||
|
QqeDp7m9QfrhgE6iRWzJJs4yer2D3y9n4b47o2YGC6L9sl+/sbCgPsV1fl/jMqK6
|
||||||
|
sCEo5AECgYEA4ha5aF1yBo8HhUjA4LtUyRMSnaTNlvzEBR0JVB3goMu1o2O3JrPG
|
||||||
|
/z3sdG9SVzsytzaUXEi93KZ7V14aJk8NziVPWVkUEelbqRMLzlyE+30Xky0uDrow
|
||||||
|
4mb4SFCMjKLeJg20XK00SFKMd5Go03VeDQkClW5M5B4dimXVkIO4eukCgYEA1fzw
|
||||||
|
EwuNzViuxx+IVeViHEe0oUpeBUrREIHS7hIefO2pqK6nsPDo1A1P7X287NBaFP8p
|
||||||
|
u3xMx5fDrguaOU3RW/BajXklZEMkz37MOjhMop6d3T5yWWcCE2CE7hVz1O9Jbqbw
|
||||||
|
Wmfgq8SPgDj26NXhONm38xschEYJJzihkeTyzaMCgYEAw0rhyNa/Ag9WbbkUcose
|
||||||
|
h7mj4OxUclHQeKJGRpSwTfTo50PhFts/z4aL01+9foAyJLROnxBugESGUkeEywaK
|
||||||
|
ZEEyM3mQrpAmjvtWvWCJtjqtvIHQQQRv6YEMglqhrXGZ9sDrxQoQGVDE6Ru2+0Fs
|
||||||
|
hlH8G1v1qy6gUcX5HiXJmtECgYAz9VOxvCd1Seg+T0jCWo0lAsA4PZ9wt4bl9C/s
|
||||||
|
QJgIi4ibfbUYAJb4DjdvGg3Kjpig6ogOjxLxj8citox/B4cjRMwn99d9bdQ9UbNz
|
||||||
|
G4J4Jf184BHR5XIalGASk0Dp3iQ9aumHehuSeYrCfpJtXKlwLWU98UJOV9cXH+gT
|
||||||
|
Tb0q8wKBgQCh61d7FfhtUbKQbd8lQMrxXUDDd8tP9NkmZJ0y1Qg10s5Pl80wZo6H
|
||||||
|
3PS0ivyxDWBygcxrHOFV26kfMiBrPNtA3HY5ZWFAq1JZ7Yajseg83KSbli6V/+dE
|
||||||
|
BekdMwQk9MrLELEc1IgqgZU46yrRcKB+6Zh5MJM3bH3qzWpVCXIKCw==
|
||||||
|
-----END RSA PRIVATE KEY-----
|
43
docker-compose.yml
Normal file
43
docker-compose.yml
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
---
|
||||||
|
version: '3'
|
||||||
|
|
||||||
|
services:
|
||||||
|
tor:
|
||||||
|
build:
|
||||||
|
context: ./tor
|
||||||
|
args:
|
||||||
|
- SVC_PORT=1883
|
||||||
|
- SVC_HOST=mqtt.example.com
|
||||||
|
networks:
|
||||||
|
- tor_net
|
||||||
|
restart: always
|
||||||
|
|
||||||
|
mqtt.example.com:
|
||||||
|
image: eclipse-mosquitto
|
||||||
|
restart: always
|
||||||
|
volumes:
|
||||||
|
- broker_data:/mosquitto/data
|
||||||
|
- ./broker-config:/mosquitto/config
|
||||||
|
ports:
|
||||||
|
- 1883
|
||||||
|
networks:
|
||||||
|
- tor_net
|
||||||
|
- broker_net
|
||||||
|
|
||||||
|
subscriber:
|
||||||
|
build: './subscriber'
|
||||||
|
volumes:
|
||||||
|
- sub_data:/data
|
||||||
|
- ./sub-config:/etc/torch
|
||||||
|
ports:
|
||||||
|
- 3434
|
||||||
|
networks:
|
||||||
|
- broker_net
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
broker_data:
|
||||||
|
sub_data:
|
||||||
|
|
||||||
|
networks:
|
||||||
|
tor_net:
|
||||||
|
broker_net:
|
23
sub-config/ca.crt
Normal file
23
sub-config/ca.crt
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIID6zCCAtOgAwIBAgIUQJye5MbZVMpOpu87TmmlN/KOBj0wDQYJKoZIhvcNAQEL
|
||||||
|
BQAwgYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJOWTERMA8GA1UEBwwITmV3IFlv
|
||||||
|
cmsxFTATBgNVBAoMDEV4YW1wbGUgSW5jLjEcMBoGA1UEAwwTY2EubXF0dC5leGFt
|
||||||
|
cGxlLmNvbTEgMB4GCSqGSIb3DQEJARYRYWRtaW5AZXhhbXBsZS5jb20wHhcNMjAx
|
||||||
|
MDA2MTA1OTE4WhcNMzAxMDA0MTA1OTE4WjCBhDELMAkGA1UEBhMCVVMxCzAJBgNV
|
||||||
|
BAgMAk5ZMREwDwYDVQQHDAhOZXcgWW9yazEVMBMGA1UECgwMRXhhbXBsZSBJbmMu
|
||||||
|
MRwwGgYDVQQDDBNjYS5tcXR0LmV4YW1wbGUuY29tMSAwHgYJKoZIhvcNAQkBFhFh
|
||||||
|
ZG1pbkBleGFtcGxlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB
|
||||||
|
ALVndltaj3SX1zuJB0F5woIMUZCHopkgiO027/qE10IgM6SN4lFhR7wR0B/9PXrf
|
||||||
|
zn1xTC63w9xd3GbnlJvcWhWbh/m1t2Qx2mIvOmoELY8wlY6/V6NzjSgju7mZi0u6
|
||||||
|
aitU+LXINNuGS+JhVpc54QQ8M9o0jKlnNGnEmPjv6uhbNXx3f8lw3eqSr1ZqmpGd
|
||||||
|
UQVYKsNYBVzSqsnh/sn/KnGYn/nmpsKRWeLhoslJ3zDjaM/Y4NYol11nWFIPYCk5
|
||||||
|
7rzzxES/WdWLLnZ2W59YCT54YOGFqXE7oYgReD+Og2YwnGVQQpDcvb2HyIZL/2pa
|
||||||
|
oC6avMo/eC8HbSxwUKCnj1cCAwEAAaNTMFEwHQYDVR0OBBYEFEC8a9l0rpIdUqCS
|
||||||
|
i4NJwXlqUoLeMB8GA1UdIwQYMBaAFEC8a9l0rpIdUqCSi4NJwXlqUoLeMA8GA1Ud
|
||||||
|
EwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAGzxJWZdVozskr5yie2uetpL
|
||||||
|
aAReCaHEdWudRN3wVW1Dpm2sE23x4VFiJ+Uow9k21GgtGUsAIFqRgb3/QO+ipODC
|
||||||
|
GRwZmVopkuOaHfCz+tO8xqjvGHCidhhhNFdR9uVkWHoPKsQsvap0SSk12KMtFBRo
|
||||||
|
3rmeQwPP4qEPFEwc2U0hCUMsIUvMSt3KrA/j+aMRzOXU7QIMFbcYEF1IaGJz1RMh
|
||||||
|
h1VCXaUlL2liVTWU4XgudB8rMOuETec7un9hzoBVOWHxXdRrGPaoN4+zWiLRCDXO
|
||||||
|
6wapOhkmTOXuZY/NcMMwTmdJKTEQBD6XIQamv91Ne2bT89LHpcp1LjbaCz+UAxg=
|
||||||
|
-----END CERTIFICATE-----
|
21
sub-config/subscriber.crt
Normal file
21
sub-config/subscriber.crt
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIDhzCCAm8CFFfe134gzLKm3ieNbeoxCvOhwsGyMA0GCSqGSIb3DQEBCwUAMIGE
|
||||||
|
MQswCQYDVQQGEwJVUzELMAkGA1UECAwCTlkxETAPBgNVBAcMCE5ldyBZb3JrMRUw
|
||||||
|
EwYDVQQKDAxFeGFtcGxlIEluYy4xHDAaBgNVBAMME2NhLm1xdHQuZXhhbXBsZS5j
|
||||||
|
b20xIDAeBgkqhkiG9w0BCQEWEWFkbWluQGV4YW1wbGUuY29tMB4XDTIwMTAwNjEx
|
||||||
|
MDYwM1oXDTMwMTAwNDExMDYwM1owezELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAk5Z
|
||||||
|
MREwDwYDVQQHDAhOZXcgWW9yazEVMBMGA1UECgwMRXhhbXBsZSBJbmMuMRMwEQYD
|
||||||
|
VQQDDApzdWJzY3JpYmVyMSAwHgYJKoZIhvcNAQkBFhFhZG1pbkBleGFtcGxlLmNv
|
||||||
|
bTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPuE9XvVpmvnFAj2ZCMv
|
||||||
|
UWpE4yea69f4XtZ64Bw+Kp2B9NF+1lU7OTpnP+1Xubx7GX2Fy4E7w+jKwrC4+R+Z
|
||||||
|
qtZh9UCLj7IEin6NoaKgLSXd75A9UFZbI9Vug7VSxm581J8qDzVNnflTwRBPvnC6
|
||||||
|
1B1noXZRZGUbVjtC7ciIJ33bHktlTBbVvZwdZIB0upXe3iDeXE8I1izU+FB0EbCr
|
||||||
|
gmneo3mPW/5IPDGGJy1YI9HNa/h3gnZ5uomQ2/rhUB46Zr2+9/bGQHknIBMISWx6
|
||||||
|
UR0FlkdCu4ezm377IjBATBXaEoqoWfyRSuLDgkAAiHbtp+IQpIL+soOczMjUhvhg
|
||||||
|
FyECAwEAATANBgkqhkiG9w0BAQsFAAOCAQEACFy4ioFB5jeW+vMrTGfcwbq0qFW4
|
||||||
|
9zupWVKG4H+l4N/bjiwTpKy8oP7STBS94BbA6fYE8Y+Jcibas1zX78HFIk/A9Dh1
|
||||||
|
q9lysu7Biv4JbaXVPHxy9SzadUPym3bYAJtVRWsC1N2siI1NlalttDU1y+RnllUL
|
||||||
|
jixHf2/EghYgJydN7yoTWD7rbGD2GB4ADhohhMx5NL3h/7wge4qhvBIVEoa093hV
|
||||||
|
0rzctNrP0bDsZIei3RV6mat6teR4MUK7PQSmiwTPoFmbNB+T+sl/hT22B7utooQT
|
||||||
|
h5H39zpLiorQEUMF7qJff/7+KXs7YUGUFyAQyGnxhMhAQ7zWrkrR50sFwg==
|
||||||
|
-----END CERTIFICATE-----
|
27
sub-config/subscriber.key
Normal file
27
sub-config/subscriber.key
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
-----BEGIN RSA PRIVATE KEY-----
|
||||||
|
MIIEpQIBAAKCAQEA+4T1e9Wma+cUCPZkIy9RakTjJ5rr1/he1nrgHD4qnYH00X7W
|
||||||
|
VTs5Omc/7Ve5vHsZfYXLgTvD6MrCsLj5H5mq1mH1QIuPsgSKfo2hoqAtJd3vkD1Q
|
||||||
|
Vlsj1W6DtVLGbnzUnyoPNU2d+VPBEE++cLrUHWehdlFkZRtWO0LtyIgnfdseS2VM
|
||||||
|
FtW9nB1kgHS6ld7eIN5cTwjWLNT4UHQRsKuCad6jeY9b/kg8MYYnLVgj0c1r+HeC
|
||||||
|
dnm6iZDb+uFQHjpmvb739sZAeScgEwhJbHpRHQWWR0K7h7ObfvsiMEBMFdoSiqhZ
|
||||||
|
/JFK4sOCQACIdu2n4hCkgv6yg5zMyNSG+GAXIQIDAQABAoIBAQDHKe6VQ4XHlbBo
|
||||||
|
tGpw7gwjAS96chNk7fhzD9OcqaFnHbv1k+E2lnHnjFCzqS6bUELMAYE28VNdaAko
|
||||||
|
lSA35J/BqMnidWCwzyW3toESXJHDlW0Yo2SVLRA/9oX2s/gLD2/yJQTr6W05PBf5
|
||||||
|
yZt8eoRyUFgrb6H26eGrhYDytNXIsoL5Si7Q3/gc11jW5HLOqUhSE2oFQ9+xqq7B
|
||||||
|
HvD6a6nTF8upM2sTkyy9+n5RRuaqRfNTZmVzjNQOnnG+QyRyI0pdhipO77/+2JSl
|
||||||
|
8Db4F195wbZlxGsW7NwkJGCM0O9Fyaa2z7J/Je1KTuoTu+fCUhLwiojVLsQq10kO
|
||||||
|
ZZWm65+dAoGBAP6mi6K9H9LTzZ93XIOfmK9Q7S5SyOKQWLnSHMNyIsrtnZBWATEO
|
||||||
|
u16FNSOzdieOjY0rKptChUiqaTMavUEmk6aRLfkUqbrJygc8M+RH6xnb0Z1VXtM5
|
||||||
|
bEvPgYu0mm550AvEFsnu77fr194GAIhabdvzMz7b7EvDzPO86iXwGRWPAoGBAPza
|
||||||
|
Km38aH+Ccpk2084H47v783fUXyS2ScbtccVZxqtn0sxEFVnwESYQjz9QovTNlqyN
|
||||||
|
Y6t6mr1M8nM8MmPwBXFa3D654xtew8zpiA/MvCDbqlXB87BeTSMJWPAERVw2XqAm
|
||||||
|
wYFg0yJXlRRgQDiiCZCxsVzppSwct/Aa6euGXpBPAoGBAPhSKDCWBIZujEFJACpK
|
||||||
|
Y3XykJdvmv10jVEHF41vq4X/mHq7o4XXO9e8Rkl+I2YHmPlkcrPcdmSZ6OQw2wTB
|
||||||
|
PZJcWFxgTfMb+6p6ho/Bof0hYpLuQP3xLS3wN/+oKkA5ASu4GBDqs1DC50pWyAYv
|
||||||
|
SJoH2p0dkJuBYEb+ncZJD+z5AoGAD6UUEQAYGyOgIZjB3DKixaPeOaDbTjM1N2jD
|
||||||
|
rFlUsJBY+6iOxaTT+s31fw5nNsxtsTmCXD7WyjWznquv1n0oaQ4dKIhp4+ymIsyk
|
||||||
|
TY32afYNgQbiJByBm1Rdu2QYQo9epXwgZvftuGdA4yTddGOaQeist7oBLUyNmP6h
|
||||||
|
UKBcw4MCgYEArWhvqZUvklgmTJi8bSyJaCuZrd7l4HxoajceQ7ujyl/N2zX+HAio
|
||||||
|
8uw46NUvsiyIk3OCI/59G5BrBtOIYq5KUTNhDdz6q0HMz1MSDRCH5Zt0Cokam+jX
|
||||||
|
j7QGOQnhTHkGv8Mabo6gmLPifPuYboFzivFGMJH8ur+38YOyGxbwvqI=
|
||||||
|
-----END RSA PRIVATE KEY-----
|
21
sub-config/torch-sub.conf
Normal file
21
sub-config/torch-sub.conf
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
##############################################################################
|
||||||
|
# Sample torch-sub.conf file
|
||||||
|
##############################################################################
|
||||||
|
|
||||||
|
[mqtt]
|
||||||
|
#Topic is required
|
||||||
|
BrokerHost=mqtt.example.com
|
||||||
|
BrokerPort=8883
|
||||||
|
Topic=torch/+/wake
|
||||||
|
RequireCertificate=True
|
||||||
|
CaFile=ca.crt
|
||||||
|
KeyFile=subscriber.key
|
||||||
|
CertFile=subscriber.crt
|
||||||
|
|
||||||
|
[database]
|
||||||
|
#Filename is optional and defaults to 'clients.json'
|
||||||
|
Filename=torch_clients.json
|
||||||
|
|
||||||
|
[web]
|
||||||
|
#Port is optional and defaults to 8080
|
||||||
|
Port=3434
|
17
subscriber/Dockerfile
Normal file
17
subscriber/Dockerfile
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
FROM python:3
|
||||||
|
|
||||||
|
#WORKDIR /usr/src
|
||||||
|
#RUN git clone https://git.rudefox.io/bj/torch-subscriber-simple.git
|
||||||
|
|
||||||
|
ADD torch-subscriber-simple /usr/src/torch-sub
|
||||||
|
WORKDIR /usr/src/torch-sub
|
||||||
|
|
||||||
|
RUN pip3 install --no-cache-dir -r requirements.txt && \
|
||||||
|
python3 setup.py install
|
||||||
|
|
||||||
|
WORKDIR /data
|
||||||
|
|
||||||
|
EXPOSE 8080
|
||||||
|
VOLUME [ "/etc/torch", "/data" ]
|
||||||
|
ENTRYPOINT [ "torch-sub" ]
|
||||||
|
CMD [ "--config-dir", "/etc/torch" ]
|
1
subscriber/torch-subscriber-simple
Submodule
1
subscriber/torch-subscriber-simple
Submodule
|
@ -0,0 +1 @@
|
||||||
|
Subproject commit c1a5bb2db0255e7dc5f27d9febeba37051cd7497
|
23
subscriber/torchsub-conf/ca.crt
Normal file
23
subscriber/torchsub-conf/ca.crt
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIID6zCCAtOgAwIBAgIUQJye5MbZVMpOpu87TmmlN/KOBj0wDQYJKoZIhvcNAQEL
|
||||||
|
BQAwgYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJOWTERMA8GA1UEBwwITmV3IFlv
|
||||||
|
cmsxFTATBgNVBAoMDEV4YW1wbGUgSW5jLjEcMBoGA1UEAwwTY2EubXF0dC5leGFt
|
||||||
|
cGxlLmNvbTEgMB4GCSqGSIb3DQEJARYRYWRtaW5AZXhhbXBsZS5jb20wHhcNMjAx
|
||||||
|
MDA2MTA1OTE4WhcNMzAxMDA0MTA1OTE4WjCBhDELMAkGA1UEBhMCVVMxCzAJBgNV
|
||||||
|
BAgMAk5ZMREwDwYDVQQHDAhOZXcgWW9yazEVMBMGA1UECgwMRXhhbXBsZSBJbmMu
|
||||||
|
MRwwGgYDVQQDDBNjYS5tcXR0LmV4YW1wbGUuY29tMSAwHgYJKoZIhvcNAQkBFhFh
|
||||||
|
ZG1pbkBleGFtcGxlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB
|
||||||
|
ALVndltaj3SX1zuJB0F5woIMUZCHopkgiO027/qE10IgM6SN4lFhR7wR0B/9PXrf
|
||||||
|
zn1xTC63w9xd3GbnlJvcWhWbh/m1t2Qx2mIvOmoELY8wlY6/V6NzjSgju7mZi0u6
|
||||||
|
aitU+LXINNuGS+JhVpc54QQ8M9o0jKlnNGnEmPjv6uhbNXx3f8lw3eqSr1ZqmpGd
|
||||||
|
UQVYKsNYBVzSqsnh/sn/KnGYn/nmpsKRWeLhoslJ3zDjaM/Y4NYol11nWFIPYCk5
|
||||||
|
7rzzxES/WdWLLnZ2W59YCT54YOGFqXE7oYgReD+Og2YwnGVQQpDcvb2HyIZL/2pa
|
||||||
|
oC6avMo/eC8HbSxwUKCnj1cCAwEAAaNTMFEwHQYDVR0OBBYEFEC8a9l0rpIdUqCS
|
||||||
|
i4NJwXlqUoLeMB8GA1UdIwQYMBaAFEC8a9l0rpIdUqCSi4NJwXlqUoLeMA8GA1Ud
|
||||||
|
EwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAGzxJWZdVozskr5yie2uetpL
|
||||||
|
aAReCaHEdWudRN3wVW1Dpm2sE23x4VFiJ+Uow9k21GgtGUsAIFqRgb3/QO+ipODC
|
||||||
|
GRwZmVopkuOaHfCz+tO8xqjvGHCidhhhNFdR9uVkWHoPKsQsvap0SSk12KMtFBRo
|
||||||
|
3rmeQwPP4qEPFEwc2U0hCUMsIUvMSt3KrA/j+aMRzOXU7QIMFbcYEF1IaGJz1RMh
|
||||||
|
h1VCXaUlL2liVTWU4XgudB8rMOuETec7un9hzoBVOWHxXdRrGPaoN4+zWiLRCDXO
|
||||||
|
6wapOhkmTOXuZY/NcMMwTmdJKTEQBD6XIQamv91Ne2bT89LHpcp1LjbaCz+UAxg=
|
||||||
|
-----END CERTIFICATE-----
|
21
subscriber/torchsub-conf/subscriber.crt
Normal file
21
subscriber/torchsub-conf/subscriber.crt
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIDhzCCAm8CFFfe134gzLKm3ieNbeoxCvOhwsGyMA0GCSqGSIb3DQEBCwUAMIGE
|
||||||
|
MQswCQYDVQQGEwJVUzELMAkGA1UECAwCTlkxETAPBgNVBAcMCE5ldyBZb3JrMRUw
|
||||||
|
EwYDVQQKDAxFeGFtcGxlIEluYy4xHDAaBgNVBAMME2NhLm1xdHQuZXhhbXBsZS5j
|
||||||
|
b20xIDAeBgkqhkiG9w0BCQEWEWFkbWluQGV4YW1wbGUuY29tMB4XDTIwMTAwNjEx
|
||||||
|
MDYwM1oXDTMwMTAwNDExMDYwM1owezELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAk5Z
|
||||||
|
MREwDwYDVQQHDAhOZXcgWW9yazEVMBMGA1UECgwMRXhhbXBsZSBJbmMuMRMwEQYD
|
||||||
|
VQQDDApzdWJzY3JpYmVyMSAwHgYJKoZIhvcNAQkBFhFhZG1pbkBleGFtcGxlLmNv
|
||||||
|
bTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPuE9XvVpmvnFAj2ZCMv
|
||||||
|
UWpE4yea69f4XtZ64Bw+Kp2B9NF+1lU7OTpnP+1Xubx7GX2Fy4E7w+jKwrC4+R+Z
|
||||||
|
qtZh9UCLj7IEin6NoaKgLSXd75A9UFZbI9Vug7VSxm581J8qDzVNnflTwRBPvnC6
|
||||||
|
1B1noXZRZGUbVjtC7ciIJ33bHktlTBbVvZwdZIB0upXe3iDeXE8I1izU+FB0EbCr
|
||||||
|
gmneo3mPW/5IPDGGJy1YI9HNa/h3gnZ5uomQ2/rhUB46Zr2+9/bGQHknIBMISWx6
|
||||||
|
UR0FlkdCu4ezm377IjBATBXaEoqoWfyRSuLDgkAAiHbtp+IQpIL+soOczMjUhvhg
|
||||||
|
FyECAwEAATANBgkqhkiG9w0BAQsFAAOCAQEACFy4ioFB5jeW+vMrTGfcwbq0qFW4
|
||||||
|
9zupWVKG4H+l4N/bjiwTpKy8oP7STBS94BbA6fYE8Y+Jcibas1zX78HFIk/A9Dh1
|
||||||
|
q9lysu7Biv4JbaXVPHxy9SzadUPym3bYAJtVRWsC1N2siI1NlalttDU1y+RnllUL
|
||||||
|
jixHf2/EghYgJydN7yoTWD7rbGD2GB4ADhohhMx5NL3h/7wge4qhvBIVEoa093hV
|
||||||
|
0rzctNrP0bDsZIei3RV6mat6teR4MUK7PQSmiwTPoFmbNB+T+sl/hT22B7utooQT
|
||||||
|
h5H39zpLiorQEUMF7qJff/7+KXs7YUGUFyAQyGnxhMhAQ7zWrkrR50sFwg==
|
||||||
|
-----END CERTIFICATE-----
|
27
subscriber/torchsub-conf/subscriber.key
Normal file
27
subscriber/torchsub-conf/subscriber.key
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
-----BEGIN RSA PRIVATE KEY-----
|
||||||
|
MIIEpQIBAAKCAQEA+4T1e9Wma+cUCPZkIy9RakTjJ5rr1/he1nrgHD4qnYH00X7W
|
||||||
|
VTs5Omc/7Ve5vHsZfYXLgTvD6MrCsLj5H5mq1mH1QIuPsgSKfo2hoqAtJd3vkD1Q
|
||||||
|
Vlsj1W6DtVLGbnzUnyoPNU2d+VPBEE++cLrUHWehdlFkZRtWO0LtyIgnfdseS2VM
|
||||||
|
FtW9nB1kgHS6ld7eIN5cTwjWLNT4UHQRsKuCad6jeY9b/kg8MYYnLVgj0c1r+HeC
|
||||||
|
dnm6iZDb+uFQHjpmvb739sZAeScgEwhJbHpRHQWWR0K7h7ObfvsiMEBMFdoSiqhZ
|
||||||
|
/JFK4sOCQACIdu2n4hCkgv6yg5zMyNSG+GAXIQIDAQABAoIBAQDHKe6VQ4XHlbBo
|
||||||
|
tGpw7gwjAS96chNk7fhzD9OcqaFnHbv1k+E2lnHnjFCzqS6bUELMAYE28VNdaAko
|
||||||
|
lSA35J/BqMnidWCwzyW3toESXJHDlW0Yo2SVLRA/9oX2s/gLD2/yJQTr6W05PBf5
|
||||||
|
yZt8eoRyUFgrb6H26eGrhYDytNXIsoL5Si7Q3/gc11jW5HLOqUhSE2oFQ9+xqq7B
|
||||||
|
HvD6a6nTF8upM2sTkyy9+n5RRuaqRfNTZmVzjNQOnnG+QyRyI0pdhipO77/+2JSl
|
||||||
|
8Db4F195wbZlxGsW7NwkJGCM0O9Fyaa2z7J/Je1KTuoTu+fCUhLwiojVLsQq10kO
|
||||||
|
ZZWm65+dAoGBAP6mi6K9H9LTzZ93XIOfmK9Q7S5SyOKQWLnSHMNyIsrtnZBWATEO
|
||||||
|
u16FNSOzdieOjY0rKptChUiqaTMavUEmk6aRLfkUqbrJygc8M+RH6xnb0Z1VXtM5
|
||||||
|
bEvPgYu0mm550AvEFsnu77fr194GAIhabdvzMz7b7EvDzPO86iXwGRWPAoGBAPza
|
||||||
|
Km38aH+Ccpk2084H47v783fUXyS2ScbtccVZxqtn0sxEFVnwESYQjz9QovTNlqyN
|
||||||
|
Y6t6mr1M8nM8MmPwBXFa3D654xtew8zpiA/MvCDbqlXB87BeTSMJWPAERVw2XqAm
|
||||||
|
wYFg0yJXlRRgQDiiCZCxsVzppSwct/Aa6euGXpBPAoGBAPhSKDCWBIZujEFJACpK
|
||||||
|
Y3XykJdvmv10jVEHF41vq4X/mHq7o4XXO9e8Rkl+I2YHmPlkcrPcdmSZ6OQw2wTB
|
||||||
|
PZJcWFxgTfMb+6p6ho/Bof0hYpLuQP3xLS3wN/+oKkA5ASu4GBDqs1DC50pWyAYv
|
||||||
|
SJoH2p0dkJuBYEb+ncZJD+z5AoGAD6UUEQAYGyOgIZjB3DKixaPeOaDbTjM1N2jD
|
||||||
|
rFlUsJBY+6iOxaTT+s31fw5nNsxtsTmCXD7WyjWznquv1n0oaQ4dKIhp4+ymIsyk
|
||||||
|
TY32afYNgQbiJByBm1Rdu2QYQo9epXwgZvftuGdA4yTddGOaQeist7oBLUyNmP6h
|
||||||
|
UKBcw4MCgYEArWhvqZUvklgmTJi8bSyJaCuZrd7l4HxoajceQ7ujyl/N2zX+HAio
|
||||||
|
8uw46NUvsiyIk3OCI/59G5BrBtOIYq5KUTNhDdz6q0HMz1MSDRCH5Zt0Cokam+jX
|
||||||
|
j7QGOQnhTHkGv8Mabo6gmLPifPuYboFzivFGMJH8ur+38YOyGxbwvqI=
|
||||||
|
-----END RSA PRIVATE KEY-----
|
20
subscriber/torchsub-conf/torch-sub.conf
Normal file
20
subscriber/torchsub-conf/torch-sub.conf
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
##############################################################################
|
||||||
|
# Sample torch-sub.conf file
|
||||||
|
##############################################################################
|
||||||
|
|
||||||
|
[mqtt]
|
||||||
|
#Topic is required
|
||||||
|
BrokerHost=broker
|
||||||
|
BrokerPort=8883
|
||||||
|
Topic=torch/+/wake
|
||||||
|
CaFile=ca.crt
|
||||||
|
KeyFile=subscriber.key
|
||||||
|
CertFile=subscriber.crt
|
||||||
|
|
||||||
|
[database]
|
||||||
|
#Filename is optional and defaults to 'clients.json'
|
||||||
|
Filename=torch_clients.json
|
||||||
|
|
||||||
|
[web]
|
||||||
|
#Port is optional and defaults to 8080
|
||||||
|
Port=3434
|
20
tor/Dockerfile
Normal file
20
tor/Dockerfile
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
FROM alpine
|
||||||
|
|
||||||
|
ARG SVC_HOST
|
||||||
|
ARG SVC_PORT
|
||||||
|
|
||||||
|
WORKDIR /etc/tor
|
||||||
|
|
||||||
|
RUN apk add --no-cache curl tor && \
|
||||||
|
echo -e "HiddenServiceDir /var/lib/tor/svc/\nHiddenServicePort $SVC_PORT $SVC_HOST:$SVC_PORT" > ./torrc
|
||||||
|
|
||||||
|
HEALTHCHECK --interval=60s --timeout=15s --start-period=20s \
|
||||||
|
CMD curl -s --socks5 127.0.0.1:9050 'https://check.torproject.org/' | grep -qm1 Congratulations
|
||||||
|
|
||||||
|
COPY tor.sh /usr/bin/
|
||||||
|
|
||||||
|
#VOLUME ["/var/lib/tor/svc"]
|
||||||
|
|
||||||
|
#USER tor
|
||||||
|
|
||||||
|
CMD ["tor.sh"]
|
5
tor/tor.sh
Executable file
5
tor/tor.sh
Executable file
|
@ -0,0 +1,5 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
IP_BROKER=$(nslookup broker | awk '/^Address: / { print $2 }' | tail -n1 | sed -e 's/[[:space:]]//g')
|
||||||
|
sed -i "s/broker/$IP_BROKER/g" /etc/tor/torrc
|
||||||
|
tor
|
Loading…
Reference in New Issue
Block a user