转自:http://blog.163.com/guaiguai_family/blog/static/200784145201111138211933/
【抛了三块砖,引来两床沙发。。。。各位有啥想法请不吝赐教!】一个局域网里头,机器正常开机最可能先接触的网络服务应该就是 DHCP 了,所以从它开刀是很自然的了,搭配 FAI 还可以 PXE 安装系统,不过在局域网里试验 DHCP 太容易冲突了,而且看 isc-dhcp-server 有个支持 ldap 的版本,dhcp
还有自动更新 dns 记录的功能,所以放到后面再鼓捣。局域网里有个 DNS 服务器会很方便,不用记住 IP 了,如果设置 DNS 域名时把用户 ID 加上去,那就更方便网络状态分析了。另外 Kerberos 要求服务所在机器必需有 DNS 域名。DNS 服务器程序有很多,http://en.wikipedia.org/wiki/Comparison_of_DNS_server_software有一个很赞的表格对比,对于小企业规模自用,bind9,djbdns,
powerdns, dnsmasq, unbound 都很有意思。bind 9 是市场份额最大的 DNS 服务器,占据 90% 多份额。djbdns 的安全方面口碑非常好,可惜 DJB 大神已然不维护这东西,它不支持 DNSSEC 和 IPv6。PowerDNS 支持很多存储后端,最吸引人的是 MySQL/PostgreSQL 后端支持了,但网上有大量舆论说这东西效率其实很低,我估计不消耗大量内存缓存的话,来一个请求就执行一系列 SQL 语句确实很崩溃,对于企业内部,应该还不至于域名变更频繁到需要用数据库的地步。dnsmasq 很适合局域网使用,伊内置支持 DHCP 和 TFTP,不过伊不支持
DNSSEC,不支持递归查询(实在是不想受制于 ISP 的 DNS forwarder 啊),貌似支持的 DNS 资源记录类型也很有限,当然也不支持 master、slave 模式了,个人觉得它很适合网吧、十来人的小企业。unbound 完美支持 IPv6、DNSSEC,不过伊对权威记录支持有限,不支持动态域名,我在自己的 PC 上就用 unbound,图它的 DNSSEC 支持,你懂的,防小人。。。。顺带提一句 DNSSEC,感兴趣的同学可以参考http://wiki.debian.org/DNSSEC,有点点老,unbound
现在不用手动配置 root trust anchor,但还是很有参考价值,尤其是教你如何识别你是否处在 DNSSEC 保护中,很有意思。再顺带提一句,自己本机搭个 DNS server 比如 unbound、bind9,可以屏蔽 ISP 的域名错误广告页面哦。。。于是选择了牛刀 bind9. 《Linux Administration Handbook》的 DNS 一章非常给力,看完后对 DNS 的认识拔高了十几个台阶(原来认识太差了。。。),配置了下 bind9,其实很容易的。感兴趣的同学可以参考我放在
github 上的配置文件 shell/etc/bind/db.{corp,10},我用的 10.x.y.z 私有 IP 地址空间,gold.corp.example.com 占用了 10.0.0.10,各位试验的时候如有 IP 地址差异记得改这两个文件。不过由于我这里全是单机配置,/etc/hosts 已然够用了,配置 bind9 只是为了全面点,以及为其它客户机服务。配置好 bind9 后不要忘记修改 etc/{shorewall,shorewall6}/rules 打开 53 端口。ntp 服务器是 kerberos 运行所需要的,因为 Kerberos 协议对时间比较敏感,默认配置下服务器和客户机两边时差超过 5 分钟,Kerberos 协议会拒绝工作。ntp 服务器程序也有好几个,ntp,openntpd,chrony,第一个是名门正统,第二个实现的特性不完全,好像不支持修正时钟频率,第三个适合桌面机以及笔记本等不是经常联网的机器,以及虚拟机这种时差漂移严重的环境,因为名门
ntp 实现的机制比较慢腾腾,笔记本等联网、运行、关机这么几个小时还不够 ntp 服务器同步完时间的(ntp 是逐步微调时间的,避免因时间跨度太大影响某些对时间特别敏感的应用)。Chrony 特意考虑了桌面用户,Anacron 也是,怪不得最新的 Federa 16 把 Chrony 设为默认的 NTP 服务器程序了:https://fedoraproject.org/wiki/Features/ChronyDefaultNTP#Current_status看过 MIT Kerberos 主页上的管理员和用户手册后,配置 Kerberos 服务器和客户端是很简单的事情,我就不罗嗦重复了,偷懒的同学可以去看看 kerberos.sh 脚本,或者这篇速成教程:http://techpubs.spinlocksolutions.com/dklar/kerberos.html。需要注意的一点是
Kerberos 服务器在寻找 service principal 时是按照客户端连接的服务端 IP 地址反向解析域名判断的,比如你用 ssh localhost 或者 ssh 127.0.0.1,那么 支持 kerberos 的 ssh 服务器会去找 host@localhost,而不是我期望的 host@gold.corp.example.com,因为找不到这个 principal 而服务端报错。配置完 Kerberos 后,同样也不要忘记修改 Shorewall 配置文件开放端口,Kerberos 这厮开的端口比较多。客户机极为容易配置,把 libpam-krb5 和 krb5-user 装上就搞定,最好也把 libpam-ccreds 装上,这个模块会缓存认证信息,万一
kerberos 服务挂了,我们还是有机会登录成功。接下来配置 ssh server,否则要是在真机上,我就得一直趴机房里操作了。自然,ssh server 实现也颇有一些,dropbear 合适嵌入式系统,lsh-server 是 GNU 出品,据说维护不是很活跃,剩下的自然是如日中天的 openssh-server
了,可惜这玩意最近几年也频繁报告安全漏洞,solidot.org 都有新闻说 cracker 攻破系统后第一件事就是升级 openssh。。。。Debian Wheezy 里的 openssh 装完后需要配置才能开启 Kerberos 支持。/etc/ssh/sshd_config 里,把 PasswordAuthentication 和 ChallengeResponseAuthentication
都设置成 no,因为我们不直接用 pam_unix 的密码认证,也不用 S/KEY、OPIE 之类的一次一密认证方案,开着它们有风险。KerberosAuthentication 也要是 no,这个选项的意思是 ssh client 把密码传给 ssh server,ssh server 作为 kerberos client 向 kerberos server 认证,这个密码传输显然太不靠谱。GSSAPIAuthentication 设置成 yes 就能支持 kerberos v5 认证了,GSSAPI 本来是想设计为通用安全接口的,不过安全界好像不怎么鸟它,搞的它成了
Kerberos v5 的代名词。最后,UsePAM 设置成 yes,因为 pam 的 account 和 session 检查还是需要的。在 kerberos 服务端设置好 host@gold.corp.example.com 这个 service principal 并把其加入 /etc/krb5.keytab 后,就可以试试 kinit 再 ssh gold.corp.example.com,不要用
ssh localhost,原因在上面说了。SSO 的第一个无密码登录服务就诞生了!由于 kerberos ticket 过期后要重新 kinit 申请,可能会觉得有点麻烦,另外为了避免 kerberos 服务挂掉无法登录,可以用 ssh-keygen 生成一对公钥、私钥,配置好 ssh server 的公钥认证,给自己留条后路,省的出问题了就要趴机房热身。
分享到:
相关推荐
基础服务组件包括 DNS、DHCP、用户管理、身份鉴别、权限管理、事后审计、域控等。 1. DNS DNS 是一个倒树形结构的分布式数据库,里面存储的信息主要有 IP 地址到域名的映射记录、域名到 IP 地址的映射记录、邮件...
Kerberos
Kerberos的简单介绍 Kerberos Kerberos Kerberos Kerberos Kerberos Kerberos Kerberos Kerberos Kerberos Kerberos
Kerberos权威指南 ,Kerberos The Definitive Guide。Single sign-on is the holy grail of network administration, and Kerberos is the only game in town. Microsoft, by integrating Kerberos into Active ...
用java语言实现的简单的kerberos,可以对客户端进行AS,tgs的认证
kerberos认证hive连接代码,springmvc配置加上java触发认证kerberos认证
flink写入带kerberos认证的kudu connector
kerberos+hadoop搭建
这个里面是kafka配置kerberos的详细步骤,其方式也可以应用到kafka自带的认证体系
从零学习Kerberos安全认证机制,并和Hadoop、YARN、HIVE进行集成,通过知识点 + 案例教学法帮助小白快速掌握Hadoop集成Kerberos安全技术。 课程亮点 1,专项攻破Hadoop安全配置。 2,生动形象,化繁为简,讲解通俗...
·SSH与Kerberos、PGP、PAM等其他安全产品的集成 ·目前流行的SSH实现中的一些没有文档资料记载的行为 ·SSH系统的安装与维护 ·疑难解答:既包括常见的问题,也包括不是很常见的问题。 不论你的通信是在一个很小的...
kafka 配置 kerberos,设置 ACL权限, java 客户端连接。
这是关于kerberos的包,包含内容:1,kerberos user,2,kerberos install,3,kerberos administator
Hadoop部署和配置Kerberos安全认证全套流程。已经过实测并部署与生产环境。
kerberos 客户端 for window 64位,安装配置教程见https://download.csdn.net/download/u013362877/10552816
本文档记录了为hadoop的hdfs配置kerberos的过程,hadoop用的版本是2.4.1。其中有一些作者的个人经验,希望对读者有帮助。
SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,同时支持Telnet和rlogin协议。SecureCRT是一款用于连接运行包括Windows、UNIX和VMS的远程系统的理想工具。通过使用内含的VCP命令行程序可以进行加密文件的传输...
ElasticSearch7.2.1+SearchGuard+ KerBeros+Kibana 集群测试环境部署文档,全网首发,网上能找到的都没有带上kerberos这种环境的,本文档包含了4大件ElasticSearch、SearchGuard、KerBeros、Kibana,谢谢下载
Kerberos单点登录概念及技术,可以帮助人们很好利用kerberos来开发单点登录。
centos7 pyhive连接hive(基于kerberos)。由于基于kerberos校验的hive服务器通过python连接的过程很麻烦,故整理文档。