sed를 사용하여 CSF-LFD 포트를 안전하게 변경

sed를 사용하여 CSF-LFD 포트를 안전하게 변경

설명대로 CSF-LFD를 설치했습니다.여기. 다음 /etc/csf/csf.conf두 가지 코드 블록이 있습니다.

# Allow incoming TCP ports
TCP_IN = "20,21,22,25,53,80,110,143,443,465,587,993,995,2077,2078,2079,2080,2082,2083,2086,2087,2095,2096"

# Allow outgoing TCP ports
TCP_OUT = "20,21,22,25,37,43,53,80,110,113,443,587,873,993,995,2086,2087,2089,2703"

"22, 80, 443, 9000"내 Nginx 서버 환경이 이러한 포트에서 들어오는 데이터만 허용하도록 두 개의 포트 그룹을 변경해야 합니다 .

가장 좋고 안전한 방법은 무엇입니까 sed?

나는 이것이 좋은 접근 방식이라고 생각합니다.

sed -i 's/^TCP_IN = .*/TCP_IN = "22, 80, 443, 9000"/' /etc/csf/csf.conf
sed -i 's/^TCP_OUT = .*/TCP_OUT = "22, 80, 443, 9000"/' /etc/csf/csf.conf

그러나 csf.conf파일이 크고 변경 가능성이 크다는 점을 고려하면 더 나은 접근 방식이 있을 수 있습니다.

답변1

한 번만 통과하면 완료됩니다.sed:

sed -Ei 's/^(TCP_(IN|OUT) = ).*/\1"22, 80, 443, 9000"/' /etc/csf/csf.conf
  • (IN|OUT)IN- 대체 그룹, 일치 또는 OUT부분 문자열을 위한 정규식
  • \1- 역참조, 첫 번째 캡처된 그룹 참조(...)

관련 정보