go - .go 使用 ufw 禁止 ip

标签 go ufw

好的,这是原始代码,可以正常工作。

if len(data) > 1 {
  var req StratumReq
  err = json.Unmarshal(data, &req)
  if err != nil {
    s.policy.ApplyMalformedPolicy(cs.ip)
    log.Printf("Malformed stratum request from %s: %v", cs.ip, err)
    return err
  }
}

然而,我不只是打印错误,而是想在 Ubuntu 16.04 中使用 ufw 来禁止 ip。但是我不太熟悉这种类型的编码,无法获得正确的语法来做到这一点。任何帮助,将不胜感激。它是用 .go 编写的

最佳答案

您可以使用 exec 执行命令

if err != nil {
    s.policy.ApplyMalformedPolicy(cs.ip)

    out, err := exec.Command(fmt.Sprintf("ufw deny from {%d} to any",cs.ip).Output()
    if err != nil {
        log.Fatal(err)
    }

    log.Printf("Malformed stratum request from %s: %v", cs.ip, err)
    return err
}

关于go - .go 使用 ufw 禁止 ip,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45404282/

相关文章:

mysql - 从文本文件读取 IP 地址到 IPTABLES

更新 UFW 后 PostgreSQL 仍然能够建立连接

go - k8s oidc 问题与帮助程序包 (k8s-oidc-helper : command not found)

android - 如何在Android上销毁golang子进程?

Docker 和 UFW 具有真实 IP

UFW 阻止了 Docker 本地主机连接

linux - 如何只允许 samba 通过 vpn 隧道?

json - 戈朗 : quickly access data of maps within maps

multithreading - Golang线程不是每次都执行

xml - 使用 golang 编码/xml 解码 GML 时出错