FreeBSD 加密盘的使用

FreeBSD 加密盘的使用

yarshure@gmail.com

本文通过FreeBSD geom 框架gbde 和geli 对磁盘,文件的加密,保护计算机系统数据,使数据免受攻击者获得有用的资源。

一使用gbde对磁盘进行加密

1 添加内核选项

options GEOM_BDE

重新编译,安装内核

2 准备imgfile

#dd if=/dev/zero of=newimage bs=1k count=50k

生成1个50MB的image,文件大小=bs*count

3 使用newimage 生成文件系统

#mdconfig -a -t vnode -f newimage -u 0
# ls /dev/md0

验证是否生成

4 创建一个目录来保存 gbde Lock 文件

# mkdir /etc/gbde

初始化 gbde 分区

# gbde init /dev/md0 -I -L /etc/gbde/md0

5把加密分区和内核进行关联

# gbde attach /dev/md0 -l /etc/gbde/md0

6在加密设备上创建文件系统

#newfs -U -O2 /dev/md0.gbde
# mkdir /mnt/md0
#mount /dev/md0.gbde /mnt/md0

#df -H 验证

备份: 备份 newimage,/etc/gbde/md0

卸载:

#umount /mnt/md0
#gbde detach /dev/md0
#mdconfig -d 0

二使用geli加密磁盘

内核选项:

options GEOM_ELI
device crypto

重新编译内核,安装新内核,就可以了。
另外如果想通过模块方式加载,则可以在/boot/loader.conf文件里添加以下内容:
geom_eli_load="YES"

1 准备imgfile

#dd if=/dev/zero of=newimage bs=1k count=50k

生成1个50MB的image,文件大小=bs*count

2使用newimage 生成文件系统

#mdconfig -a -t vnode -f newimage -u 0

# ls /dev/md0 验证是否生成

3 生成主密钥:

#dd if=/dev/random of=/root/md0.key bs=64 count=1
# geli init -s 4096 -K /root/md0.key /dev/md0

如果密钥文件写作 “-”, 则表示使用标准输入。 下面是关于如何使用多个密钥文件的例子:

# cat keyfile1 keyfile2 keyfile3 | geli init -K – /dev/md0

4将md0和密钥关联

# geli attach -k /root/md0.key /dev/md0
Enter passphrase:

新的明文设备将被命名为 /dev/md0.eli。

# ls /dev/md0*
/dev/md0 /dev/md0.eli

5创建文件系统

# dd if=/dev/random of=/dev/md0.eli bs=1m
# newfs /dev/md0.eli
# mount /dev/md0.eli /mnt/md0

使用df -h 检查

6卸下卷并断开

# umount /mnt/md0
# geli detach md0.eli
#mdconfig -d 0

备份:备份newimage, /root/md0.key

详细参考:

FreeBSD 使用手册 17.6, 17.13.1 Manpage: gbde(8), newfs(8), geli(8), crypto(9), mdconfig(8)

原文链接:https://wiki.freebsdchina.org/doc/s/crypto_disk

FreeBSD下查看某目录下文件的个数

FreeBSD下查看某目录下文件的个数

ls -l |grep "^-"|wc -l

find ./company -type f | wc -l

查看某目录下文件的个数,包括子目录里的。

ls -lR|grep "^-"|wc -l

查看某文件夹下目录的个数,包括子目录里的。

ls -lR|grep "^d"|wc -l

说明:

ls -l

长列表输出该目录下文件信息(注意这里的文件,不同于一般的文件,可能是目录、链接、设备文件等)

grep "^-"

这里将长列表输出信息过滤一部分,只保留一般文件,如果只保留目录就是 ^d

wc -l

统计输出信息的行数,因为已经过滤得只剩一般文件了,所以统计结果就是一般文件信息的行数,又由于一行信息对应一个文件,所以也就是文件的个数。

原文链接:http://www.majormoves.net/post/189/

FreeBSD初学者常用命令笔记

FreeBSD初学者常用命令笔记

一 系统登录与退出

1 系统登录

系统在执行完引导和启动脚本后,FreeBSD将读取/etc/ttys文件,按照配置启动多个虚拟控制台,在控制台上启动登录进程login,以接受用户登录。

FreeBSD虚拟控制台默认配置为8个,使用者可以使用Alt-F1-Alt-F8等功能键在不同的控制台之间进行切换。

当控制台出现login提示后,可以使用root用户和安装时设置的root口令登录系统。

例:
FreeBSD/i386 (lhy.gl.com) (ttyv0)
login: root
Password:

2 退出

