Ajout des scripts pour permettre l'utilisation du port 502 sans root

This commit is contained in:
jfmartel 2017-09-26 08:40:10 -04:00
parent bd27aa9c3d
commit 945f4ccb6b
4 changed files with 23 additions and 2 deletions

View File

@ -51,7 +51,7 @@ UTILISER_MODBUS_CC=OUI
#Adresse modbus de la ZT
MODBUS_CC_DEVID=1
#Port Modbus/TCP
MODBUS_CC_PORT=2182
MODBUS_CC_PORT=502
#----------------------------------
#Changer cette valeur à OUI ou NON pour activer le

5
FwdPort.sh Executable file
View File

@ -0,0 +1,5 @@
#!/bin/bash
#
echo "prerouting port 205 to port 2182"
sudo -n iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 205 -j REDIRECT --to-port 2182

14
SetPortCap.sh Executable file
View File

@ -0,0 +1,14 @@
#!/bin/bash
# Ce script change les "capabilities" de l'exécutable afin de lui permettre d'ouvrir un port TCP inférieur à 1024
# (port Modbus 502) sans avoir les privilèges ROOT.
# Pour que le script fonctionne, il faut ajouter les permissions d'accès dans visudo. (execution de sudo -n).
if [ $1 = release ]; then
echo "Changement des permissions de l'exécutable RELEASE"
sudo -n setcap cap_net_bind_service=ep /home/zonetest/DevZT/ZT/Release/ZT
else
echo "Changement des permissions de l'exécutable DEBUG"
sudo -n setcap cap_net_bind_service=ep /home/zonetest/DevZT/ZT/Debug/ZT
fi

4
ZT.pro
View File

@ -283,7 +283,9 @@ OTHER_FILES += \
Configuration/ZT.cfg \
StartZT \
GetSources.sh \
FTPGetSources.sh
FTPGetSources.sh \
FwdPort.sh \
SetPortCap.sh
INCLUDEPATH += $$PWD/ \
$$PWD/SeaMaxLinux/ \