mirror of
https://github.com/swissmakers/fail2ban-ui.git
synced 2026-04-19 06:53:14 +02:00
switch to toast instead of alert messages, implement serverIDs and restart tracking for every remote-server
This commit is contained in:
@@ -80,9 +80,18 @@ func ReloadFail2ban() error {
|
||||
return conn.Reload(context.Background())
|
||||
}
|
||||
|
||||
// RestartFail2ban restarts the Fail2ban service using the default connector.
|
||||
func RestartFail2ban() error {
|
||||
conn, err := GetManager().DefaultConnector()
|
||||
// RestartFail2ban restarts the Fail2ban service using the provided server or default connector.
|
||||
func RestartFail2ban(serverID string) error {
|
||||
manager := GetManager()
|
||||
var (
|
||||
conn Connector
|
||||
err error
|
||||
)
|
||||
if serverID != "" {
|
||||
conn, err = manager.Connector(serverID)
|
||||
} else {
|
||||
conn, err = manager.DefaultConnector()
|
||||
}
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
@@ -63,7 +63,7 @@ func (ac *AgentConnector) Server() config.Fail2banServer {
|
||||
func (ac *AgentConnector) ensureAction(ctx context.Context) error {
|
||||
payload := map[string]any{
|
||||
"name": "ui-custom-action",
|
||||
"config": config.BuildFail2banActionConfig(config.GetCallbackURL()),
|
||||
"config": config.BuildFail2banActionConfig(config.GetCallbackURL(), ac.server.ID),
|
||||
"callbackUrl": config.GetCallbackURL(),
|
||||
"setDefault": true,
|
||||
}
|
||||
|
||||
@@ -199,7 +199,7 @@ func (sc *SSHConnector) FetchBanEvents(ctx context.Context, limit int) ([]BanEve
|
||||
|
||||
func (sc *SSHConnector) ensureAction(ctx context.Context) error {
|
||||
callbackURL := config.GetCallbackURL()
|
||||
actionConfig := config.BuildFail2banActionConfig(callbackURL)
|
||||
actionConfig := config.BuildFail2banActionConfig(callbackURL, sc.server.ID)
|
||||
payload := base64.StdEncoding.EncodeToString([]byte(actionConfig))
|
||||
script := strings.ReplaceAll(sshEnsureActionScript, "__PAYLOAD__", payload)
|
||||
// Base64 encode the entire script to avoid shell escaping issues
|
||||
|
||||
Reference in New Issue
Block a user