企业级NIS+Autofs+NFS环境搭建

搭建NIS+autofs+nfs企业环境
 
系统环境:centos7.4
搭建nis1和nis2,主从服务架构;搭建NFS文件共享服务器,利用autofs实现自动挂载,安全可靠。
服务器地址分配如下:
172.16.12.18 nis1
172.16.12.19 nis2
172.16.12.20 nfs
172.16.12.21 client
NIS服务需要以下软件包:ypserv、rpcbind、ypbind、yp-tools
NFS服务需要以下软件包:rpcbind、nfs-utils
Autofs服务需要以下软件包:autofs
 
 
NFS安装配置
 
1.安装nfs-utils、rpcbind
#yum install nfs-utils rpcbind -y
2.设置共享目录
#vim /etc/exports
/home 172.16.12.0/24(rw,sync,no_root_squash)
/app 172.16.12.0/24(rw,sync,no_root_squash)
共享目录 允许访问的网络地址(访问权限)
rw 读写
ro 只读
sync 同步模式,内存数据实时写入磁盘  速度很快但是会降低磁盘效率
async 非同步模式 能保证磁盘效率  但是如果服务器断电,会造成数据丢失
no_root_squash 客户端挂载NFS共享目录后,root用户不受约束,权限很大
root_squash 与上面选项相对,客户端上的root用户收到约束,被限定成某个普通用户
all_squash 客户端上所有用户在使用NFS共享目录时都被限定为一个普通用户
anonuid/anongid 和上面几个选项搭配使用,定义被限定用户的uid和gid
3.启动服务
#systemctl start rpcbind
#systemctl start nfs
#systemctl enable rpcbind
#systemctl enable nfs
4.查看共享目录
#showmount -e 172.16.12.20
 
5.创建测试目录(后边需要用到)
#mkdir /app/{admin,atrenta,cadence,GridEngine,mentor,Other,source,synopsys,Xilinx,apache,CAD,env_setup,MathWorks,OA_app,SGE,springsoft,sysadmin} -pv
6.查看目录
7.添加dns解析记录
vim /etc/hosts
172.16.12.18 nis-master
172.16.12.19 nis-slave
172.16.12.20 nfs
172.16.12.21 client
 
 
搭建Autofs服务
 
分别在nis1和nis2服务上进行配置
1.安装autofs
#yum install autofs -y
2.修改主配置文件
#vim /etc/auto.master
注释掉所有信息,然后添加如下内容即可
/app /etc/auto.app //添加挂载记录,指定挂载配置文件
/user /etc/auto.home //自定义user目录挂载配置文件
/etc/auto.master 设置挂载的主配置文件
/etc/auto.misc 光盘自动挂载的配置文件
/etc/auto.net nfs自动挂载的配置文件)
3.创建挂载目录的配置文件
#mkdir /{app,user}
#vim /etc/auto.home
挂载点 挂载选项 挂载设备
#vim /etc/auto.app
4.添加本地dns解析记录
#vim /etc/hosts
172.16.12.18 nis-master
172.16.12.19 nis-slave
172.16.12.20 nfs
172.16.12.21 client
5.启动autofs服务
#systemctl start autofs
#systemctl enable autofs
6.测试自动挂载功能

 

NIS服务的安装和配置
 
NIS是一项目录服务技术,用来集中控制几个系统管理数据库的网络用品。
nis1的安装和配置
1.安装软件包
#yum install ypserv ypbind yp-tools rpcbind -y
#vim /etc/hosts //添加解析如下记录
172.16.12.18 nis-master
172.16.12.19 nfs-slave
172.16.12.20 nfs
172.16.12.21 client
2.设置域名
#nisdomainname nis
vim /etc/sysconfig/network
添加:NISDOMAIN=nis
3.配置ypserv.conf
vim /etc/ypserv.conf
末行添加:
dns:no //使用本地地址解析
127.0.0.1/255.255.255.0   : *   : *   none   //允许本地访问
172.16.12.0/255.255.252.0    : *         : *       none         //允许指定网段访问
                : *   : *     deny        //拒绝其他访问
