热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

浅析Linux的模块验证(2)

文章标题:浅析Linux的模块验证(2)。Linux是中国IT实验室的一个技术频道。包含桌面应用,Linux系统管理,内核研究,嵌入式系统和开源等一些基本分类

  方案一:通过SMB的SSH
  
  我们要建立的第一个方案将是经过调整的Linux服务器,这样通过安全外壳协议(SSH)连接至该服务器的任何服务都可以通过服务器消息块(SMB)进行验证,以便访问Windows服务器。虽然Windows NT 3.51、NT4、2000或XP服务器都可以,我们还是使用了微软的Windows 2000 Advanced Server。
  
  虽然SSH协议使用口令或证书密钥用来验证,但SMB验证只使用口令。我们把口令用于SSH会话。如果使用证书,SMB验证就不会参与验证过程。你可以使用能够识别PAM的任何SSH服务器,不过我们推荐随同Red Hat 7.2交付、已经集成到里面的OpenSSH服务器。
  
  为此,我们需要Red Hat Linux7.2系统默认状态下不包括的一个PAM模块(欲了解下载及编译该模块的信息,请见下面附文“PAM中的Windows Domain验证”以及SMB口令发问/应答验证)。
  
  “通过SMB口令发问/应答的SSH服务验证”显示了我们的设置。在Linux SSH服务器上,确保通过运行rpm -q openssh openssh-server指令来安装SSH服务器,指令输出结果应该如下:
  
  openssh-2.9p2-7
  openssh-server-2.9p2-7
  
  版本号会有所不同。
  
  只要编辑/etc/ssh/sshd_config文件,就可以配置SSH服务器,不过默认值应该可以接受。SSH协议使用口令或证书密钥用于验证。就这个例子而言,我们想要使用口令,但这也是SSH的默认值。
  
  我们安装并配置了pam_smb,然后编辑/etc/pam.d/sshd,以便内容类似“修改后的SSHD PAM配置”图(这样做只须添加一行,即最上头的auth行)。
   
  修改后的SSHD PAM配置
  
  我们指示PAM系统:如果出现SSH连接,应该首先利用SMB验证来证实SSH用户。如果Windows域接受提供的用户名/口令对,就允许用户访问。如果禁止,就根据系统验证配置进行验证。要是这也失败,就拒绝用户访问。SSH服务器经配置后,使用pam_smb模块作为验证的规则。
  
  最后,我们要为Linux服务器和Windows域添加用户。这种解决方案显然存在一个不足:我们提供的是企业可伸缩验证机制,而不是企业可伸缩帐号管理机制。
  
  我们必须设法确保:对Windows域的每个用户而言,Linux服务器上的是同一用户(见下面的附文“面向Unix的Windows 2000服务”)。我们将利用Windows上的User Manager、在Linux上运行useradd手工添加用户。你要为Windows域中的新用户帐号提供口令,但可能不需要为Linux帐号提供口令,因为该口令无法与Windows域口令保持同步。然而如果有Linux口令,可以作为应付万一Windows域拒绝口令的一种退路。
  
  用户通过SSH连接到Linux服务器后,用户的客户软件就会发送口令到服务器(通过加密隧道)。服务器连接到主域控制器(PDC)或后备域控制器(BDC),并要求名为SMBNegProt请求的验证协商。作为对SSH服务器的响应,PDC会发出SMBNegProt响应,里面包括口令发问。SSH服务器利用从用户处收到的口令,对SMBsesssetupX请求中的口令发问作出响应。
  
  如果用户在SSH连接开始时提供的口令与用户在Windows域中的一模一样,PDC就会发出确认性的SMBsesssetupX响应。SSH服务器收到确认性响应后,许可用户通过SSH继续登录到Linux服务器。口令永远不会以明文格式传输。
  
  方案二:通过Active Directory/Kerberos的POP/IMAP
  
  第二个方案就是配置Linux服务器,以便经由邮局协议(POP)或因特网消息访问协议(IMAP)电子邮件服务连接到Linux服务器的任何用户都可以通过Kerberos安全系统进行验证,从而访问Windows服务器。这使你可以在Windows域中建立Linux服务器从而使用电子邮件,而不需要购买基于Windows的电子邮件解决方案。几种电子邮件客户软件如微软的Outlook Express、网景的Messenger和高通的Eudora都可以进行配置,以便Linux服务器用于管理出站和入站电子邮件。这些客户软件甚至可以通过SSL与Linux服务器通信,确保口令的保密性。这只适用于Windows Active Directory域。"通过Kerberos的POP服务验证"图显示了我们的配置。
   
  通过Kerberos的POP服务验证
  
  注意:通过Active Directory/Kerberos域验证SSH连接,这完全同通过SMB域验证POP和IMAP连接一样简单。其实,其它任何验证机制同样简单(这体现了PAM的最终价值)。你恐怕需要以同样的机制验证Linux服务器提供的所有服务,无论是面向Windows 200以前版本的域的SMB验证,还是面向Windows 2000 Active Directory或面向Kerberos域的Active Directory/Kerberos验证。
  
  为此,我们需要名为pam_krb5的另一个PAM模块。为了确保它安装在Red Hat Linux 7.2系统上,请运行rmp -q pam_krb5命令,应该会得到结果:pam_krb5-1.46-1。
  
  然后我们要配置Linux服务器上的Kerberos,但首先需要一些信息。我们必须知道密钥分配中心(KDC),它含有Windows PDC的名字或IP地址。为了方便,我们把KDC命为pdc.domain.net。要是DNS服务器安全受危及,你会希望使用KDC的IP地址。我们还使用DNS服务器作为Kerberos管理服务器。
  
  我们还要知道区域名。区域相当于Windows Active Directory名的Kerberos,而Active Directory名又往往是DNS域名。Active Directory名并不总是与DNS域名一样,但在PDC启动时赞成使用。为了方便,区域取名为DOMAIN.NET(区域必须大写)。
  
  有了这些信息,可以编辑/etc/krb5.conf文件,该文件里面含有多个分段。每个分段用形式为[section_name]的分段名字符串加以描述。/etc/krb5.conf文件的分段数可能多于这里所列示的。如果这样的话,多余分段不用去管。修改或增添相应分段,以便内容类似“Linux服务器上的/etc/krb5.conf设置”。
  
  Linux服务器上的/etc/krb5.com设置
  
