1、创建私有CA并进行证书申请。

配置文件存放路径 /etc/pki/tls/openssl.cnf

[ CA_default ]

dir		= /etc/pki/CA		# Where everything is kept
certs = $dir/certs # Where the issued certs are kept
crl_dir = $dir/crl # Where the issued crl are kept
database = $dir/index.txt # database index file.
#unique_subject = no # Set to 'no' to allow creation of
# several ctificates with same subject.
new_certs_dir = $dir/newcerts # default place for new certs. certificate = $dir/cacert.pem # The CA certificate
serial = $dir/serial # The current serial number
crlnumber = $dir/crlnumber # the current crl number
# must be commented out to leave a V1 CRL
crl = $dir/crl.pem # The current CRL
private_key = $dir/private/cakey.pem# The private key
RANDFILE = $dir/private/.rand # private random number file

创建CA所需要的文件

#生成证书索引数据库文件
touch /etc/pki/CA/index.txt
#指定第一个颁发证书的序列号
echo 01 > /etc/pki/CA/serial

生成CA私钥

cd /etc/pki/CA/
(umask 066; openssl genrsa -out private/cakey.pem 2048)

生成CA自签名证书

# openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -days 3650 -out /etc/pki/CA/cacert.pem

[root@localhost CA]# openssl x509 -in cacert.pem -noout -text
将证书文件的base64编码转换为一个易读的格式查看证书文件

将证书文件cacert.pem传至windows桌面,修改文件名为cacert.pem.crt,双击可以看到下面显示

[root@localhost CA]# sz cacert.pem

用户生成私钥和证书申请

生成私钥

[root@localhost data]# mkdir app1
[root@localhost app1]# (umask 066; openssl genrsa -out /data/app1/app1.key 2048)
Generating RSA private key, 2048 bit long modulus
....+++
................................................................................................................................................+++
e is 65537 (0x10001)

生成证书申请文件

[root@localhost app1]# openssl req -new -key /data/app1/app1.key -out  /data/app1/app1.csr

CA颁发证书

[root@localhost app1]# openssl ca -in /data/app1/app1.csr -out  /etc/pki/CA/certs/app1.crt -days 1000

验证指定编号对应证书的有效性

[root@localhost app1]# openssl ca -status 01
Using configuration from /etc/pki/tls/openssl.cnf
01=Valid (V)

导出CA证书

至此CA颁发证书的整个过程已经完成

2、总结ssh常用参数、用法

常见参数:

  • -p port #远程服务器监听的端口
  • -b #指定连接的源IP
  • -v #调试模式
  • -C #压缩方式
  • -X #支持x11转发
  • -t #强制伪tty分配,如:ssh -t remoteserver1 ssh -t remoteserver2 ssh remoteserver3

用法:

ssh命令是ssh客户端,允许实现对远程系统经验证地加密安全访问。ssh客户端配置文件是:/etc/ssh/ssh_config

ssh命令配合的常见选项:

-p port:远程服务器监听的端口

ssh 192.168.42.200 -p 2222

-b 指定连接的源IP

ssh 192.168.42.200 -p 2222 -b 192.168.42.5

-v 调试模式

ssh 192.168.42.200 -p 2222 -v

-C 压缩方式

-X 支持x11转发

支持将远程linux主机上的图形工具在当前设备使用

-t 强制伪tty分配,如:ssh -t remoteserver1 ssh -t remoteserver2   ssh  remoteserver3

ssh -t 192.168.42.201 ssh -t 192.168.42.202 ssh 192.168.42.200

-o option   如:-o StrictHostKeyChecking=no

-i <file> 指定私钥文件路径,实现基于key验证,默认使用文件: ~/.ssh/id_dsa, ~/.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

4、搭建dhcp服务,实现ip地址申请分发

注:DHCP服务的软件:

dhcp(CentOS 7 之前版本) 或 dhcp-server(CentOS 8 中的包名)

本实验在centos7完成

  • 安装软件包
yum install -y dhcp 或 yum install -y dhcp-server (centos8)
  • 修改配置文件
[root@localhost ~]# cp  /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example  /etc/dhcp/dhcpd.conf

vim /etc/dhcp/dhcpd.conf
option domain-name "example.org";
option domain-name-servers 180.76.76.76, 114.114.114.114; #DNS服务 default-lease-time 86400; #地址租期
max-lease-time 106400; #地址最大租期 subnet 192.168.42.0 netmask 255.255.255.0 {
range 192.168.42.100 192.168.42.120; #地址池
option routers 192.168.42.1; #网关
} 注:将地址与MAC地址进行绑定
host test {
hardware ethernet 00:0c:29:b1:39:7a;
fixed-address 192.168.42.125;
}

  • 重启服务
systemctl restart dhcpd
  • 客户端网卡配置
