首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用bash删除CSF 'do not delete‘IP条目

使用bash删除CSF 'do not delete‘IP条目
EN

Stack Overflow用户
提问于 2021-10-08 08:43:52
回答 1查看 32关注 0票数 1

有没有办法删除附加了comment # do not delete的CSF (自动使用bash)?例如,下面的列表:

代码语言:javascript
复制
1.1.1.1 # do not delete
1.2.3.4 # This is another IP # do not delete
1.2.3.5 # This IP is bad # do not delete

如果我像这样使用CSF删除IP 1.1.1.1

代码语言:javascript
复制
csf -dr 1.1.1.1

我将得到这个错误:

代码语言:javascript
复制
csf: 1.1.1.1 set as "do not delete" - not removed

当然,我可以通过编辑csf.deny并手动删除注释行# do not delete来完美地删除这个IP,然后当我运行csf -d 1.1.1.1时它将被删除。

CSF是否有此选项来强制删除此条目,或者是否有其他方法可以通过bash脚本自动执行此操作?有超过几百个条目具有此# do not delete。因此,这并不容易手动完成。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-08 09:15:16

您可以使用grep命令而不使用csf -dr

代码语言:javascript
复制
#!/bin/bash

# Find IP:

ip="1.1.1.1"

search_csf_ip_without_comment=$(grep -w "^${ip}" "/etc/csf/csf.deny")

# If IP found:

if [[ -n "${search_csf_ip_without_comment}" ]]; then
  echo "IP found, remove and restarting csf ..." 
    grep -wv "^${ip}" "/etc/csf/csf.deny" >write.tmp && mv write.tmp "/etc/csf/csf.deny"

   csf -r > /dev/null
else

  echo "IP not found"
fi
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69492997

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档