Debian中配置NIS:用户账号管理
1、添加指定gid的组
groupadd -g 1001 upload
# 添加了一个指定gid为1001的upload用户
2、添加指定uid的用户,并加入到指定组
useradd -u 1001 -g upload testuser
# 添加了一个uid为1001的用户,并加入到upload的组中
3、建立一个新用户账户testuser,并设置UID为1001,主目录为/usr/testuser,属于users组:
useradd -u 1001 -d /usr/testuser -g users -m testuser
【注】:加-m 如果主目录不存在则自动创建
一、服务端(Server端192.168.109.137)
1、安装软件包
apt-get update
apt install -y nis
安装过程中设置域名
vim /etc/defaultdomain查看设置域名

2、设置nis主服务器
vim /etc/default/nis
将NISSERVER=false改为NISSERVER=master

3、设置可以允许访问我们的 NIS 服务器的IP范围
vim /etc/ypserv.securenets
先注释掉下图中显示的行:
将允许的 IP 范围添加到该文件的末尾,如下图所示。之后,我们可以保存并关闭我们的文件。
4、为NIS添加自己的IP地址
vim /etc/hosts

修改vim /etc/yp.conf加入下面的设置
5、重新启动 NIS 服务器
systemctl restart rpcbind ypserv yppasswdd ypxfrd
systemctl enable rpcbind ypserv yppasswdd ypxfrd
systemctl restart nis
6、创建一个测试用户、并更新NIS数据库
adduser nistest
/usr/lib/yp/ypinit -m
按Ctrl + D,再按y确认
//每次更新账户信息后都需要更新数据库
//cd /var/yp
//make
//make -C /var/yp/
现在执行下面的命令,并可以看到用户口令表
getent passwd
二、Client(客户端192.168.109.142)
1、安装软件包
apt-get update
apt install -y nis
查看vim /etc/defaultdomain里的域名
2、修改配置文件vim /etc/default/nis 确保有如下设置,配置为 NIS 客户端
3、修改vim /etc/yp.conf加入下面的设置
4、在passwd、shadow、group以及hosts行的files后面都添加上nis。
vim /etc/nsswitch.conf

5、启动服务并设置开机启动
systemctl restart rpcbind nscd ypbind
systemctl restart rpcbind ypbind
systemctl enable rpcbind ypbind
6、yptest测试
ypcat passwd

登录(登录之前要挂载用户目录)
大功告成。
三、autofs+nfs自动挂载
1、安装软件包
apt-get install autofs
2、编辑autofs配置文件
vim /etc/auto.master 添加以下内容
格式为
挂载点 配置文件
/home /etc/auto.nis

3、新建立配置文件
vim /etc/auto.nis
格式为
服务端用户名 服务端IP:挂载用户的目录
* 192.168.102.137:/home/&
注:*匹配所有用户名,&匹配用户路径,使用&字符通常与通配符*一起使用
4、保存退出后重启autofs,并设置开机启动
systemctl restart autofs
systemctl enable autofs
四、其它
检查 Debian 10 上“rpcbind”服务的状态:
systemctl status rpcbind
检查 Debian 10 上“ypserv”服务的状态
systemctl status ypservz
1、客户端autofs自动挂载(推荐)/(服务端是NFS)
方式1:用户自登陆挂载
编辑autofs配置文件 vim /etc/auto.master

编辑 vim /etc/auto.misc
注:*匹配所有用户名,&匹配用户路径,使用&字符通常与通配符*一起使用。
方式2:自动挂载192.168.109.137:/home 到本机/home
(1)编辑autofs配置文件 vim /etc/auto.master 
在主映射文件/etc/auto.master中使用/-,然后具体的挂载路径全部在子映射文件/etc/auto.nfs。(--timeout=10 也可以在后面加上多长时间不使用自动卸载)
【其它】:或者在/etc/auto.master.d 下面创建一个主映射文件。这个文件的作用是确定挂载点的基础目录同时确定用于创建自动挂载的映射文件。首先主映射文件以.autofs作为扩展名
vim nfs.autofs

(2)创建/etc/auto.nfs文件
cp /etc/auto.misc /etc/auto.nfs
vim /etc/auto.nfs
/home -fstype=nfs,rw 192.167.253.5:/home

或
(3)设置已经挂载的文件系统在30s内没有被使用,将其自动卸载。
vim /etc/autofs.conf

