tcpwrappers 和 加密

Posted on Posted in linux

tcpwrappers

# 两个配置文件
/etc/hosts.allow
/etc/hosts.deny

client -> sshd

  • 检查 hosts.allow 如果有放行,如果没有 hosts.deny,如果都没有,默认放行allow
  • hosts.allow 优先,有直接放行,不检查 hosts.deny。如果没有,再检查 hosts.deny。

安装

[root@localhost ~]# yum provides /etc/hosts.allow # 查看这个文件是哪个包提供的
[root@localhost ~]# ldd `which vsftpd` | grep wrap
    libwrap.so.0 => /lib64/libwrap.so.0 (0x00007f1b9eee7000)
[root@localhost ~]# ldd `which sshd` | grep wrap # 检查是否有wrap库,有就是服务 sshd 支持 tcpwrappers
    libwrap.so.0 => /lib64/libwrap.so.0 (0x00007fcbaaf76000)
[root@localhost ~]# cat /etc/hosts.deny
vsftpd: 192.168.1.100 
# 写法, 服务名: IP或网段
# vsftpd: ALL
# vsftpd: 192.168.1.
# vsftpd: 192.168.1.0/255.255.255.0 EXCEPT 192.168.1.4
# vsftpd: ALL : spawn /bin/echo `date` %c >> /var/log/wrapp.log 做日志记录 %c 为客户端IP

加密算法

  • 对称加密 : 加密解密使用同一把钥匙,加密速度快,容易泄漏。AES/DES/3DES
  • 非对称加密:一对密钥(公私),一般,公钥用来加密,私钥用来解密,安全性高,效率低。DSA/RSA
# 对称算法
[root@localhost ~]# openssl enc --help # 查看支持的加密算法
[root@localhost ~]# openssl enc -e -des3 -a -in /etc/passwd -out /root/passwd.des3  # -e 指定加密算法,-a 使用base64编码
[root@localhost ~]# openssl enc -d -des3 -a -in /root/passwd.des3 -out /root/passwd.des3-ok # 解密

# 非对称算法
[root@localhost ~]# yum -y install gpg
[root@localhost ~]# gpg --gen-key # 生成密钥
gpg (GnuPG) 2.0.22; Copyright (C) 2013 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

gpg: 已创建目录‘/root/.gnupg’
gpg: 新的配置文件‘/root/.gnupg/gpg.conf’已建立
gpg: 警告:在‘/root/.gnupg/gpg.conf’里的选项于此次运行期间未被使用
gpg: 钥匙环‘/root/.gnupg/secring.gpg’已建立
gpg: 钥匙环‘/root/.gnupg/pubring.gpg’已建立
请选择您要使用的密钥种类:
   (1) RSA and RSA (default)
   (2) DSA and Elgamal
   (3) DSA (仅用于签名)
   (4) RSA (仅用于签名)
您的选择? 
RSA 密钥长度应在 1024 位与 4096 位之间。
您想要用多大的密钥尺寸?(2048)4096
您所要求的密钥尺寸是 4096 位
请设定这把密钥的有效期限。
         0 = 密钥永不过期
      <n>  = 密钥在 n 天后过期
      <n>w = 密钥在 n 周后过期
      <n>m = 密钥在 n 月后过期
      <n>y = 密钥在 n 年后过期
密钥的有效期限是?(0) 
密钥永远不会过期
以上正确吗?(y/n)y

You need a user ID to identify your key; the software constructs the user ID
from the Real Name, Comment and Email Address in this form:
    "Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>"

真实姓名:liuhonghe
电子邮件地址:i@liuhonghe.me
注释:liuhongheRSA
您选定了这个用户标识:
    “liuhonghe (liuhongheRSA) <i@liuhonghe.me>”

更改姓名(N)、注释(C)、电子邮件地址(E)或确定(O)/退出(Q)?o
您需要一个密码来保护您的私钥。

我们需要生成大量的随机字节。这个时候您可以多做些琐事(像是敲打键盘、移动
鼠标、读写硬盘之类的),这会让随机数字发生器有更好的机会获得足够的熵数。

~/.gnupg/pubring.gpg 公钥
~/.gnupg/secring.pgg 私钥

## 把公钥传到另一台机器上,在另一台机器操作
[root@localhost ~]# gpg --list-keys # 建立基本目录
[root@localhost ~]# gpg --import /root/pubring.gpg
[root@localhost ~]# gpg --list-keys
[root@localhost ~]# echo "other" > /root/a.txt
[root@localhost ~]# gpg -ear liuhonghe a.txt # liuhonghe 为gpg的uuid
## 在原来的机器上解密
[root@localhost ~]# gpg -dar liuhonghe -o b a.txt.asc

» 转载请注明来源:若我若鱼 » tcpwrappers 和 加密

Leave a Reply

Your email address will not be published. Required fields are marked *

7 + 4 =