「NIS」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(Pkg/AUR テンプレートの更新)
(カテゴリを修正)
 
(他の1人の利用者による、間の2版が非表示)
1行目: 1行目:
[[Category:セキュリティ]]
+
[[Category:レクトリサービス]]
 
[[en:NIS]]
 
[[en:NIS]]
 
[[fr:NIS]]
 
[[fr:NIS]]
9行目: 9行目:
   
 
=== パッケージのインストール ===
 
=== パッケージのインストール ===
ypbind-mt, ypserv, yp-tools パッケージをインストールしてください:
+
{{AUR|ypbind-mt}}, {{AUR|ypserv}}, {{AUR|yp-tools}} パッケージを[[インストール]]してください
# pacman -S ypbind-mt yp-tools ypserv
 
   
 
=== 設定 ===
 
=== 設定 ===
85行目: 84行目:
 
# your.nis.server
 
# your.nis.server
   
=== NIS デーモンの起動 ===
+
==== ドメイ設定 ====
  +
# ypdomainname EXAMPLE.COM
{{note|デーモンは以下の順序で起動してください。}}
 
   
  +
{{ic|/etc/yp.conf}} ファイルを編集して ypserver または nis サーバーを追加してください:
rpcbind を起動させてない場合、起動させる:
 
  +
ypserver nis_server
# systemctl start rpcbind
 
   
  +
=== NIS デーモンの起動 ===
ypbind を起動:
 
  +
{{note|デーモンは以下の順序で起動してください。}}
# systemctl start ypbind
 
   
  +
以下の systemd ユニットを[[起動]]・[[有効化]]してください:
ypserv を起動:
 
  +
* {{ic|rpcbind.service}}
# systemctl start ypserv
 
  +
* {{ic|ypbind.service}}
 
  +
* {{ic|ypserv.service}}
ブート時にデーモンをロードさせたい場合は {{ic|systemctl start}} の代わりに {{ic|systemctl enable}} を使って下さい。
 
  +
* {{ic|yppasswdd.service}} (クライアントから {{ic|passwd}} でパスワードを変更できるようにする場合)
   
 
== NIS クライアント ==
 
== NIS クライアント ==
   
 
=== パッケージのインストール ===
 
=== パッケージのインストール ===
まず必要なツをインストールしてください。NIS を使うために必要な設定ファイルやツールが含まれています。
+
まず {{AUR|yp-tools}} と {{AUR|ypbind-mt}} パッケをインストールしてください。NIS を使うために必要な設定ファイルやツールが含まれています。
# pacman -S yp-tools ypbind-mt
 
   
 
=== 設定 ===
 
=== 設定 ===
109行目: 108行目:
 
# ypdomainname EXAMPLE.COM
 
# ypdomainname EXAMPLE.COM
   
{{ic|/etc/yp.conf}} ファイルを編集して ypserver または nis サーバーを追加ます
+
{{ic|/etc/nisdomainname}} を編集して以下のように追加することで永続的に設定できます:
  +
NISDOMAINNAME="EXAMPLE.COM"
  +
  +
{{ic|/etc/yp.conf}} ファイルを編集して ypserver または nis サーバーを追加します:
 
ypserver nis_server
 
ypserver nis_server
   
118行目: 120行目:
 
==== NIS デーモンの起動 ====
 
==== NIS デーモンの起動 ====
 
{{note|デーモンは以下の順番で起動してください。}}
 
{{note|デーモンは以下の順番で起動してください。}}
rpcbind と ypbind デーモンを起動します
+
{{ic|rpcbind.service}}{{ic|ypbind.service}} ユニット[[起動]]・[[有効化]]てください
# systemctl start rpcbind
 
# systemctl start ypbind
 
 
ブート時にデーモンをロードさせたい場合は {{ic|systemctl start}} の代わりに {{ic|systemctl enable}} を使って下さい。
 
   
 
==== テスト ====
 
