저는 Ubuntu를 실행하는 단일 보드 컴퓨터를 사용하여 구현된 네트워크 게이트웨이를 개발 중입니다(기본 배포판이 아니고 buildroot를 사용하여 구축되었기 때문에 버전을 확인할 수 없습니다). OEM에서 제공하는 툴체인과 빌드 루트를 사용하여 시스템 이미지를 생성하고 있습니다. 특정 요구 사항에 따라 OS 이미지를 구성해야 합니다. 즉, 아웃바운드 통신을 위해 모든 네트워크 포트를 활성화해야 합니다.
나는 쉘 스크립트를 실행하여 이 작업을 수행하려고 생각했습니다.
netstat -na | grep <port_number>
응답이 비어 있으면 포트가 사용되지 않음을 의미합니다.- 포트를 사용하지 않는 경우
sudo ufw allow <port_number>
- 포트 65536까지 루프를 사용하여 이를 반복합니다.
관찰 결과:
- 로컬 컴퓨터에서: 스크립트 실행 시간이 2시간에 가깝게 길어집니다. 아마도
echo
현재 포트 번호가 인쇄되어 있기 때문일 것입니다. 에코를 제거하면ufw allow
명령을 통해 속성이 변경되는 포트에서 스크립트가 중단됩니다. - 대상 하드웨어에서:
ufw: not found
.
내 생각엔 대본이 막다른 골목에 도달한 것 같아. 일회성 구성으로 이를 수행하는 더 좋은 방법이 있어야 합니다. 기본적으로 아웃바운드 트래픽에 대해 모든 포트가 활성화되어 있습니까?
어디를 봐야 할지 아시나요?