文档章节

局域网内的NIS服务器器搭建管理

Andy-xu
 Andy-xu
发布于 2014/07/26 23:05
字数 1643
阅读 715
收藏 33

NIS(网络信息服务),用来集中账号信息管理。类似LDAP一样的功能哦,一般可以作为LAN内的用户认证服务器吧!

NIS服务器提供的数据:

/etc/passwd           提供用户账号UID GID 用户主目录位置 shell等

/etc/group               提供GID以及组成员

/etc/hosts                本地的解析

/etc/services              服务端口

/etc/protocols              基础的协议数据包

/etc/rpc                         每种RPC服务器所对应的程序号码

/var/yp/ypservers          NIS所提供的数据库


架构

NIS Server 在整个网域之中,一般比较小型的网域常见的方法。万一,如果网域里面有几乎100 部以上的主机,这个时候,只有一部NIS Server 可能无法提供快速的数据查寻与响应的状态!这时需要 NIS Sever的 master 与 slave 的架构。

slave藉由将来自 master主机的 数据加以更新到自己的数据库当中,并且提供与master 相同的查寻功能!这个 NIS 的 master 与 slave 架构则完全相同。NIS Server 的 master 先将自己的账号、密码相关档案制作成为数据库档案(databasefile);NIS Server 的 master 将自己的数据库档案传送到 slave上面;NIS Server 的 slave 接收来自『信任的 NIS Server master主机』的数据后,更新自己的数据库,使自己的数据库与 master 主机的数据同步;网域当中的所有 NIS Client 查寻 NIS Server 时,会找寻『最先回应的那一部NIS 主机的数据库内容』。

所以,我们可以知道的是,NIS 的 master 与 slave 架构主要在分散查寻 NIS时候的主机负荷,因此,除非您的网域真的很大,否则是没有必要架设 NIS Slave与 master 的架构的啦!底下我们没有架设 master 与 slave 。只有一部主要的master 而已。

NIF使用数据库文件系统来记录数据。在大的局域网中可以使用Master/Slave架构哦!

                          

基于上面的流程,client在查询账号时,会首先在本地进行账号查询进而在slave和master上查询所需要的用户登录数据。因此在实际应用中,应该将本地的普通用户主动拿掉。


2. NFS server端的设置                                   

软件所需:yp-tools;ypind;ypserv;rpcbind

2.1设置NIS服务的域名

#vim /etc/sysconfig/network

NISDOMAIN=xxbandy                                    设置NIS域
YPSERV_ARGS="-p 1011"                                定义固定端口

2.2 主要配置文件

 #vim /etc/ypserv.conf

dns: no                                            不使用dns(用/etc/hosts)
files: 30                                            默认会有30个数据库呗读入内存
xfr_check_port: yes

[主机名或网段]     [NIS域名]   [可用数据库名称]  [安全限制]

{安全限制,none表示无,port表示仅能使用小于1024端口;deny表示拒绝}


*                          : *       : shadow.byname    : port
*                          : *       : passwd.adjunct.byname : port

2.3设置主机名与IP的对应

#vim /etc/hosts

192.168.0.143   www.xxbandy.com                            定义NIS服务器的主机

192.168.0.25     client.xxbandy.com

注意:主机名和NIS的主机名最好一致


2.4启动与查勘相关的服务

#vim  /etc/sysconfig/yppasswdd

YPPASSWDD_ARGS="--port 1012"                                定义端口

#/etc/init.d/ypserv restart                                   (注意服务的开机自动启动啊#chkconfig ypserv/yppasswdd on

#/etc/init.d/yppasswdd restart 

#rpcinfo -p localhost                                               查看当前端口和服务(必要时设置防火墙)


2.5创建用户并且建立数据库

#useradd -u 1001 user1

#useradd -u 1001 user2

#echo westos | passwd --stdin user1(2)

#/var/lib64/yp/ypinit -m                                                将生成的用户密码转换成数据库文件

At this point, we have to construct a list of the hosts which will run NIS
servers.  instractor is in the list of NIS server hosts.  Please continue to add
the names for the other hosts, one per line.  When you are done with the
list, type a <control D>.
        next host to add:  instractor
        next host to add:  control+d继续
The current list of NIS servers looks like this:

instractor                              自动检测的NIS服务

Is this correct?  [y/n: y]  y
We need a few minutes to build the databases...
Building /var/yp/xxbandy/ypservers...

  gethostbyname(): Success