(4)重启autofs使其生效
systemctl restart autofs
五、nis主从配置(基于以上完成的优化)
nis master:192.168.102.133 主机名:uos003
nis slave: 192.168.102.134 主机名:uos004
nis client: 192.168.102.135 主机名:uos005
1、master服务器端的设置
(1)为了让master与slave之间可以传输数据,需要对master做一点小小的改动。进入到/var/yp目录下,修改Makefile文件,把NOPUSH的值修改为false即可
vim /var/yp/Makefile
(2)后告诉master需要把数据推送给哪些slave节点。【创建/var/yp/ypservers文件】,并向其中添加slave节点名称,进程如下操作:
vim /var/yp/ypservers
(3)传输数据时会用到ypxfrd服务,该服务运行时需要访问/var/yp/securenets文件,用于安全性检查,即验证可以在哪些服务器之间进行数据同步。
执行如下操作【创建文件】并添加内容:
vim /var/yp/securenets (255.255.255.0 192.168.102.0)
(4)设置了slave服务,那么master节点最好也开启ypbind服务,确保在执行make后,更新的数据可以主动发送给slave节点上。
这里只提及需要修改/etc/yp.conf,/etc/nsswitch.conf等文件
(5)开启服务,并设置开机自启动
systemctl restart ypbind ypxfrd
systemctl enable ypbind ypxfrd
(6)更新数据库:
cd /var/yp
make //make -C /var/yp
当执行了ypinit -m之后,所有的主机上面的账号相关档案会被转成数据库档案, 这些数据库会被放置到/var/yp/"nisdomainname"当中,
【注意】:/var/yp/目录下会产生一个你自己设定的nisdomainname目录,一定要保证master,slave,client中的nisdomainname设置的一致
2、slave节点配置
(1)配置主要配置文件vim /etc/default/nis
将NISSERVER=false改为NISSERVER=master
(2)对于slave节点,既作为服务端,又作为客户端,所以不仅需要配置/etc/ypserv.conf文件,还需要配置客户端需要配置的文件,例如/etc/yp.conf等文件。ypbind是客户端服务,/etc/yp.conf是ypbind的配置文件。
yp.conf的配置如下:
vim /etc/yp.conf
(3)设置可以允许访问我们的NIS服务器的IP范围
vim /etc/ypserv.securenets 注释掉#0.0.0.0 0.0.0.0
(4)启动服务,并设置开机自启动(启动前确认rpcbind服务启动了已经)
systemctl restart ypserv ypxfrd ypbind
systemctl enable ypserv ypxfrd ypbind
(5)slave节点不需要自己创建数据库,而是应该同步master节点的数据库。
初此同步时,需要执行以下命令:
/usr/lib/yp/ypinit -s uos003

查看数据库被放置到了/var/yp/"nisdomainname"当中
3、客户端的设置
vim /etc/yp.conf

重启服务
systemctl restart rpcbind ypbind
4、测试
(1)停掉nis master
systemctl stop ypserv

(2)在客户端查看用户
ypcat passwd