当工作完成后,可以使用logout命令退出当前会话。
使用exit,或使用Ctrl-D(^D)都能结束当前会话,退出登录过程。

例:
# logout
也可以用:
# exit

3 关闭系统

关机需要以root身份登录进入系统之后,使用shutdown命令来进行关闭系统。
-h 参数,表示halt,停机操作。

例:
# shutdown -h now
Now参数表示立即执行shutdown命令。

也可以用halt命令立即执行停机操作。
# halt
-r 参数,表示reboot,重新启动系统。

例:
# shutdown -r +5 “Please logout”
表示五分种后重启系统,并向正登录的用户发送广播信息。

也可以用reboot命令立即重新启动系统。
# reboot
-p 参数,表示关闭计算机。

例:
# shutdown -p now
表示立即关闭计算机。

二 用户管理

1 增加用户

例:
# adduser

2 修改用户口令

# passwd

3 从普通用户升级为超级用户

例:
$ su
Password:
#
正确输入root的口令后,就成为了超级用户,系统提示符也从标准的“$”变为root专用的“#”提示。
在FreeBSD上要使用su命令成为root用户,不但要知道root的口令,还需要经过特别设置,否则就不能成功的使用这个命令,能使用su命令的用户必须属于wheel组。

三 文件复制、删除和移动

1 文件复制命令(cp)

例:
# cp rc.conf rc.conf.old
# cp –r /usr/xu/ /usr/liu/
将/usr/xu目录中的所有文件及其子目录拷贝到目录/usr/liu中。

2 文件移动命令(mv)

例:
# mv index.php index1.php
表示将index.php重命名为index1.php。
# mv phpMyAdmin phpMyAdmin1
表示将phpMyAdmin目录重命名为phpMyAdmin1。

3 文件删除命令(rm)

例:
# rm index.php
表示删除index.php文件。
# rm –r phpMyAdmin
表示将phpMyAdmin目录及其子目录全部删除。

四 目录的创建及删除命令

1 目录创建命令(mkdir)

例:
# mkdir /ftproot

2 目录删除命令(rmdir)

例:
# rmdir phpMyAdmin
表示删除空目录。
# rmdir –p phpMyAdmin
表示将phpMyAdmin目录及其子目录全部删除。

3 改变工作目录

例:
# cd ..
回到上一级目录。
# cd /
回到根目录。
# cd ~/
回到当前用户根。

4 显示当前工作目录的绝对路径

# pwd

5 列出目录的内容(ls)

-a 参数,显示指定目录下所有子目录与文件,包括隐藏文件。
-F 参数,在目录名后面标记“/”,可执行文件后面标记“*”,符号链接后面标记“@”,管道(或FIFO)后面标记“|”,socket文件后面标记“=”。
-l 参数,以长格式来显示文件的详细信息。

例:
# ls -laF
# ls |more
列目录,使用管道和more命令分屏显示过多的内容。

五 备份与压缩命令

tar命令
x 参数,从档案文件中释放文件。
z 参数,用gzip来压缩/解压文件。
v 参数,显示文件的归档进度。
f 参数,使用档案文件或设备,这个选项通常是必选的。

例:
# tar xzvf NVIDIA-FreeBSD-x86-100.14.11.tar.gz

六 常用网络命令

1 配置网络

# ifconfig re0 inet 192.168.0.1 netmask 255.255.255.0 up
其中re0表示第一个以太网接口,inet表示这块网卡有一个Internet(inet)地址,设置本网络地址为192.168.0.1,子网掩码为255.255.255.0,up表示这块网卡已经配置完成准备工作。
也可以使用以下的命令进行配置。
# ifconfig re0 192.168.0.1
# ifconfig
显示当前网络的配置信息。

2 测试以太网卡

# ping 192.168.0.1
七 进程管理

例:
$ ps
表示查看进程及其状态。
$ ps waux
输出系统中所有的进程。
$ kill 829
终止进程标识号PID为829的进程。

八 查看命令的详细说明

# man ls
查看ls命令的详细说明。

九 文本编辑器

FreeBSD 的很多配置都可以通过编辑文本文件来完成,最容易学的而又简单的编辑器是ee编辑器。

例:
# ee /etc/rc.conf
表示编辑/etc/rc.conf文件。在ee的控制内,编辑器所有功能的操作方法都显示在最上方。 这个^ 字符代表 键盘上的Ctrl 键, 所以^e 就是 Ctrl+e组合键。假如想离开ee, 按Esc键,就可选择离开编辑器。当您修改了内容的时候,编辑器会提示您保存。

原文链接:http://luhuayan.blog.51cto.com/261482/53840