==== テスト ====
141行目: 139行目:
   
 
NIS クライアントの設定に関する詳細は [http://www.tldp.org/HOWTO/NIS-HOWTO/settingup_client.html section 7 of The Linux NIS HOWTO] を見て下さい。
 
NIS クライアントの設定に関する詳細は [http://www.tldp.org/HOWTO/NIS-HOWTO/settingup_client.html section 7 of The Linux NIS HOWTO] を見て下さい。
  +
  +
==== /etc/pam.d/passwd ====
  +
クライアントマシンからサーバーのパスワードを変更できるようにするには、サーバーで {{ic|yppasswdd.service}} を起動してください。
  +
  +
クライアントの {{ic|/etc/pam.d/passwd}} を編集して {{ic|nis}} パラメータを {{ic|password/pam_unix.so}} に追加:
  +
password required pam_unix.so sha512 shadow nullok nis
  +
  +
== トラブルシューティング ==
  +
  +
=== systemd 235 の問題 ===
  +
systemd-logind のサンドボックスの問題によって、systemd-logind サービスの IP 接続が拒否される場合、以下のように設定が必要です:
  +
  +
{{hc|/usr/lib/systemd/system/systemd-logind.service|
  +
<nowiki># IPAddressDeny=any</nowiki>}}
   
 
== 参照 ==
 
== 参照 ==

2023年4月18日 (火) 13:40時点における最新版

Network Information Service (NIS) は Sun によって開発されたユーザー情報をサーバーと共有するためのプロトコルです。サーバーソフトウェアは ypservAUR パッケージに入っており、クライアントソフトウェアは yp-toolsAUR パッケージに入っています。クライアントデーモンのマルチスレッド版である ypbind-mtAUR を使うこともできます。

ノート: この記事は未完成です。近く変更がされる予定ですが、それまでは参照セクションを確認してください。

NIS サーバー

パッケージのインストール

ypbind-mtAUR, ypservAUR, yp-toolsAUR パッケージをインストールしてください。

設定

/etc/hosts

サーバーの (127.0.0.1 ではない) 外部 IP アドレスを hosts ファイルに追加してください。ファイルのコメントアウトされていない最初の行になるようにします。以下のように localhost の行よりも上に追加します:

#
# /etc/hosts: static lookup table for host names
#

#<ip-address>	<hostname.domain.org>	<hostname>
#::1		localhost.localdomain	localhost
192.168.1.10   nis_server.domain.com   nis_server
127.0.0.1	localhost.localdomain	localhost nis_server
# End of file

これは ypinit が /etc/hosts の最初の行を ypservers のリストに追加するためです (これがバグか仕様かはハッキリしません)。

/etc/nisdomainname

ドメイン名を /etc/nisdomainname に追加:

# NISDOMAINNAME="nis-domain-name"

/etc/ypserv.conf

以下の形式で nis クライアントのルールを /etc/ypserv.conf に追加:

# ip-address-of-client : nis-domain-name : rule : security

例:

# 192.168. : home-domain : * : port

詳しくは man ypserv.conf を参照。

/var/yp/Makefile

/var/yp/Makefile の "all" ルールに NIS を用いて共有するファイルを追加または削除します。

デフォルト:

# all:  passwd group hosts rpc services netid protocols netgrp \
#         shadow # publickey networks ethers bootparams printcap mail \
#         # amd.home auto.master auto.home auto.local passwd.adjunct \
#         # timezone locale netmasks

その後 NIS データベースを作成してください:

# cd /var/yp
# make

もしくは自動的に作成させることもできます:

# /usr/lib/yp/ypinit -m

この場合、手動で /var/yp/ypservers に行を追加する必要はありません。

/var/yp/securenets

/var/yp/securenets にアクセスを制限するルールを追加:

# 255.255.0.0 192.168.0.0 # Gives access to anyone in 192.168.0.0/16

誰にでも権限を与えてしまうので、この行はコメントアウトするようにしましょう。

# 0.0.0.0      0.0.0.0

/var/yp/ypservers

サーバーを /var/yp/ypservers に追加:

# your.nis.server

ドメイン名の設定

# ypdomainname EXAMPLE.COM

/etc/yp.conf ファイルを編集して ypserver または nis サーバーを追加してください:

ypserver nis_server

NIS デーモンの起動

ノート: デーモンは以下の順序で起動してください。

以下の systemd ユニットを起動有効化してください:

  • rpcbind.service
  • ypbind.service
  • ypserv.service
  • yppasswdd.service (クライアントから passwd でパスワードを変更できるようにする場合)

NIS クライアント

パッケージのインストール

まず yp-toolsAURypbind-mtAUR パッケージをインストールしてください。NIS を使うために必要な設定ファイルやツールが含まれています。

設定

ドメイン名の設定

# ypdomainname EXAMPLE.COM

/etc/nisdomainname を編集して以下のように追加することで永続的に設定できます:

NISDOMAINNAME="EXAMPLE.COM"

/etc/yp.conf ファイルを編集して ypserver または nis サーバーを追加します:

ypserver nis_server

/etc/hosts

NIS サーバーを /etc/hosts に追加すると良いでしょう。

192.168.1.10   nis_server.domain.com   nis_server

NIS デーモンの起動

ノート: デーモンは以下の順番で起動してください。

rpcbind.serviceypbind.service ユニットを起動有効化してください。

テスト

ここまでのセットアップをテストするために、yptest コマンドを実行します:

# yptest

正しく動作しているようでしたら、NIS ユーザーデータベースの中身を見て下さい (/etc/passwd と同じフォーマットで出力されます)。

/etc/nsswitch.conf

NIS を実際に使ってログインするには /etc/nsswitch.conf を編集する必要があります。passwd, group, shadow の行を以下のように修正してください:

passwd: files nis
group: files nis
shadow: files nis

そして必ず再起動します:

# systemctl restart ypbind

NIS クライアントの設定に関する詳細は section 7 of The Linux NIS HOWTO を見て下さい。

/etc/pam.d/passwd

クライアントマシンからサーバーのパスワードを変更できるようにするには、サーバーで yppasswdd.service を起動してください。

クライアントの /etc/pam.d/passwd を編集して nis パラメータを password/pam_unix.so に追加:

password     required     pam_unix.so sha512 shadow nullok nis

トラブルシューティング

systemd 235 の問題

systemd-logind のサンドボックスの問題によって、systemd-logind サービスの IP 接続が拒否される場合、以下のように設定が必要です:

/usr/lib/systemd/system/systemd-logind.service
# IPAddressDeny=any

参照