4.启动ypserv服务
systemctl start ypserv        //nis主服务
systemctl start ypxfrd        //nis 同步后台服务进程    如果启动失败,会造成主从同步失败
systemctl start yppasswdd   //nis用户在线修改密码,如果启动失败,用户无法自行修改密码
systemctl start rpcbind
systemctl enable ypserv
systemctl enable ypxfrd
systemctl enable yppasswdd
systemctl enable rpcbind
5.生成数据库
/usr/lib64/yp/ypinit -m
输入nis2,回车    (默认已经添加本地主机localhost,所以只需要添加从nis2即可)
按下:Ctrl+d,输入:y 即可。
6.查看数据目录
#ls /var/yp/
7.修改Makefile文件(这个非常重要)
#vim /var/yp/Makefile
NOPUSH=false (开启推送模式)
如果在主server端增添账号、更改密码或者删除账号信息后,就需要重新制作数据库
#make -C /var/yp
all: passwd group hosts rpc services netid protocols mail \
auto.master auto.home auto.app shadow networks (添加如下配置文件即可,如果有多余文件,请删除,否则会提示你没有该文件,当然你也可以创建一个与其文件名一样的空文件,每次出错请认真查看报错信息,按照提示去一步一步修改
添加如下内容:
如下图,这个auto.app是我自己添加的,复制上边的auto.home,然后粘贴,稍作修改一致即可。(你写了多个auto.*的文件,如法炮制。)
(修改以上配置的好处就是,方便在客户端登录的时候,只要你客户端加入nis域,并且启动autofs功能,主端nis1的自动挂载目录就会推送到nis的客户端,不需要在客户端繁琐的挂载,非常实用。)
8.更新数据库,重新启动服务
#make -C /var/yp        
#systemctl restart ypserv
#systemctl restart yppasswdd
#systemctl restart ypxfrd
为保证主从nis同步成功还需如下操作:
方法一:做主nis1到从nis2的ssh免密登录;   //有了此操作就可以保证同步了,无需查看方法二
方法二:在nis1上修改/var/yp/Makefile           //在NOPUSH=true(关闭推送模式)首先还是需要做主到从的免密登录,然后拉取nis数据库(/usr/lib64/yp/ypinit -s nis1),并且在nis2设置计划任务,以保证信息定期同步。【建议还是使用方案一,简单易操作】
#vim /var/yp/Makefile
从第110行后边插入参数
ssh 从nis服务器IP "/usr/lib64/yp/ypinit -s 主服务器IP"       //此命令其实是利用ssh免密登录到nis2,然后拉取nis1的数据库信息,与方法一正好相反,方法一是从主nis1将数据库推送到从nis2。
9.ssh的免密码登录
【1】在nis1端生成密钥
#ssh-keygen -t rsa
默认生成密钥对的位置: /root/.ssh/
id_rsa 私钥文件
id_rsa.pub 公钥文件
【2】将公钥上传到nis2
#ssh-copy-id -i /root/.ssh/id_rsa.pub root@172.16.12.19
工作原理:将公钥文件传递到服务器端,服务端用公钥加密将请求发送客户端,客户端接收后用私钥解密,即可完成关系信任。
1.将传递的文件改名为authorized_keys
2.修改文件的权限为600
【3】免密登录
#ssh 172.16.12.19
 

 

 
nis2的安装配置
1.安装
#yum insyall ypserv ypbind yp-tools rpcbind
2.设置域名
#nisdomainname nis
#vim /etc/sysconfig/network
NISDOMAIN=nis
3.配置ypserv.conf
vim /etc/ypserv.conf
末行添加:
dns:no //使用本地地址解析
127.0.0.1/255.255.255.0   : *   : *   none   //允许本地访问
172.16.12.0/255.255.252.0    : *         : *        none        //允许指定网段访问
                : *        : *        deny        //拒绝其他访问
4.设置开机自启动
systemctl start ypserv
systemctl start ypxfrd
systemctl start yppasswdd
systemctl enable ypxfrd
systemctl enable ypserv
systemctl enable yppasswdd
5.nis2服务器同步nis1数据库信息
#/usr/lib64/yp/ypinit -s nis1
这里同样也需要编辑/var/yp/Makefile的文件,和nis1配置过程一样(同上的步骤七),之后再更新数据库,执行命令:make -C /var/yp
 
 
 
Client配置
客户端只需要安装ypbind和yp-tools这两个包
1.安装ypbind、yp-tools、autofs
#yum install ypbind yp-tools -y
2.配置域和服务器
#setup,选择第一个,然后回车
选择第三个nis服务(按空格选择),然后下一步
输入域名,和服务器地址,多个地址用逗号隔开。
3.启动ypbind服务
systemctl start ypbind
systemctl enable ypbind
systemctl start autofs
systemctl enable autofs
4.在nis1服务器上创建用于登录测试系统用户
(172.16.12.18)#useradd -d /user/wjh -s /bin/bash -m wjh
5.在nis1上更新数据信息记得重启ypserv服务
(172.16.12.18)#make -C /var/yp/
#systemctl restart ypserv
6.测试nis服务是否正常(这个操作在客户端执行
#yptest (看到如下信息就证明成功了)
7.客户端可以使用yppasswd来修改账户和密码
#yppasswd wjh
#ypwhich (该命令主要测试NIS客户端与服务器之间通信使用的是那些数据库文件)
8.查看使用数据库
9.用户登录
#su - lxy
 

 

 
 
 

posted @ 2018-07-18 14:36  星月辉  阅读(2215)  评论(0编辑  收藏  举报