![sed를 사용하여 CSF-LFD 포트를 안전하게 변경](https://linux55.com/image/125181/sed%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20CSF-LFD%20%ED%8F%AC%ED%8A%B8%EB%A5%BC%20%EC%95%88%EC%A0%84%ED%95%98%EA%B2%8C%20%EB%B3%80%EA%B2%BD.png)
설명대로 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
- 역참조, 첫 번째 캡처된 그룹 참조(...)