一:
对磁盘进行加密:
yum install cryptsetup -y
cryptsetup luksFormat /dev/sdh
设置密码
cryptsetup luksOpen /dev/sdh data (data为给/dev/sdh起的名字)
然后就生成了 /dev/mapper/data 以后打开之后就使用这个
创建文件系统:
mkfs -t ext3 /dev/mapper/data
挂载使用: mount /dev/mapper/data /opt/soft
用完: umount /opt/soft
cryptsetup luksClose /dev/mapper/data或者data
可以指定多个密码,密码可以设置文件密码,可以是图片之类的
在/下有一个my.png的图片 把它设为密码
cryptsetup -S 3 luksAddKey /dev/sdh /my.png -S 代表制定插入的槽
用这个密码打开:
cryptsetup -d /my.png luksOpen /dev/sdh data
查看有几个密码以及槽 :
crpytsetup luksDump /dev/sdh
增加密码:
cryptsetup luksAddKey /dev/sdh
或者指定增加在哪个槽里:
cryptsetup -S 4 luksAddKey /dev/sdh
删除密码:
cryptsetup luksRemoveKey /dev/sdh
然后输入要删除的密码
或者删除哪个槽里的密码:
cryptsetup luksKillSlot /dev/sdh 1
设置开机自动Open 以及自动挂载
vim /etc/crypttab
data /dev/sdh /my.png (第一个是设备名字,第二个是设备,第三个是设备的文件密码)
保存退出
vim /etc/fstab
/dev/mapper/data /mnt ext3 defaults 0 0
保存退出
二:给rpm签名:
vim ~/.rpmmacros
%_gpg_name 37A71D51(代表key的uid)
保存退出
1:在制作rpm包的时候就签名
rpmbuild -bb --sign ~/rpmbuild/SPCES/hello.spec
2:rpm包已经制作好了再签名:
rpm --addsign xb.0.10.rpm 或者 rpm --resign xb.0.10.rpm
将public key 导出:
gpg -a -o tom.pub.txt --export 37A71D51
将public key 导入仓库:
rpm --import tom.pub.txt
查看public key :
rpm -qa | grep pubkey
或者在 /etc/yum.repo.d/iso.repo 里面 加入:
gpgcheck=1
gpgkey=/opt/soft/tom.pub.txt (这里写pubkey的绝对路径)
三:加密
对称加密:zip -e pgp -c abc.txt
vim 对文件加密 :X(冒号大X)
非对称加密:gpg
生成gpg密钥: 用ssh生成,不用su,不然会出错
gpg --gen-key
gpg -k 查看公钥信息
gpg -K 查看私钥信息
导出公钥:
gpg -o tom.pub --export 05F03215(代表uid) 二进制的 -o 指定导出的内容放到哪里
gpg -a -o tom.pub --export 05F03215 明文的 -a 代表导出内容为明文的
nacy将tom的公钥导入:
gpg --import tom.pub
使用tom的pubkey对abc.txt文件进行加密:
gpg -o abc.txt.secret -e -r "tom@up.com" abc.txt
加密的同时签名: gpg -o abc.txt.secret -se -r "tom@up.com" abc.txt
明文加密:gpg -a -o abc.txt.secret -e -r "tom@up.com" abc.txt
tom 解密:gpg -o abc.txt2 -d abc.txt.secret
删除key: gpg --delete key
编辑公钥匙: gpg --edit-key
从服务器上搜索公钥:gpg --search-keys
gpg --recv-keys 下载key并自动导入
上传key到服务器:gpg --send-keys
对公钥进行签名:gpg --sign-key
对文件进行签名: gpg -s xyz.txt
明文签名并且保留文件内容:
gpg -o xyz.txt.plain --clearsign -s xyz.txt 这里可以不用加-a 也是明文的
验证签名: gpg --verify abc.asc abc.tar.gz
当签名文件的名字和包的名字相同时可以直接这样: gpg --verify abc.asc
独立文件和签名,生成单独的签名文件:
gpg --detach-sign
!!!!公钥用来加密,私钥用来签名。