After upgrade to 11.0.93 firmware, my eap application can no longer access network #82
-
I have an eap application which installs a script into systemd, that runs an ssh client to hold open a connection to a server in the cloud. . When my P3255 camera upgraded to firmware 11.0.93, this app stopped working, and in the logs I see this error
The strange thing is that when I type in the same command by hand to the shell, to open an ssh connection using the 'dbclient' ssh client, it works fine. It seems like the daemon process being launched by systemd does not have access to the network somehow. Is this a new change in the firmware? thank you |
Beta Was this translation helpful? Give feedback.
Replies: 7 comments 1 reply
-
Did the boot sequence for systemd change the order in which network services come up ? |
Beta Was this translation helpful? Give feedback.
-
Hi @hqm! Which version of ACAP are you using? |
Beta Was this translation helpful? Give feedback.
-
I have tried these versions
and
I tried also just putting a call to "ping" in my systemd .service file, and it also cannot reach network. I'm wondering if some tightened security on systemd launched processes has been added to prevent them from accesing the network? |
Beta Was this translation helpful? Give feedback.
-
I'll see what I can find. |
Beta Was this translation helpful? Give feedback.
-
The specific release is describing general performance optimizations. Those can affect process startup sequences, it's hard to know. There has also been changes to the network firewall settings that might affect outcomes of ping. Sorry that I cannot give you a more detailed explanation than this. |
Beta Was this translation helpful? Give feedback.
-
Turns out this is expected behavior of the default sandbox settings for apps /usr/lib/systemd/system/service.d/10-axis-sandbox.conf |
Beta Was this translation helpful? Give feedback.
-
As a security measure disabling network access for all services was implemented. If you install a service you can add the service to a whitelist to grant it access to the network. Create the file
If you know exactly what capabilities your service needs, then it will be better to specify only the ones that you need instead of resetting everything by setting it to nothing (meaning your service will have all kinds of capabilities, which is not desired in a security perspective). |
Beta Was this translation helpful? Give feedback.
As a security measure disabling network access for all services was implemented. If you install a service you can add the service to a whitelist to grant it access to the network.
Create the file
/etc/systemd/system/<service>.service.d/50-axis-network.conf
, where<service>
is the name of your service, with the following content:If you know exactly what capabilities your service needs, then it will be better to specify only the ones that you need instead of resetting everything by setting it to nothing (meaning your service will have all kinds of capabilities, which is not desired in a security perspective).