[Unit] Description=DOTNET Router written in C++ Documentation=man:dotnet(1) https://dotnet.readthedocs.io/en/latest/ After=network.target [Service] User=dotnet Group=dotnet RuntimeDirectory=dotnet RuntimeDirectoryMode=0700 LogsDirectory=dotnet LogsDirectoryMode=0700 Type=forking ExecStart=/usr/sbin/dotnet --conf=/etc/dotnet/dotnet.conf --tunconf=/etc/dotnet/tunnels.conf --tunnelsdir=/etc/dotnet/tunnels.conf.d --pidfile=/var/run/dotnet/dotnet.pid --logfile=/var/log/dotnet/dotnet.log --daemon --service ExecReload=/bin/kill -HUP $MAINPID PIDFile=/var/run/dotnet/dotnet.pid ### Uncomment, if auto restart needed #Restart=on-failure KillSignal=SIGQUIT # If you have the patience waiting 10 min on restarting/stopping it, uncomment this. # dotnet stops accepting new tunnels and waits ~10 min while old ones do not die. #KillSignal=SIGINT #TimeoutStopSec=10m # If you have problems with hanging dotnet, you can try increase this LimitNOFILE=4096 # To enable write of coredump uncomment this #LimitCORE=infinity PrivateDevices=yes [Install] WantedBy=multi-user.target