依然可以查到,说明nis主从服务搭建成功
5、排错
(1)master服务器端执行make时报错
主要原因是执行make时调用yppush工具需要用到ypbind服务,而master节点没有开启ypbind服务。如果不使用高可用,即不设置slave服务,那么master节点可以不启用ypbind,毕竟所有的账号信息都在master节点上。但是,如果设置了slave服务,那么master节点最好也开启ypbind服务,确保在执行make后,更新的数据可以主动发送给slave节点上。
(2)客户端查看用户ypcat passwd出错
YPBINDPROC_DOMAIN: Domain not bound
No such map passwd.byname. Reason: Can't bind to server which serves this domain
i、说明没有在vim /etc/yp.conf里添加slave节点
ii、或者没有重启ypbind服务
systemctl restart ypbind
Debian中配置NIS:用户账号管理的更多相关文章
- Centos7中配置NIS:用户账号管理
NIS:网络信息服务 Linux系统中用户按地域分两类:本地用户,远程用户(NIS.LDAP.AD)模式:C/S模式 ypbind是定义NIS服务器的客户端进程,一旦确定了服务器位置,客户端绑定到了服 ...
- Spring中配置Hibernate事务管理
<!-- transationManager --> <bean id="transactionManager" class="org.springfr ...
- Debian中配置静态IP
默认安装Debian的时候是用dhcp服务的,有时我们需要设置一下静态IP. 一共涉及两个文件的修改 /etc/network/interfaces auto eth0#iface eth0 inet ...
- spring+springMVC+Mybatis 中使用@Transcational方式管理事务的配置方法
springMVC 中,事务通常都在service层控制,当然controller层也可以用事务,只要配置配对,但通常不建议直接在controller层配事务,controller的作用是管理参数以及 ...
- Debian中CodeIgniter+nginx+MariaDB+phpMyAdmin配置
本文不讲述软件安装过程,记述本人在Debia中配置CodeIgniter时遇到的问题及解决方法,希望能够为有需要的人提供帮助. 一.Debian版本及所需的软件 Debian 9.8 stretch ...
- vscode源代码管理(vscode报错 未找到Git,请安装Git,或在"git.path" 设置中配置)
vscode源代码管理(vscode报错 未找到Git,请安装Git,或在"git.path" 设置中配置) 直接上图,电脑上已经安装git,由于vscode没有找到git,所以v ...
- Spring Boot 2 中的默认日志管理与 Logback 配置详解
Spring Boot在所有内部日志中使用Commons Logging,但是对底层日志的实现是开放的.在Spring Boot生态中,为Java Util Logging .Log4J2 和Logb ...
- Spring3 Security 中配置会话管理
账户登录时,要求一个账户同时只能一人登录,配置中的步骤有三个: 1.在web.xml中配置HttpSessionEventPublisher <listener> <listener ...
- xml配置文件中对于Shiro 权限管理filterChainDefinitions过滤器配置
博客转载:http://blog.csdn.net/userrefister/article/details/47807075 /** * Shiro-1.2.2内置的FilterChain * @s ...
- Debian中编译内核
转载: http://blog.163.com/libo_5/blog/static/156968520101016102051580/ http://hi.baidu.com/wg_wang/ite ...
随机推荐
- 如何保存/同步多架构容器 Docker 镜像
前言 随着容器.芯片技术的进一步发展,以及绿色.节能.信创等方面的要求,多 CPU 架构的场景越来越常见.典型的应用场景包括: 信创:x86 服务器 + 鲲鹏 ARM 等信创服务器: 个人电脑:苹果 ...
- 【直播回顾】Hello HarmonyOS系列应用篇完美收官!
6月15日晚上19点,Hello HarmonyOS系列应用篇第七期直播 <分布式应用开发>,在HarmonyOS社群内成功举行.随着本系列直播最后一课的完美收官,开发者们在逐渐掌握技术知 ...
- 第七課-Channel Study For HTTP Listener & Web Service Sender Intercommunicates Response Handler
示例说明: 系统A发送XML格式患者信息到Mirth的Source端HTTP Listener,完成患者信息入库逻辑:然后Mirth的Destinations端Web Service Sender调用 ...
- 力扣12(java)-整数转罗马数字(中等)
题目: 罗马数字包含以下七种字符:I, V, X, L, C, D, M 1 字符 数值 2 I 1 3 V 5 4 X 10 5 L 50 6 C 100 7 D 500 8 M 1000 例如, ...
- 网易数帆Curve加入PolarDB开源数据库社区
简介:Curve社区签署阿里巴巴开源CLA(Contribution License Agreement, 贡献许可协议), 正式与阿里云PolarDB 开源数据库社区牵手. Curve社区签署阿里 ...
- 【阿里云 CDP 公开课】 第二讲:CDH/HDP 何去何从
简介:Hadoop社区版CDH/HDP已经不再更新,也将终止服务.后续的平台路线图怎么规划?Cloudera CDP整合了CDH和HDP,有哪些性能提升和功能增强?如何平滑的进行迁移?本文结合CDH ...
- 使用云效Codeup10分钟紧急修复Apache Log4j2漏洞
简介:2021年12月10日,国家信息安全漏洞共享平台(CNVD)收录了Apache Log4j2远程代码执行漏洞(CNVD-2021-95914),此漏洞是一个基于Java的日志记录工具,为Log ...
- 汽车之家:基于 Flink + Iceberg 的湖仓一体架构实践
简介: 由汽车之家实时计算平台负责人邸星星在 4 月 17 日上海站 Meetup 分享的,基于 Flink + Iceberg 的湖仓一体架构实践. 内容简要: 一.数据仓库架构升级的背景 二.基于 ...
- ARM 反汇编速成
1.跳转指令 B 无条件跳转 BL 带链接的无条件跳转 BX 带状态切换的无条件跳转 BLX 带链接和状态切换的无条件跳转 B loc_地址 BNE, BEQ 2.存储器与寄存器交互数据指令 ...
- [ML] 数据预处理 - 特性归一化的目的
简而言之,归一化的目的就是使得预处理的数据被限定在一定的范围内(比如[0,1]或者[-1,1]), 从而消除奇异样本数据导致的不良影响. 是否归一化主要在于是否关心变量取值. Tool:ChatAI ...