OpenNDS with kresd - Captive Portal

Hi,

I wanted to experiment with Captive Portal for guest wifi. And I bumped into NoDogSplash. There was only some mentions in Turris release notes that package was updated for TOS 4.x so maybe back then it worked. But NoDogSplash was abandoned and OpenNDS fork appeared. I was wondering if someone tried/made it work with TurrisOS?

From what I observed it fails to start because (what I think) is that it requires dnsmasq as dns resolver.

Here is log:

root@router:~# logread | grep opennds                   
Apr  2 14:31:36 router opennds[17319]: openNDS Version 9.10.0 is in startup
Apr  2 14:31:36 router opennds[17319]: Parsing option: FirewallRuleSet, arg: authenticated-users {
Apr  2 14:31:36 router opennds[17319]: Parsing FirewallRuleSet authenticated-users
Apr  2 14:31:36 router opennds[17319]: FirewallRuleSet authenticated-users parsed.
Apr  2 14:31:36 router opennds[17319]: Parsing option: FirewallRuleSet, arg: preauthenticated-users {
Apr  2 14:31:36 router opennds[17319]: Parsing FirewallRuleSet preauthenticated-users
Apr  2 14:31:36 router opennds[17319]: FirewallRuleSet preauthenticated-users parsed.
Apr  2 14:31:36 router opennds[17319]: Parsing option: FirewallRuleSet, arg: users-to-router {
Apr  2 14:31:36 router opennds[17319]: Parsing FirewallRuleSet users-to-router
Apr  2 14:31:36 router opennds[17319]: p1 = [FirewallRule];p2 = [allow tcp port 53]
Apr  2 14:31:36 router opennds[17319]: Adding FirewallRule allow tcp port 53 to 0.0.0.0/0 to FirewallRuleset users-to-router
Apr  2 14:31:36 router opennds[17319]: p1 = [FirewallRule];p2 = [allow udp port 53]
Apr  2 14:31:36 router opennds[17319]: Adding FirewallRule allow udp port 53 to 0.0.0.0/0 to FirewallRuleset users-to-router
Apr  2 14:31:36 router opennds[17319]: p1 = [FirewallRule];p2 = [allow udp port 67]
Apr  2 14:31:36 router opennds[17319]: Adding FirewallRule allow udp port 67 to 0.0.0.0/0 to FirewallRuleset users-to-router
Apr  2 14:31:36 router opennds[17319]: p1 = [FirewallRule];p2 = [allow tcp port 22]
Apr  2 14:31:36 router opennds[17319]: Adding FirewallRule allow tcp port 22 to 0.0.0.0/0 to FirewallRuleset users-to-router
Apr  2 14:31:36 router opennds[17319]: p1 = [FirewallRule];p2 = [allow tcp port 443]
Apr  2 14:31:36 router opennds[17319]: Adding FirewallRule allow tcp port 443 to 0.0.0.0/0 to FirewallRuleset users-to-router
Apr  2 14:31:36 router opennds[17319]: FirewallRuleSet users-to-router parsed.
Apr  2 14:31:36 router opennds[17319]: Parsing option: FirewallRuleSet, arg: trusted-users {
Apr  2 14:31:36 router opennds[17319]: Parsing FirewallRuleSet trusted-users
Apr  2 14:31:36 router opennds[17319]: FirewallRuleSet trusted-users parsed.
Apr  2 14:31:36 router opennds[17319]: Parsing option: FirewallRuleSet, arg: trusted-users-to-router {
Apr  2 14:31:36 router opennds[17319]: Parsing FirewallRuleSet trusted-users-to-router
Apr  2 14:31:36 router opennds[17319]: FirewallRuleSet trusted-users-to-router parsed.
Apr  2 14:31:36 router opennds[17319]: Done reading configuration file '/tmp/etc/opennds_cfg01995c.conf'
Apr  2 14:31:36 router opennds[17319]: Initializing signal handlers
Apr  2 14:31:36 router opennds[17319]: Setting SIGCHLD handler to sigchld_handler()
Apr  2 14:31:36 router opennds[17319]: Setting SIGPIPE  handler to SIG_IGN
Apr  2 14:31:36 router opennds[17319]: Setting SIGTERM, SIGQUIT, SIGINT  handlers to termination_handler()
Apr  2 14:31:36 router opennds[17319]: Executing command: /usr/lib/opennds/dnsconfig.sh "revert"
Apr  2 14:31:36 router opennds[17319]: Reading command output
Apr  2 14:31:36 router opennds[17319]: command output: [done]
Apr  2 14:31:36 router opennds[17319]: Revert request sent
Apr  2 14:31:36 router opennds[17319]: tmpfs mountpoint is [/tmp]
Apr  2 14:31:36 router opennds[17319]: Locking config
Apr  2 14:31:36 router opennds[17319]: Config locked
Apr  2 14:31:36 router opennds[17319]: Unlocking config
Apr  2 14:31:36 router opennds[17319]: Config unlocked
Apr  2 14:31:36 router opennds[17319]: Destroying our iptables entries
Apr  2 14:31:36 router opennds[17319]: Destroying chains in the MANGLE table
Apr  2 14:31:36 router opennds[17319]: Destroying chains in the NAT table
Apr  2 14:31:36 router opennds[17319]: Destroying chains in the FILTER table
Apr  2 14:31:36 router opennds[17319]: Executing command: /usr/lib/opennds/libopennds.sh "delete_chains"
Apr  2 14:31:36 router opennds[17319]: Reading command output
Apr  2 14:31:36 router opennds[17319]: command output: []
Apr  2 14:31:36 router opennds[17319]: Chain delete request sent
Apr  2 14:31:36 router opennds[17319]: Executing command: /usr/lib/opennds/libopennds.sh "pre_setup"
Apr  2 14:31:36 router opennds[17319]: Reading command output
Apr  2 14:31:38 router opennds[17319]: Handler for termination caught signal 15
Apr  2 14:31:38 router opennds[17319]: Cleaning up and exiting
Apr  2 14:31:38 router opennds[17319]: Executing command: /usr/lib/opennds/dnsconfig.sh "revert"
Apr  2 14:31:38 router opennds[17319]: Reading command output
Apr  2 14:31:38 router opennds[17319]: command output: [done]
Apr  2 14:31:38 router opennds[17319]: Revert request sent
Apr  2 14:31:38 router opennds[17319]: restart command [ /usr/lib/opennds/dnsconfig.sh "restart_only" & ]
Apr  2 14:31:38 router opennds[17319]: Dnsmasq restarted
Apr  2 14:31:38 router opennds[17319]: Locking client list
Apr  2 14:31:38 router opennds[17319]: Client list locked
Apr  2 14:31:38 router opennds[17319]: Unlocking client list
Apr  2 14:31:38 router opennds[17319]: Client list unlocked
Apr  2 14:31:38 router opennds[17319]: Flushing firewall rules...
Apr  2 14:31:38 router opennds[17319]: Locking config
Apr  2 14:31:38 router opennds[17319]: Config locked
Apr  2 14:31:38 router opennds[17319]: Unlocking config
Apr  2 14:31:38 router opennds[17319]: Config unlocked
Apr  2 14:31:38 router opennds[17319]: Destroying our iptables entries
Apr  2 14:31:38 router opennds[17319]: Destroying chains in the MANGLE table
Apr  2 14:31:38 router opennds[17319]: Destroying chains in the NAT table
Apr  2 14:31:38 router opennds[17319]: Destroying chains in the FILTER table
Apr  2 14:31:38 router opennds[17319]: Executing command: /usr/lib/opennds/libopennds.sh "delete_chains"
Apr  2 14:31:38 router opennds[17319]: Reading command output
Apr  2 14:31:38 router opennds[17319]: command output: []
Apr  2 14:31:38 router opennds[17319]: Chain delete request sent
Apr  2 14:31:38 router opennds[17319]: Exiting...

But should be compatible with nftables in TOS 7.0 I use.

If its a choice between keeping kresd or the portal I quess I will stay with kresd…