Running /var/yp/Makefile...
gmake[1]: Entering directory `/var/yp/xxbandy'

instractor has been set up as a NIS master server.
Now you can run ypinit -s instractor on all slave server

至此,你就可以使用NIS服务器了!

如果鉴于安全机制,可以使用防火墙自己设置哦!


客户端可以使用setup进行设置NIS服务!

如果没有卡主,直接运行成功了。

在server端

#tail -f /var/log/messages                 可以查看下客户端的链接情况


查看下载客户端都做了什么动作:

[root@desktop ~]# cat /etc/sysconfig/network
NISDOMAIN=xxbandy                                        增加了一个NIS域

[root@desktop ~]# cat /etc/yp.conf

 domain xxbandy server 192.168.0.143                    增加了NIS服务器的信息


[root@desktop ~]# vim /etc/nsswitch.conf 

passwd:     files nis                                                      用户文件都启用了nis
shadow:     files nis
group:      files nis
hosts:      files nis dns


NIS client端的验证功能:

yptest,验证数据库  ypwhich 检查数据库数量   ypcat读取数据库内容

用户参数修改yppasswd 修改密码   


登录测试,发现没有权限和用户主目录:

[root@desktop ~]# su - user2
su: warning: cannot change directory to /home/user2: No such file or directory
-bash-4.1$ ls
ls: cannot open directory .: Permission denied

发现用户登录没有家目录,并且没有权限!!!!

NIS+NFS实例

为了解决这一问题,我们可以使用nfs远程挂载一个用户家目录,即结合NFS和NIS

SERVER端:

[root@instractor ~]# mkdir /nishome

[root@instractor ~]# useradd -u 2001 -d /nishome/user1 user1

[root@instractor ~]# useradd -u 2002 -d /nishome/user2 user2

[root@instractor ~]# echo westos | passwd --stdin user1

[root@instractor ~]# echo westos | passwd --stdin user2

[root@instractor ~]# vim /etc/sysconfig/network

NISDOMAIN=xxbandy                                                

[root@instractor ~]# nisdomainname xxbandy

[root@instractor ~]# /etc/init.d/ypserv restart;/etc/init.d/yppasswdd restart

[root@instractor ~]# /usr/lib64/yp/ypinit -m

注意:上述四个命令有依赖性关系,因此不能打乱


NFS的设置:

 [root@instractor ~]#vim /etc/exports 

/nishome   192.168.0.0/24(rw,no_root_squash)

 [root@instractor ~]#/etc/init.d/nfs restart                                        注意:必须先启动rpcbind

 [root@instractor ~]#showmount -e localhost      发现nfs的共享设备


client端挂载操作:

(前提是NIS认证已经设置了)

[root@desktop home]# mkdir /nishome 

[root@desktop home]# mount 192.168.0.143:/nishome /nishome

[root@desktop home]# su - user1
[user1@desktop ~]$ ls

现在就可以登录用户家目录,并且可以查看!

使用instroctor主机就可以管理客户机账号,多方便的啊,不过要注意,尽量不要再客户端有相同的账号什么的账户信息!



© 著作权归作者所有

共有 人打赏支持
Andy-xu
粉丝 108
博文 95
码字总数 179246
作品 0
大兴
运维
gitlab项目数据同步

功能要求: 在公网上搭建一个gitlab服务器,所有项目代码的更新、提交都在这个服务器的项目中进行,实现对代码的版本控制。同时,在本地的局域网内再搭建一个gitlab服务器,把项目中每天的代...

aaron428
2016/05/18
0
0
局域网内部署外网访问应用实战

实况背景 前段时间给一家地产评估公司做了一个小型的工单管理系统,局方老板买了一台PC机打算当做服务器,服务器放在局域网里面。要求外网可以通过域名访问得到这台服务器。项目开发语言为p...

bxc
2012/03/12
0
0
web工程 在局域网 内读取所有设备上的文件。

需求是 有一个局域网,我想获取该局域网内 所有机器上的 某一个csv文件。并且对该文件所在文件夹进行处理。会在该局域网内接入一个服务器。在服务器搭建一个web项目 搜集所有的csv文件数据 ...

忧郁麦芽
2016/06/28
175
1
解决redmine局域网内访问速度过慢的问题

之前一直用的一个在线项目管理,叫Unfuddle,很好用,也很喜欢,但就可惜不是免费的。 喜欢用ticket系统来管理项目,但是trac这个纯ticket系统的安装实在是太让人抓狂了,决定先缓缓,有空再...

Yisen
2011/03/12
0
3
iptables实现网络防火墙(二)——SNAT与DNAT

前言 在前面的文章中,我们曾经简单的介绍过Linux内核中防火墙的基本概念,以及四表五链的相关知识,可参看 LINUX 防火墙介绍。 并且也介绍了如何在Linux环境中搭建一个能够过滤协议和端口的...

Eumenides_s
2017/10/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Kali Linux Docker 練習

docker pull kalilinux/kali-linux-docker docker run -t -i kalilinux/kali-linux-docker /bin/bash apt-get update apt-get install htop apt-get install nmap apt-get install wpscan ap......

BaiyuanLab
今天
1
0
通俗大白话来理解TCP协议的三次握手和四次分手

最近在恶补计算机网络方面的知识,之前对于TCP的三次握手和四次分手也是模模糊糊,对于其中的细节更是浑然不知,最近看了很多这方面的知识,也在系统的学习计算机网络,加深自己的CS功底,就...

onedotdot
今天
2
0
TiDB 在爱奇艺的应用及实践

爱奇艺,中国高品质视频娱乐服务提供者,2010 年 4 月 22 日正式上线,推崇品质、青春、时尚的品牌内涵如今已深入人心,网罗了全球广大的年轻用户群体,积极推动产品、技术、内容、营销等全方...

TiDB
今天
1
0
Web系统大规模并发:电商秒杀与抢购

一、大规模并发带来的挑战 在过去的工作中,我曾经面对过5w每秒的高并发秒杀功能,在这个过程中,整个Web系统遇到了很多的问题和挑战。如果Web系统不做针对性的优化,会轻而易举地陷入到异常...

xtof
今天
3
0
代码质量管理平台-sonarqube

在工作中,往往开发的时候会不怎么注重代码质量的人很多,存在着很多的漏洞和隐患等问题,sonarqube可以进行代码质量的审核,而且十分的残酷。。。。。接下来我们说下怎么安装 进入官网下载:...

落叶清风
今天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部