이중성: 악의적인 사용자가 백업을 망치는 것을 방지하는 방법

이중성: 악의적인 사용자가 백업을 망치는 것을 방지하는 방법

나는 유지 관리하는 거의 모든 호스트에서 Duplicity를 사용하여 원격 위치("백업 호스트"라고 함)에 대한 백업을 생성합니다.

전체 또는 증분 백업의 빈도와 시기는 호스트와 해당 사용 사례에 따라 다릅니다.

일반적인 오류(사람의 실수, 하드웨어/소프트웨어 등)로부터 자신을 보호해야 할 뿐만 아니라 잠재적인 공격으로부터도 복구해야 합니다.

제 경우에는 SSH/SFTP 백엔드를 사용하여 이러한 중복 백업을 실행합니다. 이중성을 위해서는 백업 호스트에 대한 읽기/쓰기 액세스가 필요하므로 백업되는 호스트에 대한 제어 권한을 얻은 사람은 백업 호스트에 연결하여 해당 백업을 삭제/혼란할 수도 있습니다.

그럼에도 불구하고 백업 호스트는 백업 호스트의 파일도 삭제해야 한다는 것을 이해합니다. 공간이 부족하지 않도록 백업 호스트는 종종 - 및 - 작업을 사용하여 이전 백업을 삭제하기 위해 remove-all-but-n-full이중성을 호출합니다 .remove-all-inc-of-but-n-full

제가 아는 한, 백업(백업 포함)으로 인해 백업 호스트 자체에서는 이러한 정리를 수행할 수 없습니다. 어떤 파일이 어떤 컬렉션에 속해 있는지에 대한 메타데이터가 암호화되고 해당 개인 키(GPG)가 백업 호스트에 존재하지 않는 중복성입니다.

따라서 백업 호스트에서 이러한 유형의 정리를 수행하려면 파일 타임스탬프를 기반으로 수행해야 하며 이로 인해 손상되거나 부분적인 백업 세트가 발생할 수 있습니다.

현재 이러한 공격으로부터 자신을 "보호"하기 위해 기본 백업 호스트에 정기적으로 연결하는 두 번째 백업 호스트가 있습니다. 이 호스트는 기본 백업 호스트의 모든 백업 데이터를 보조 백업 호스트로 동기화합니다.

그러나 다시 위의 문제에 직면하고 있습니다.

  • 구조를 이해하지 못한 채 기본 호스트에서 두 번째 백업 호스트로 파일을 복사하고 있습니다(예: 완료되지 않은 파일, 부분 세트 등을 복사합니다).
  • 공간이 부족해지지 않으려면 파일 타임스탬프만을 기준으로 오래된 백업을 다시 삭제해야 하므로 백업 세트를 사용할 수 없게 될 수 있습니다.

공격자가 생성된 백업을 건드리지 않고 백업할 호스트에 대한 전체 액세스 권한을 갖도록 하면서 이중성을 통해 백업할 호스트를 자동으로 백업하는 가장 우아하고 깔끔한 방법은 무엇입니까?

감사합니다!

관련 정보