From 5ae587ee813a12e065400186fddb2266543469aa Mon Sep 17 00:00:00 2001 From: mhsanaei Date: Wed, 30 Oct 2024 16:35:36 +0100 Subject: [PATCH] bash - set or reset listenIP we need this if we want to add SSH port forwarding --- main.go | 15 +++++++++++++-- web/service/setting.go | 4 ++++ 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/main.go b/main.go index cd8989fa..75ab197b 100644 --- a/main.go +++ b/main.go @@ -216,7 +216,7 @@ func updateTgbotSetting(tgBotToken string, tgBotChatid string, tgBotRuntime stri } } -func updateSetting(port int, username string, password string, webBasePath string) { +func updateSetting(port int, username string, password string, webBasePath string, listenIP string) { err := database.InitDB(config.GetDBPath()) if err != nil { fmt.Println("Database initialization failed:", err) @@ -252,6 +252,15 @@ func updateSetting(port int, username string, password string, webBasePath strin fmt.Println("Base URI path set successfully") } } + + if listenIP != "" { + err := settingService.SetListen(listenIP) + if err != nil { + fmt.Println("Failed to set listen IP:", err) + } else { + fmt.Printf("listen %v set successfully", listenIP) + } + } } func updateCert(publicKey string, privateKey string) { @@ -339,6 +348,7 @@ func main() { var username string var password string var webBasePath string + var listenIP string var webCertFile string var webKeyFile string var tgbottoken string @@ -355,6 +365,7 @@ func main() { settingCmd.StringVar(&username, "username", "", "Set login username") settingCmd.StringVar(&password, "password", "", "Set login password") settingCmd.StringVar(&webBasePath, "webBasePath", "", "Set base path for Panel") + settingCmd.StringVar(&listenIP, "listen", "", "set panel listen IP") settingCmd.StringVar(&webCertFile, "webCert", "", "Set path to public key file for panel") settingCmd.StringVar(&webKeyFile, "webCertKey", "", "Set path to private key file for panel") settingCmd.StringVar(&tgbottoken, "tgbottoken", "", "Set token for Telegram bot") @@ -397,7 +408,7 @@ func main() { if reset { resetSetting() } else { - updateSetting(port, username, password, webBasePath) + updateSetting(port, username, password, webBasePath, listenIP) } if show { showSetting(show) diff --git a/web/service/setting.go b/web/service/setting.go index bbdac81d..e3ea3ece 100644 --- a/web/service/setting.go +++ b/web/service/setting.go @@ -243,6 +243,10 @@ func (s *SettingService) GetListen() (string, error) { return s.getString("webListen") } +func (s *SettingService) SetListen(ip string) error { + return s.setString("webListen", ip) +} + func (s *SettingService) GetWebDomain() (string, error) { return s.getString("webDomain") }