![Windows 파일 시스템 권한을 유지하면서 암호화된 백업을 만드는 가장 좋은 방법](https://linux55.com/image/24762/Windows%20%ED%8C%8C%EC%9D%BC%20%EC%8B%9C%EC%8A%A4%ED%85%9C%20%EA%B6%8C%ED%95%9C%EC%9D%84%20%EC%9C%A0%EC%A7%80%ED%95%98%EB%A9%B4%EC%84%9C%20%EC%95%94%ED%98%B8%ED%99%94%EB%90%9C%20%EB%B0%B1%EC%97%85%EC%9D%84%20%EB%A7%8C%EB%93%9C%EB%8A%94%20%EA%B0%80%EC%9E%A5%20%EC%A2%8B%EC%9D%80%20%EB%B0%A9%EB%B2%95.png)
홈 네트워크의 경우 디스크 암호화와 NFS를 지원하는 NAS를 구입하고 싶습니다. 백업 암호화가 중요하고 소유자, 그룹 및 권한(따라서 NFS)을 보존하는 것이 중요하기 때문입니다. 이런 식으로 나는 다음과 같은 것을 사용할 수 있다고 생각했습니다.rsnapshot
또는rBackup
내 데이터를 백업하고 여러 스냅샷을 찍으세요. 안타깝게도 NFS와 암호화를 모두 지원하는 NAS를 찾지 못했습니다. 따라서 NFS 없이 NAS를 사용하여(예: NFS 대신 CIFS 사용) 이 기능을 얻을 수 있는지 궁금합니다. 그래서 저는 다음 요구 사항을 충족하는 백업 솔루션을 찾고 있습니다.
- 로컬 네트워크의 NAS에 백업(예: 로컬 USB 드라이브를 사용하고 싶지 않음)
- 소유자, 그룹, 권한은 물론 심볼릭 링크도 보존해야 합니다.
- 암호화해야 해
- 사용 가능한 스냅샷이 여러 개 있어야 합니다
rsnapshot
.rBackup
- 스냅샷 파일에 접근하는 것은 쉬워야 합니다
- 너무 느리면 안 된다
이 작업을 자세히 수행하는 방법에 대한 아이디어가 있습니까?
편집하다: 나는 지금까지의 답변을 요약하려고 노력하고 있으며 몇 가지 요점을 명확히 하기 위해 몇 가지 추가 질문을 하고 싶습니다. 대상 장치에 종속되지 않는 컨테이너, FUSE 또는 기타 "가짜" 파일 시스템을 사용하는 것이 가장 유연한 옵션인 것 같습니다. 이 접근 방식에서는 원하는 모든 백업 스크립트를 사용할 수 있으며 암호화는 클라이언트 CPU에서 수행됩니다. 가능성은 다음과 같습니다:
- 인코딩된 파일 시스템
- 실제 비밀번호
- dmcrypt/luks
- S3QL
S3QL을 통해 두 클라이언트에서 동시에 NAS를 읽고 쓰는 것이 가능한지 잘 모르겠습니다. 다른 방법으로는 문제가 되지 않죠? 권한에 관해서는 어쨌든 NFS에서 작동하는지 확인해야 합니다. 예를 들어 백업 스크립트를 만들어서 저장할 수 있습니다.수치uid/gid를 사용하고 NAS에 사용자를 전혀 설정하지 마세요.
EncFS는 지금까지 가장 간단한 솔루션인 것 같습니다. Truecrypt 및 dmcrypt/luks에서는 컨테이너 크기를 미리 선택해야 하는데, 이는 EncFS 또는 Truecrypt만큼 유연하지 않은 것 같습니다. 그러나 이러한 솔루션 간에 읽기/쓰기 성능과 안정성에 상당한 차이가 있습니까?
지금까지 언급된 또 다른 흥미로운 방법은 자체를 암호화하는 백업 스크립트입니다 duplicity
.gpg
답변1
나도 확인해 볼게S3QL. 이는 네트워크 백업을 위한 많은 흥미로운 기능을 제공합니다. 주로 클라우드 백업에 사용되지만 다음 용도로도 사용할 수 있습니다.지역 네트워크예를 들어 NFS를 사용하거나SSHFS.
백업을 위해 이 소프트웨어를 사용하는 방법은 귀하에게 달려 있습니다. S3QL은 몇 가지 추가 기능을 갖춘 원격 파일 시스템일 뿐입니다.
어쨌든 S3QL 패키지에는샘플 스크립트이를 수행하는 방법을 알아보십시오. 기본적으로 수행하는 작업은 소프트웨어의 중복 제거 기능을 활용하여 날짜를 이름으로 사용하여 원격 디렉터리를 백업한 다음 백업이 완료될 때마다 이전 백업의 복사본을 만들고 현재 날짜로 이름을 바꾸는 것입니다. rsync를 사용하면 차이점이 새 디렉터리에 업로드됩니다. 데이터가 복제되지 않기 때문에 필요한 최소 저장 공간만 사용하여 백업이 실행된 모든 날짜에 대한 여러 디렉터리가 생성됩니다.
편집하다: (추가 질문에 대한 답변)
S3QL 파일 시스템은 한 번에 하나의 클라이언트에서만 마운트할 수 있지만 이 제한은 EncFS 및 dmcrypt/luks에도 적용된다고 가정합니다. 어쨌든 이것은 귀하의 요구 사항을 충족하지 않습니다. 그렇죠? 이것이 새로운 요구 사항인 경우 NFS 또는 CIFS와 Duplicity와 같이 클라이언트에서 암호화를 수행하는 일부 백업 소프트웨어를 계속 사용할 수 있습니다.
답변2
가능한NAS 상자에 데비안 설치그리고 전체 하드 드라이브를 암호화합니다. 문제는 대부분의 NAS 상자(특히 해당 기사의 DNS-323에 있는 프로세서)의 프로세서가 매우 느리고 로컬 디스크 암호화로 인해 프로세서가 매우 느리고 응답하지 않는다는 것입니다.
또 다른 솔루션은 암호화되지 않은 NFS 공유에서 암호화된 truecrypt 컨테이너를 호스팅하는 것입니다. 그런 다음 클라이언트 시스템에 설치하고 암호화된 컨테이너 내에서 원하는 백업 방법을 사용할 수 있습니다. 이렇게 하면 서버가 암호화 계산을 수행할 필요가 없습니다.
세 번째 옵션은 다음을 사용하는 것입니다.이중성권한과 심볼릭 링크를 유지하면서 암호화되지 않은 파일 시스템의 암호화된 증분 백업을 만듭니다. rsync와 매우 유사하게 작동하지만 데이터는 PGP를 사용하여 암호화됩니다. 단점은 백업이 저장되는 방식이 덜 투명하기 때문에 특정 파일의 이전 버전에 액세스하는 것이 다소 쉽지 않다는 것입니다.
저는 개인적으로 암호화되지 않은 RAID로 Debian을 실행하는 D-Link DNS-323을 사용하고 이중 방식으로 백업합니다. 완벽한 솔루션은 아니지만 전체 PC를 백업 서버로 실행하지 않고 찾은 것 중 최고입니다. 저는 truecrypt에 대해 괜찮은 경험을 갖고 있지만, 매번 별도의 컨테이너를 설치해야 하기 때문에 이중성처럼 쉽게 프로세스를 자동화하기가 어렵습니다.
답변3
당신은 그것을 사용할 수 있습니다인코딩된 파일 시스템NFS 위에
encfs /encrypted_place_at_nfs /mnt/place_to_access_it_unencrypted
답변4
Linux를 사용하고 있으므로 dmcrypt/luks를 사용할 수 있습니다.
Red-Hat과 유사한 시스템(Fedora 포함)
yum install cryptsetup-luks luks-tools
그러면 몇 가지 luks 명령이 제공됩니다.
이제 NAS 장치에 컨테이너를 생성해야 합니다(/mnt에 읽기/쓰기가 마운트되어 있다고 가정).
# Create a sparse file
dd if=/dev/zero of=/mnt/cryptdisk.dat seek=2G bs=1 count=1
# Create a key
dd if=/dev/urandom of=/root/crypt.key bs=1 count=2048
# Assign a device
losetup -a /dev/loop0 /mnt/cryptdisk.dat
# Encrypt device
cryptsetup luksFormat /dev/loop0 /root/crypt.key
# Create mapping to an encrypted device
cryptsetup luksOpen /dev/loop0 cryptdev -d /root/crypt.key
이제 당신은/dev/mapper/cryptdev파티션처럼 사용할 수 있습니다(예: ext3로 포맷, 마운트 등).
목적에 맞게 마운트된 파티션을 사용하십시오...
추가 자료: man cryptsetup
, man losetup
.