redhat 7实现基于chap认证的iscsi,包括发现认证,和正常认证。

实验环境:两台虚拟机,系统为redhat7.0以上(本文使用redhat 7.5)
第一台虚拟ip地址为ip:192.168.0.118/24 gw:192.168.0.1 hostname:target.zhuxu.co ---主机名很关键。
第二台虚拟机ip地址为192.168.0.119/24 gw:192.168.0.1 hostname:initiator.zhuxu.co
两台虚拟机配置好yum 源。

一,target 服务器端配置
1,修改主机名为target.zhuxu.co(修改完成后断开,重新连接)

2,安装所需要的软件包

3,设置target开机自动启动和启动target
4,防火墙放行target 监听端口(默认为3260/tcp)

5,targetcli命令有两种模式,一种是交互式模式,一种是命令行模式。输入targetcli 回车就进入交互式模式,进入交互式模式可以使用ls,pwd,cd等命令
i
本文以交互式做介绍,附带命令行的写法:targetcli ls
注解:后端存储介绍
o- backstores ...........
| o- block .......block:块设备,b,可以是磁盘驱动器,分区,逻辑卷,多路径设备,只要块设备都可以。
| o- fileio ......文件(镜像img),根据一个事先准备的文件,提供存储功能.
| o- pscsi ......物理scsi设备,不推荐使用
| o- ramdisk .....内存存储,利用内存当做存储。

5,创建物理磁盘结构作为target后端的物理存储(事先已经创建好了一个100M LV做备用)



命令行的实现:
targetcli /backstores/block create name=datastore dev= /dev/iscsi_vg/iscsi_lv
6,为target server 创建IQN,自动创建一个默认的target portal.
注解:iqn的命令规则:iqn.yyyy-MM.域名反向书写:自定义
例如:iqn.2018-08.co.zhuxu:target---用主机名作标识好记忆。

命令行实现:
targetcli /iscsi create iqn.2018-08.co.zhuxu:target
7,为target server portal创建一个网络监听信息{portal} 以发现target


命令实现:
targetcli /iscsi/iqn.2018-08.co.zhuxu:target/tpg1/portals delete 0.0.0.0 3260
targetcli /iscsi/iqn.2018-08.co.zhuxu:target/tpg1/portals create 192.168.0.118
8,创建LUM代表设备(LUN关联后端存储)

命令实现:
targetcli /iscsi/iqn.2018-08.co.zhuxu:target/tpg1/luns create /backstores/block/datastore
9,配置ACL(可以不用配置,也可以使用)
ACL(访问控制列表)必须要和initiator端/etc/iscsi/initiatorname.iscsi里iqn名字保持一致。否则拒绝访问。
ACL默认是关闭的,需要手动开启。通过设置generate_node_acls={0|1}


命令实现:
targetcli /iscsi/iqn.2018-08.co.zhuxu:target/tpg1/acls create iqn.2018-08.co.zhuxu:initiator

targetcli /iscsi/iqn.2018-08.co.zhuxu:target/tpg1 set attribute generate_node_acls=1

target服务器端配置完成。

客户端配置
1,修改主机名为initiator.zhuxu.co

2,查看iscsi-initiator-utils软件包有没有安装(默认是安装的)如果没有安装yum install -y iscsi-initiator-utils 安装即可

3,开启iscsi服务,开启开机自启动。

4,修改iqn

5,发现target 的iscsi设备。

发现的target 信息会保存在/var/lib/iscsi/node 目录下
注解:
iscsiadm iscsi的管理程序

-m --mode指定模式,发现为discovery,登陆为node节点模式,session

-l --login登陆

-t --type 一般为sendtarget,简写为st

-o --op=op 指定选项,new delete update show nonpersistent

可以用-o delete 对已存在的node进行删除

-p --portal 指定入口 可以为IP地址或者域名

-P n 指定输出详细信息,[0|1|2|3],有四种格式可选

-u --logout 登出

-T --targetname=targetanme 指定要使用的服务器端的target名称,有时候服务器端创建了多个target,iqn.2015-10.com.example:

6,登录target

此时,fdisk -l 会发现多出来一块磁盘。你可以对着磁盘分区,格式化挂载等操作。
7,登出target(临时取消对target的iscsi的访问,如果重启服务,依然能发现有一块磁盘)

8,如果不想访问target的iscsi设备(如果在重启服务,则不会出现发现的磁盘)

实际上这条命令就是删除/var/lib/iscsi/node/目录下对应的信息。



配置chap认证
target服务器端
1,配置发现认证discovery authentication
1.1单向认证(target服务器认证initiator)

1.2双向认证(target服务器端和inititor客户端互相认证)

initiator客户端
1,配置发现认证discovery authentication
1.1单向认证配置

1.2双向认证配置

2.normal 认证
target服务器端配置
normal认证和discovery认证类似。都分为单向认证和双向认证。
配置方法:

initiator客户端配置

原文地址:http://blog.51cto.com/zhuxu91313/2154819

时间: 2024-10-11 02:09:53

redhat 7实现基于chap认证的iscsi,包括发现认证,和正常认证。的相关文章

基于ip san的iscsi操作实现过程

