리눅스 시스템의 보안을 Firejail로 개선하는 방법

리눅스는 항상 다른 운영체제보다 더 안전한 OS로 인식됩니다. 그러나 그렇다고 해서 바이러스, 웜 및 기타 악성 요소에 완전히 면역이 된다는 의미는 아닙니다. 다른 모든 운영체제와 마찬가지로 리눅스에도 자체적인 한계가 있으며, 많은 것은 개인의 사용 방식에 달려 있습니다.

물론 절대적인 보호를 보장할 수는 없지만, 바이러스, 웜 및 해커들에게 매우 힘든 생활을 가능하게 하는 방법이 있습니다. 그러한 솔루션을 찾고 있다면 더 이상 찾지 마세요. 이 튜토리얼에서는 리눅스 시스템의 보안을 개선할 수 있는 소프트웨어인 Firejail에 대해 논의할 것입니다.

시스템 보안 강화

리눅스 박스의 보안을 강화하기 위해 Firejail을 설치하고 사용해야 합니다. Firejail은 기본적으로 신뢰할 수 없는 애플리케이션의 실행 환경을 제한하는 SUID 프로그램으로, 보안 위반의 위험을 줄여줍니다. Firejail이 뒤에서 하는 일은 프로세스와 그 자식 프로세스가 네트워크 스택, 프로세스 테이블, 마운트 테이블을 포함한 글로벌 공유 커널 리소스에 대한 개인적인 뷰를 갖도록 하는 것입니다.

이 애플리케이션은 C 언어로 작성되었으며 어떤 종속성도 없습니다. 물론 몇 가지 요구 사항이 있습니다. 예를 들어, 3.x 커널 버전 이상의 리눅스 머신에서만 호환됩니다. 이 도구가 샌드박스할 수 있는 프로세스의 종류는 “어떠한 것이든”입니다. 예, 서버와 그래픽 애플리케이션, 게임 및 사용자 로그인 세션 등에서 사용할 수 있습니다.

설치

이 유틸리티는 프로젝트의 SourceForge 페이지나 도구의 공식 웹사이트의 다운로드 섹션에서 다운로드할 수 있습니다.

다운로드 페이지는 .tar, .deb 및 .rpm 패키지를 제공하며, 32비트 및 64비트 아키텍처 모두에 대해 제공합니다. 저는 우분투를 사용하기 때문에 .deb 패키지를 다운로드하고 GDebi 패키지 설치기를 사용하여 설치했습니다.

사용법

이제 프로세스를 샌드박스하려면, 해당 애플리케이션의 이름을 firejail 명령의 인수로 전달하면 됩니다. 예를 들어, Firejail을 사용하여 Firefox 웹 브라우저를 샌드박스하려면 다음 명령을 실행하세요:

firejail firefox

firejail-firefox-launch

명령 줄에서 출력 로그만으로도 Firefox가 이제 샌드박스 형태로 실행되고 있다는 것을 알 수 있지만, Firejail이 웹 브라우저의 접근을 어떻게 제한하는지 보려면 Firefox 창에서 파일을 열어보세요(File -> Open). 앱에 제공되는 위치 목록이 줄어든 것을 보게 될 것입니다.

비교를 위해, Firejail 없이 Firefox를 실행했을 때의 목록입니다.

Firejail이 “/home/user” 디렉토리 위에 임시 “tmpfs” 파일 시스템을 마운트한다는 점도 언급할 가치가 있습니다. 이 디렉토리에서 생성된 파일은 샌드박스가 종료되면 삭제됩니다.

이 도구는 많은 리눅스 프로그램에 대한 보안 프로파일을 포함하고 있습니다. 보안 프로파일이 정확히 무엇인지 더 잘 이해하기 위해, 이것을 파일 접근을 허용하는 규칙과 허용하지 않는 규칙을 정의하는 설정 파일이라고 생각해보세요. Firejail 샌드박싱과 보안 프로파일을 생성하고 사용자 지정하는 방법에 대한 더 많은 정보는 도구의 문서를 참조하세요.

명령 줄에 익숙하지 않은 사람들은 Firejail 보안 샌드박스에 GUI가 있으며, 이를 Firetools라고 한다는 것을 알게 되어 기쁠 것입니다. Qt4/Qt5 라이브러리를 사용하여 만들어진 이 도구는 별도의 패키지로 제공됩니다. 시스템 트레이와 통합된 샌드박스 런처, 샌드박스 편집, 관리 및 통계를 제공합니다.

firejail-firetools

Firetools를 설치하려면 이 페이지로 이동하여 시스템에 호환되는 패키지를 다운로드하고 적절히 설치하세요. 설치가 끝나면 다음 명령을 사용하여 유틸리티를 실행하세요:

firetools

결론

어떤 OS를 사용하든지 간에, 보안 측면을 잊어서는 안 됩니다. 그리고 시스템에 문서, 파일, 사진 형식으로 민감한 정보가 포함되어 있다면 시스템 보안은 최우선으로 고려해야 할 사항입니다. 리눅스의 경우, 이 기사에서 논의한 솔루션은 설정하고 사용하는 것이 쉽습니다. 또한 도움이 필요한 경우에 대한 많은 문서도 제공됩니다. 한번 시도해보세요.