007.iSCSI服务器CHAP双向认证配置
一 iSCSI和CHAP介绍
1.1 iSCSI 磁盘
- iSCSI后端存储支持多种设备类型,主要有:
- 文件
- 单一分区(partition)
- 磁盘
- 数组
- RAID
- LVM
1.2 CHAP介绍
1.2.1 initiator authentication认证
1.2.2 target authentication认证
1.2.3 单/双向认证
二 iSCSI创建步骤
- 建立用于共享的磁盘
- 创建后备磁盘
- 创建相应的IQN
- 创建相应的规则
- 为后备磁盘创建LUN
- 创建双向认证账号和密码
- 指定侦听的IP和端口
- 检查并保存配置
- 防火墙规则开放
- 服务(开机)启动
三 前置准备
3.1 环境准备
|
主机名
|
IP
|
备注
|
|
iscsi
|
172.24.8.72
|
iSCSI服务器
|
|
client
|
172.24.8.71
|
iSCSI客户端
|
3.2 查看裸磁盘
[root@iscsi ~]# fdisk -l Disk /dev/sdb: 1073 MB, 1073741824 bytes, 2097152 sectors
四 创建后备存储
4.1 安装相关软件
[root@iscsi ~]# yum -y install targetcli
4.2 交互设置
[root@system1 ~]# targetcli #进入targetcli交互配置视图
- block:定义的块设备,磁盘驱动器、磁盘分区、LVM等
- fileio:创建的指定大小的文件,如dd if=/dev/zero of=……所创建
- pscsi:物理SCSI,通常不采用此类型
- ramdisk:在内存中创建的一个指定大小ramdisk设备
提示:如上操作:
1:创建的ACL将分配到每个LUN。
2:创建LUN必须在TPG下。
3:若不指定端口将采用默认端口3260
4:若不指定IP,将允许服务器上定义的所有网络接口上的连接
5:创建LUN必须在TPG下
五 防火墙开放
[root@iscsi ~]# firewall-cmd --add-port=3260/tcp --permanent #防火墙添加iSCSI的端口
[root@iscsi ~]# firewall-cmd --add-service=iscsi-target --permanent #防火墙放通iSCSI target服务
[root@iscsi ~]# firewall-cmd --reload
六 开启服务
七 客户端配置
[root@client ~]# yum -y install iscsi-initiator-utils #安装客户端
[root@client ~]# vim /etc/iscsi/initiatorname.iscsi #配置CHAP认证
InitiatorName=iqn.2021-11.com.imxhy:client [root@client ~]# vim /etc/iscsi/iscsid.conf
……
node.session.auth.authmethod = CHAP
node.session.auth.username = user01
node.session.auth.password = u1pass
node.session.auth.username_in = muser01
node.session.auth.password_in = m1pass
discovery.sendtargets.auth.authmethod = CHAP
discovery.sendtargets.auth.username = discover
discovery.sendtargets.auth.password = discoverps
…… [root@client ~]# systemctl restart iscsid
八 客户端登录
8.1 发现目标
[root@client ~]# iscsiadm -m discovery -t sendtargets -p 172.24.8.72 #发现目标
172.24.8.72:3260,1 iqn.2022-11.com.imxhy:disk01
8.2 登录目标
[root@client ~]# iscsiadm -m node -T iqn.2022-11.com.imxhy:disk01 -p 172.24.8.72 -l #登录目标
8.3 查询信息
[root@client ~]# iscsiadm -m session -o show
tcp: [23] 172.24.8.72:3260,1 iqn.2022-11.com.imxhy:disk01 (non-flash)
[root@client ~]# iscsiadm -m session -P 3 #查询信息
iSCSI Transport Class version 2.0-870
version 6.2.0.874-22
Target: iqn.2022-11.com.imxhy:disk01 (non-flash)
Current Portal: 172.24.8.72:3260,1
Persistent Portal: 172.24.8.72:3260,1
**********
Interface:
**********
Iface Name: default
Iface Transport: tcp
Iface Initiatorname: iqn.2021-11.com.imxhy:client
Iface IPaddress: 172.24.8.71
Iface HWaddress: <empty>
Iface Netdev: <empty>
SID: 1
iSCSI Connection State: LOGGED IN
iSCSI Session State: LOGGED_IN
Internal iscsid Session State: NO CHANGE
*********
Timeouts:
*********
Recovery Timeout: 120
Target Reset Timeout: 30
LUN Reset Timeout: 30
Abort Timeout: 15
*****
CHAP:
*****
username: user01
password: ********
username_in: muser01
password_in: ********
************************
Negotiated iSCSI params:
************************
HeaderDigest: None
DataDigest: None
MaxRecvDataSegmentLength: 262144
MaxXmitDataSegmentLength: 262144
FirstBurstLength: 65536
MaxBurstLength: 262144
ImmediateData: Yes
InitialR2T: Yes
MaxOutstandingR2T: 1
************************
Attached SCSI devices:
************************
Host Number: 3 State: running
scsi3 Channel 00 Id 0 Lun: 0
Attached scsi disk sdb State: running [root@client ~]# iscsiadm -m node -o show
# BEGIN RECORD 6.2.0.874-22
node.name = iqn.2022-11.com.imxhy:disk01
node.tpgt = 1
node.startup = automatic
……
iface.transport_name = tcp
……
node.discovery_address = 172.24.8.72
node.discovery_port = 3260
node.discovery_type = send_targets
node.session.initial_cmdsn = 0
node.session.initial_login_retry_max = 8
node.session.xmit_thread_priority = -20
node.session.cmds_max = 128
node.session.queue_depth = 32
node.session.nr_sessions = 1
node.session.auth.authmethod = CHAP
node.session.auth.username = user01
node.session.auth.password = ********
node.session.auth.username_in = muser01
node.session.auth.password_in = ********
……
node.session.scan = auto
node.conn[0].address = 172.24.8.72
node.conn[0].port = 3260
…… # END RECORD [root@client ~]# fdisk -l #发现的iSCSI服务器三个共享
九 格式化并挂载
9.1 格式化并挂载
注意:
1:此时能当做本地磁盘使用,分区格式化等操作;
2:可使用RAID或LVM来进行操作,LVM的可在之后格式化LV。
[root@client ~]# mkfs.ext4 /dev/sdb #格式化相关iSCSI磁盘
[root@client ~]# mkdir -p /iscsdisk/sdb01 #创建用于挂载sdd磁盘的挂载点
[root@client ~]# mkdir -p /iscsdisk/lv01 #创建用于挂载LVM分区的挂载点
[root@client ~]# mount /dev/sdb /iscsdisk/sdb01/ #可直接挂载
[root@client ~]# vi /etc/fstab #自动挂载
……
/dev/sdb /iscsdisk/lv01 ext4 defaults 0 0
007.iSCSI服务器CHAP双向认证配置的更多相关文章
- Apache服务器SSL双向认证配置
以Win32版Apache与OpenSSL为例,介绍从创建数字证书到Apache配置的整个过程,希望对读者有所帮助. Apache是目前最流行的WEB服务器之一,借助OpenSSL库,我们可以在Apa ...
- nginx支持ssl双向认证配置
nginx支持ssl双向认证配置 listen 443; server_name test.com; ssl on; ssl_certificate server.crt; //server端公钥 s ...
- nginx配置SSL实现服务器/客户端双向认证
http://blog.csdn.net/kunoy/article/details/8239653 本人不才,配置了两天,终于搞出来了,结合网上诸多博文,特此总结一下! 配置环境: Ubuntu 1 ...
- https 单向认证和双向认证配置
HTTPS 是我们开发中经常用到的通信加密技术,能有效保护我们网络访问中的安全,本文主要讲解单向 和 双向 https 的配置.关于https 的实现原理在这里我就不赘述了,附上阮一峰老师的关于htt ...
- apache用户认证,ssl双向认证配置
安装环境: OS:contos 6.4 httpd:httpd-2.2.15-59.el6.centos.i686.rpm openssl:openssl-1.0.1e-57.el6.i686.rpm ...
- Toncat-OpenSSL双向认证配置(iOS)
OpenSSL生成证书 要生成证书的目录下建立几个文件和文件夹,有./demoCA/ ./demoCA/newcerts/ ./demoCA/private/ ./demoCA/index.txt ( ...
- webservice ssl双向认证配置
1.在tomcat中安装axis2插件 2.生成证书,用jdk自带的keytool 服务端 keytool -genkey -alias Server -dname "CN=192.168. ...
- Tomcat下HTTPS双向认证配置以及客户端调用案例
1:生成服务器端的keystore和truststore文件 (1)以jks格式生成服务器端包含Public key和Private Key的keystore文件 keytool -genkey -a ...
- SSL交互简述及nginx双向认证配置
一.证书生成. 1.SSL Server生成私钥/公钥对.server.key(加密)/server.pub(解密):2.server.pub生成请求文件server.csr,包含server的一些信 ...
随机推荐
- Java课程设计---实现登录(1)
1.新建登录窗口类:LoginView.java 以下是自动生成的代码 package com.system.view; import java.awt.BorderLayout; import ja ...
- 2020ICPC济南站 J.Tree Constructer
题目大意:给定一棵N个顶点的树,顶点为1~N,对于一个序列A1,A2,-,An,若Ai | Aj == 2^60-1,则会连一条边(i,j).要求求出一个序列,可以唯一确定所给定的树. 思路:考虑到树 ...
- PyTorch深度学习实践——处理多维特征的输入
处理多维特征的输入 课程来源:PyTorch深度学习实践--河北工业大学 <PyTorch深度学习实践>完结合集_哔哩哔哩_bilibili 这一讲介绍输入为多维数据时的分类. 一个数据集 ...
- 转 Autofac怎么依赖注入ASP.NET MVC5类的静态方法
之前我有介绍过怎么在ASP.NET mvc5中实现的Controller的依赖注入.一般是通过Contrller的构造函数的参数或者属性来注入,但是这有一个共同点就是调用这个类的方法一般都是实例方法, ...
- qt日常积累
http://blog.sina.com.cn/s/blog_b8bcba160102yyi3.html
- HelloWorld:通过demo,构建黑盒模型
在<源码阅读四步走,这才是阅读源码的正确姿势>一文中,给出了源码阅读的完整步骤. 本篇是<如何高效阅读源码>专题的第四篇,正式开始讲解阅读源码的具体方法! 程序界有个老传统,学 ...
- GAN实战笔记——第七章半监督生成对抗网络(SGAN)
半监督生成对抗网络 一.SGAN简介 半监督学习(semi-supervised learning)是GAN在实际应用中最有前途的领域之一,与监督学习(数据集中的每个样本有一个标签)和无监督学习(不使 ...
- 5. Java方法
5.Java方法 1.何谓方法 Java方法是语句的集合,它们在一起执行一个功能. 方法是解决一类问题的步骤的有序组合 方法包含于类或对象中 方法在程序中被创建,在其他地方被引用 设计方法的原则:方法 ...
- Ajax结合THymeleaf使用
<script type="text/javascript"> //通过$("标签"),也可以使用id的点击事件 $("a"). ...
- 解决vue单页面应用做微信JSSDK注入权限时出现“invalid signature”(ios端)
--都说微信开发多坑,没想到遇到一个天坑. 在做一个vue项目时,要用到微信JS-SDK,官方文档详见:https://developers.weixin.qq.com/doc/offiaccount ...