推荐阅读
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文介绍了在RHEL 7中的系统日志管理和网络管理。系统日志管理包括rsyslog和systemd-journal两种日志服务,分别介绍了它们的特点、配置文件和日志查询方式。网络管理主要介绍了使用nmcli命令查看和配置网络接口的方法,包括查看网卡信息、添加、修改和删除配置文件等操作。 ... [详细]
  •     这里使用自己编译的hadoop-2.7.0版本部署在windows上,记得几年前,部署hadoop需要借助于cygwin,还需要开启ssh服务,最近发现,原来不需要借助cy ... [详细]
  • 本文介绍了在rhel5.5操作系统下搭建网关+LAMP+postfix+dhcp的步骤和配置方法。通过配置dhcp自动分配ip、实现外网访问公司网站、内网收发邮件、内网上网以及SNAT转换等功能。详细介绍了安装dhcp和配置相关文件的步骤,并提供了相关的命令和配置示例。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • 树莓派Linux基础(一):查看文件系统的命令行操作
    本文介绍了在树莓派上通过SSH服务使用命令行查看文件系统的操作,包括cd命令用于变更目录、pwd命令用于显示当前目录位置、ls命令用于显示文件和目录列表。详细讲解了这些命令的使用方法和注意事项。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 本文介绍了通过ABAP开发往外网发邮件的需求,并提供了配置和代码整理的资料。其中包括了配置SAP邮件服务器的步骤和ABAP写发送邮件代码的过程。通过RZ10配置参数和icm/server_port_1的设定,可以实现向Sap User和外部邮件发送邮件的功能。希望对需要的开发人员有帮助。摘要长度:184字。 ... [详细]
author-avatar
吉樺雄_910
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有