从实时专用服务器粉碎所有数据的最佳方法是什么?
我没有物理访问权限,也没有对服务器的任何带外远程管理功能,只有 SSH 访问权限。
服务器正在运行 Debian 6
更新
服务器有ext3分区。
从切碎的手册页:
CAUTION: Note that shred relies on a very important assumption: that the file system overwrites data in place. This is the traditional way to do things, but many modern file system designs do not satisfy this assumption. The following are examples of file systems on which shred is not effective, or is not guaranteed to be effective in all file sys- tem modes: * log-structured or journaled file systems, such as those supplied with AIX and Solaris (and JFS, ReiserFS, XFS, Ext3, etc.) * compressed file systems In the case of ext3 file systems, the above disclaimer applies (and shred is thus of limited effectiveness) only in data=journal mode, which journals file data in addition to just metadata. In both the data=ordered (default) and data=writeback modes, shred works as usual. Ext3 journaling modes can be changed by adding the data=something option to the mount options for a particular file system in the /etc/fstab file, as documented in the mount man page (man mount)
.
如果由于某种原因你想在系统运行时粉碎整个磁盘而不只是敏感数据,那么你能够确定的唯一方法是创建一个 tmpfs(或其他 ramdisk)挂载,复制核心实用程序,然后使用
pivot_root
将根文件系统移动到 ramdisk,然后卸载分区以按照Womble 在此处的回答将其切碎。实际上这样做是一个挑战,我试过一次看看是否可行,并且能够从 ramdisk 获得几乎所有的东西,但是在移动它的控制管道 ( ) 以便我可以卸载分区init
时遇到了麻烦。init
/dev/initctl
或者,根据这个答案,您可以尝试关闭所有可能尝试写下日志文件的东西,杀死所有其他不必要的东西,用于
lsof
查找打开文件的进程并杀死它们,然后尝试粉碎分区。如果幸运的话,该过程将在内核发现文件系统损坏和崩溃之前完成。否则,内核会出现 panic,shred 会停止,系统肯定无法启动,无法完成 shredding。data=ordered
否则,如果您只需要粉碎数据,那么我认为如果将日志设置为或根据粉碎的联机帮助页,您可以合理地确定这样做writeback
,然后粉碎现有数据文件(如果未设置为受支持的模式,它看起来就像改变它需要重新启动)。要粉碎数据文件可能曾经存在的未分配空间,请使用dd
大文件填充驱动器,然后再粉碎这些文件。请注意,此选项可能会完整保留各种元数据(包含文件名、所有权、文件大小等的目录条目)。这dd
进程将需要以 root 身份运行,以保证它填充驱动器,因为(默认情况下)空间是为 root 用户保留的,普通用户无法填充。在此期间您可能希望停止记录(或记录到单独的分区或 tmpfs),因为一旦驱动器完全充满就会出现问题。假设服务器使用旋转磁盘,请尝试该
shred
命令。shred 和 srm 是您可以用来安全删除数据的两个命令。阅读他们的手册页以获取更多信息。
安全可靠:获得加密数据的安全硬盘。
然后指示光盘销毁加密密钥并制作新的。
毫秒安全删除。
这是目前大多数 SAS 光盘上的标准选项。