SAN是storage area network(存储区域网络)的简写,早期的san采用的是光纤通道技术,后期当iscsi协议出现以后,为了区分两者,就划分了IP SAN和FC SAN.FC SAN由于其昂贵的价格让许多企业退避三舍,IP SAN作为一个很好的代替产品出现在了人们的视线中.现在大部分存储设备提供支持基于TOE技术的接口,可以在硬件基础上处理TCP/IP协议.这意味着ISCSI设备可以处理速度已接近GigE.约100MB/秒的数据传输速率来处理I/O进程,其速率可与FC SAN的相

基于http协议的api接口对于客户端的身份认证方式以及安全措施[转]

基于http协议的api接口对于客户端的身份认证方式以及安全措施 由于http是无状态的,所以正常情况下在浏览器浏览网页,服务器都是通过访问者的cookie(cookie中存储的jsessionid)来辨别客户端的身份的,当客户端进行登录服务器也会将登录信息存放在服务器并与客户端的cookie中的jsessionid关联起来,这样客户端再次访问我们就可以识别用户身份了. 但是对于api服务器,我们不能让访问者先登录再进行访问这样不安全,也不友好.所以一般情况我们都是需要客户端提供一个key(每个

基于Google 验证器 实现内网的双因素认证

最近的一个项目需要实现双因素强认证,平常我们都是采用 静态密码+动态短信这样的方式来实现,但用户侧并没有相应的短信接口. 后来决定采用 google身份验证器来实现.在网上找了一些资料和代码片段,经过梳理和改造,目前已上线使用了,效果还是比较好的,记录一下,也给需要的朋友做个参考. 首先简述一下双因素认证:双因素身份认证就是通过你所知道再加上你所能拥有的这二个要素组合到一起才能发挥作用的身份认证系统.双因素认证是一种采用时间同步技术的系统,采用了基于时间.事件和密钥三变量而产生的一次性密码来代替

django的RBAC认证z;自定义auth_user表;认证组件权限组件源码分析;认证组件;权限组件

一 RBAC 1.RBAC:全称(Role-Based Access Control):指的是基于用户权限访问控制的认证. 2.Django框架采用的是RBAC认证规则,RBAC认证规则通常会分为:三表规则,五表规则:Django采用的是六表规则. # 三表:用户表.角色表.权限表# 五表:用户表.角色表.权限表.用户角色关系表.角色权限关系表# 六表:用户表.角色表.权限表.用户角色关系表.角色权限关系表.用户权限关系表 3.在Django中六表之间是都是多对多的关系,可通过下面字段跨表访问

JWT 认证 签发与校验token 多方式登陆 自定义认证规则反爬 admin密文显示

一 .认证方法比较 1.认证规则图 django 前后端不分离 csrf认证 drf 前后端分离 禁用csrf 2. 认证规则演变图 数据库session认证:低效 缓存认证:高效 jwt认证:高效 3. 认证比较 """ 1)session存储token,需要数据库参与,耗服务器资源.低效 2)缓存存token,需要缓存参与,高效,不易集群 3)客户端存token,服务器存签发与交易token的算法,高效,易集群 """ 缓存认证: 不易并发

Android 如何开启与关闭adb 的认证机制(google adb secure) (adb RSA 指纹认证)

前言 欢迎大家我分享和推荐好用的代码段~~ 声明          欢迎转载,但请保留文章原始出处: CSDN:http://www.csdn.net 雨季o莫忧离:http://blog.csdn.net/luckkof 正文 [Description] 如何开启与关闭adb 的认证机制(google adb secure) [Keyword] adb secure , ro.adb.secure , adb RSA 指纹认证 [Solution] MTK 版本默认关闭adb 的地址认证机制,

【转帖】基于Zookeeper的服务注册与发现

http://www.techweb.com.cn/network/hardware/2015-12-25/2246973.shtml 背景 大多数系统都是从一个单一系统开始起步的,随着公司业务的快速发展,这个单一系统变得越来越庞大,带来几个问题: 1. 随着访问量的不断攀升,纯粹通过提升机器的性能来已经不能解决问题,系统无法进行有效的水平扩展 2. 维护这个单一系统,变得越来越复杂 3. 同时,随着业务场景的不同以及大研发的招兵买马带来了不同技术背景的工程师,在原有达达Python技术栈的基础

thinkphp Auth认证类 比RBAC更好的权限认证方式(Auth类认证)

thinkphp Auth认证类 比RBAC更好的权限认证方式(Auth类认证) Auth 类已经在ThinkPHP代码仓库中存在很久了,但是因为一直没有出过它的教程, 很少人知道它, 它其实比RBAC更方便 . RBAC是按节点进行认证的,如果要控制比节点更细的权限就有点困难了,比如页面上面的操作按钮, 我想判断用户权限来显示这个按钮, 如果没有权限就不会显示这个按钮: 再比如我想按积分进行权限认证, 积分在0-100时能干什么, 在101-200时能干什么. 这些权限认证用RABC都很困难.

Redhat 5 搭建基于 ftp 的 yum 服务器

YUM是Yellow dog Updater, Modified的缩写,是由Duke University所发起的计划,目的就是为了解决RPM的依赖关系的问题,方便使用者进行软件的安装.升级等等工作.在此在特别说明的是,YUM只是为了解决RPM的依赖关系的问题,而不是一种其它的软件安装模式.而在redhat系统中未经授权是无法使用yum的,这里就介绍一种利用redhat光盘搭建本地yum服务器的方法. 系统环境:  Red Hat 5.9 Server IP: 192.168.100.211 C