You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: doc/index.rst
+54-1Lines changed: 54 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -65,7 +65,7 @@ Remote Procedure Call tool
65
65
66
66
This tool is the preferred way of handling simple RPC servers.
67
67
Instead of writing a client for simple cases, you can simply use this tool
68
-
to call remote functions of an RPC server.
68
+
to call remote functions of an RPC server. For secure connections, see `SSL Setup`_.
69
69
70
70
* Listing existing targets
71
71
@@ -127,3 +127,56 @@ Command-line details:
127
127
.. argparse::
128
128
:ref: sipyco.sipyco_rpctool.get_argparser
129
129
:prog: sipyco_rpctool
130
+
131
+
132
+
SSL Setup
133
+
=========
134
+
135
+
SiPyCo supports SSL/TLS encryption with mutual authentication for secure communication, but it is disabled by default. To enable and use SSL, follow these steps:
136
+
137
+
**Generate key and certificate:**
138
+
139
+
Run the following command twice. Once with server filenames (e.g., ``server.key``, ``server.pem``) and once with client filenames (e.g., ``client.key``, ``client.pem``):
The ``--addext "subjectAltName=IP:127.0.0.1"`` parameter must specify a valid IP address that will be included in the certificate. You should replace this with the actual IP address that will be used for connections.
147
+
148
+
Examples for different network configurations:
149
+
150
+
- For IPv6 localhost: ``--addext "subjectAltName=IP:::1"``
151
+
- For local network IP: ``--addext "subjectAltName=IP:192.168.1.100"``
152
+
- For multiple IPs: ``--addext "subjectAltName=IP:127.0.0.1,IP:::1"``
153
+
- For hostname (if needed): ``--addext "subjectAltName=DNS:your.hostname.com"``
154
+
155
+
This creates:
156
+
157
+
- A server certificate (``server.pem``) and key (``server.key``)
158
+
- A client certificate (``client.pem``) and key (``client.key``)
159
+
160
+
161
+
Enabling SSL
162
+
------------
163
+
164
+
To start with SSL enabled, the server requires its own key and certificate, as well as the certificate of a client to trust. Similarly, the client requires its own key and certificate, as well as the certificate of a server to trust.
0 commit comments