1、 创建私有CA并进行证书申请。
(1)创建CA所需要的文件
touch /etc/pki/CA/index.txt
echo 01 > /etc/pki/CA/serial
(2)生成CA私钥
umask 066; openssl genrsa -out private/cakey.pem 2048
(3)给CA颁发自签名证书
openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -days 3650 -out /etc/pki/CA/cacert.pem
查看证书:
openssl x509 -in /etc/pki/CA/cacert.pem -noout –text
(4)用户生成私钥和证书申请
mkdir /data/app1
umask 066; openssl genrsa -out /data/app1/app1.key 2048
用户证书申请:
openssl req -new -key /data/app1/app1.key -out /data/app1/app1.csr
5)颁发证书
openssl ca -in /data/app1/app1.csr -out /etc/pki/CA/certs/app1.crt -days 1000
(6)将证书相关文件发送到用户端使用
cp /etc/pki/CA/certs/app1.crt /data/app1/
2、 总结ssh常用参数、用法
ssh命令是ssh客户端,允许实现对远程系统经验证地加密安全访问。ssh客户端配置文件是:/etc/ssh/ssh_config
ssh命令配合的常见选项:
-p port:远程服务器监听的端口
ssh 192.168.1.8 -p 2222
-b 指定连接的源IP
ssh 192.168.1.8 -p 2222 -b 192.168.1.88
-v 调试模式
ssh 192.168.1.8 -p 2222 -v
-C 压缩方式
-X 支持x11转发
支持将远程linux主机上的图形工具在当前设备使用
-t 强制伪tty分配,如:ssh -t remoteserver1 ssh -t remoteserver2 ssh
remoteserver3
-o option 如:-o StrictHostKeyChecking=no
-i
~/.ssh/id_ecdsa, /.ssh/id_ed25519,/.ssh/id_rsa等
3、总结sshd服务常用参数。
服务器端的配置文件: /etc/ssh/sshd_config
常用参数:
Port #端口号
ListenAddress ipLoginGraceTime 2m #宽限期
PermitRootLogin yes #默认ubuntu不允许root远程ssh登录
StrictModes yes #检查.ssh/文件的所有者,权限等
MaxAuthTries 6
MaxSessions 10 #同一个连接最大会话
PubkeyAuthentication yes #基于key验证
PermitEmptyPasswords no #空密码连接
PasswordAuthentication yes #基于用户名和密码连接
GatewayPorts no
ClientAliveInterval 10 #单位:秒
ClientAliveCountMax 3 #默认3
UseDNS yes #提高速度可改为no
GSSAPIAuthentication yes #提高速度可改为no
MaxStartups #未认证连接最大值,默认值10
Banner /path/file
AllowUsers user1 user2 user3
DenyUsers
AllowGroups
ssh服务的最佳实践
建议使用非默认端口
禁止使用protocol version 1
限制可登录用户
设定空闲会话超时时长
利用防火墙设置ssh访问策略仅监听特定的IP地址
基于口令认证时,使用强密码策略,比如:tr -dc A-Za-z0-9_ < /dev/urandom | head -c 12|
xargs
使用基于密钥的认证
禁止使用空密码
禁止root用户直接登录
限制ssh的访问频度和并发在线数
经常分析日志
4、搭建dhcp服务,实现ip地址申请分发
1).服务器端安装DHCP服务
yum install dhcp
2).将DHCP配置模板 dhcpd.conf.sample 复制到 /etc/dhcp/ 下,替换dhcpd.conf
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
3).设置DHCP服务开机启动
chkconfig dhcpd on
4).配置文件更改
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.100 192.168.0.200;
option domain-name-servers 192.168.0.1;
option domain-name “internal.example.org”;
option routers 192.168.0.1;
option broadcast-address 192.168.8.255;
default-lease-time 600;
max-lease-time 7200;
host xuegod63 { #这一段内容,要写在subnet字段中,和subnet配合使用。
hardware ethernet 00:0C:29:12:ec:1e;
fixed-address 192.168.0.251;
}
}
5).DHCP服务启动
service dhcpd start
6).客户端将网卡 eth0 和 eth1 配置为DHCP方式获取IP。
7).重启网络服务
service network restart
8).查看是否通过DHCP自动获取IP,同时eth0 的IP是否绑定为 192.168.8.2