[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
# Generated by dracut initrd
NAME="eth0"
DEVICE="eth0"
ONBOOT=yes
NETBOOT=yes
UUID="71bb1423-8fef-4074-88fd-30cb062bdde7"
IPV6INIT=yes
BOOTPROTO=dhcp
TYPE=Ethernet
  • 获取地址
dhclient -d

  • 查看获取到的地址

linux作业--第八周的更多相关文章

  1. bug终结者 团队作业第八周

    bug终结者 团队作业第八周 本次任务 素材提供及编辑:20162328 蔡文琛 博客修改完善:20162322 朱娅霖 "bug终结者" 宏伟蓝图 UML 手绘底稿 用例图 选项 ...

  2. 20135302魏静静——linux课程第八周实验及总结

    linux课程第八周实验及总结 实验及学习总结 1. 进程切换在内核中的实现 linux中进程切换是很常见的一个操作,而这个操作是在内核中实现的. 实现的时机有以下三个时机: 中断处理过程(包括时钟中 ...

  3. 补交作业-第八周PSP

    一.表格 C(分类) C(内容) S(开始时间) ST(结束时间) I(打断时间) △(净工作时间) 讨论 用户界面 9:30 10:40 15 55 编码 编码 13:20 16:30 10 180 ...

  4. Linux内核分析作业第八周

    进程的切换和系统的一般执行过程 一.进程调度的时机 中断处理过程(包括时钟中断.I/O中断.系统调用和异常)中,直接调用schedule(),或者返回用户态时根据need_resched标记调用sch ...

  5. linux作业--第五周

    1.简述osi七层模型和TCP/IP五层模型 一.OSI参考模型 (1) OSI的来源 OSI(Open System Interconnect),即开放式系统互联. 一般都叫OSI参考模型,是ISO ...

  6. linux作业--第三周

    1.统计出/etc/passwd文件中其默认shell为非/sbin/nologin的用户个数,并将用户都显示出来 [root@localhost ~]# cat /etc/passwd | grep ...

  7. Linux入门-第八周

    1.用shell脚本实现自动登录机器 #!/usr/bin/expectset ip 192.168.2.192set user rootset password rootspawn ssh $use ...

  8. linux作业--第十一周

    1. 导入hellodb.sql生成数据库 (1) 在students表中,查询年龄大于25岁,且为男性的同学的名字和年龄 (2) 以ClassID为分组依据,显示每组的平均年龄 (3) 显示第2题中 ...

  9. linux作业--第十周

    1.在阿里云服务器搭建openv-p-n(有条件的同学再做) 2.通过编译.二进制安装MySQL5.7 编译安装MySQL5.7 安装相关包 yum -y install libaio numactl ...

随机推荐

  1. Luogu P1438无聊的数列

    洛谷 P1438无聊的数列 题目链接 点这里! 题目描述 维护一个数列\(a_i\),支持两种操作: 给出一个长度等于 \(r-l+1\)的等差数列,首项为\(k\) 公差为\(d\) 并将它对应加到 ...

  2. Redis 学习笔记(四)RDB 和 AOF 持久化机制

    一.Redis 持久化简介 Redis 的持久化功能是区别于 Memcached 显著特性,数据持久化可以保证系统在发生宕机和重启后数据不会丢失,对于 redis 这种存储在内存中的数据库显得尤为重要 ...

  3. wget: unable to resolve host address ‘dl.grafana.com’的解决方法

    [root@Server-qnrsyp system]# wget --no-check-certificate https://dl.grafana.com/oss/release/grafana_ ...

  4. Android动态加载布局之LayoutInflater【转】

    万分感谢大佬:https://www.jianshu.com/p/6a235ba5ee17 深入了解View<一>之Android LayoutInfalter原理分析 下文为:Layou ...

  5. Shell编程中的用户输入处理

    Linux read命令用于从标准输入读取数值. read 内部命令被用来从标准输入读取单行数据.这个命令可以用来读取键盘输入,当使用重定向的时候,可以读取文件中的一行数据. 语法 read [-er ...

  6. CSS:第1课

    CSS选择器有:id选择器.派生选择器 1.id选择器 id 选择器可以为标有特定 id 的 HTML 元素指定特定的样式. id 选择器以 "#" 来定义. #red {colo ...

  7. Kubernetes 集群和应用监控方案的设计与实践

    目录 Kubernetes 监控 监控对象 Prometheus 指标 实践 节点监控 部署 Prometheus 部署 Kube State Metrics 部署 Grafana 应用如何接入 Pr ...

  8. Pandas之groupby分组

    释义 groupby用来分组,调用groupby 之后返回pandas.core.groupby.generic.DataFrameGroupBy,其实就是由一个个格式为(key, 分组后的dataf ...

  9. https校验问题

    一般会报SSL问题:解决办法参考 http://blog.csdn.net/a506681571/article/details/78284589 # 设置未经允许验证的SSL方法,只需运行一次便可 ...

  10. Spring Security 介绍

    Spring Security介绍 开源 提供企业级的安全认证和授权 Spring安全拦截器 认证管理器 认证模式 Basic HTTP 1.0中使用的认证方法,使用用户名和密码Base64编码的方式 ...