diff --git a/src/internal/log/log.go b/src/internal/log/log.go index 80d373b..e34f6d9 100644 --- a/src/internal/log/log.go +++ b/src/internal/log/log.go @@ -4,6 +4,7 @@ import ( "io" "log/slog" "os" + "runtime" "strings" "time" @@ -57,6 +58,7 @@ func SetLogConf(level string) { func LogHeader(version string, cfg *config.Config) { slog.Info("UA3F started", "version", version, "", cfg) + slog.Info("System Info", slog.String("Go Version", strings.TrimPrefix(strings.TrimSpace(runtime.Version()), "go")), slog.String("OS/Arch", runtime.GOOS+"/"+runtime.GOARCH)) } func LogDebugWithAddr(src string, dest string, msg string) { diff --git a/src/internal/netfilter/firewall.go b/src/internal/netfilter/firewall.go index 42372a7..3aaccb3 100644 --- a/src/internal/netfilter/firewall.go +++ b/src/internal/netfilter/firewall.go @@ -108,6 +108,7 @@ type Firewall struct { func (f *Firewall) Setup(cfg *config.Config) (err error) { _ = f.Cleanup() backend := detectFirewallBackend(cfg) + slog.Info("Setup firewall", slog.String("backend", backend)) switch backend { case NFT: if f.NftSetup == nil { @@ -125,6 +126,8 @@ func (f *Firewall) Setup(cfg *config.Config) (err error) { if err != nil { _ = f.Cleanup() } + f.DumpNFTables() + f.DumpIPTables() return err } @@ -144,7 +147,7 @@ func (f *Firewall) DumpNFTables() { if err != nil { return } - slog.Debug(fmt.Sprintf("nftables ruleset:\n%s", string(output))) + slog.Info("nftables ruleset:\n" + string(output)) } func (f *Firewall) DumpIPTables() { diff --git a/src/internal/server/netlink/netlink_linux.go b/src/internal/server/netlink/netlink_linux.go index abb900e..4286a55 100644 --- a/src/internal/server/netlink/netlink_linux.go +++ b/src/internal/server/netlink/netlink_linux.go @@ -45,8 +45,6 @@ func (s *Server) Start() (err error) { slog.Error("Firewall.Setup", slog.Any("error", err)) return err } - s.Firewall.DumpNFTables() - s.Firewall.DumpIPTables() if s.cfg.SetTTL || s.cfg.DelTCPTimestamp || s.cfg.SetIPID { slog.Info("Packet modification features enabled") go s.nfqServer.Start()