1read 100read
2013年07月UNIX592: UNIX認証方式いろいろ (185) TOP カテ一覧 スレ一覧 2ch元 削除依頼
ユニ板も 五七五だよ 逝ってヨシ (110)
【人生色々】UNIX遍歴を語れ!【UNIX色々】 (105)
未だに10Base (116)
マイナーハードにオープンソースOS入れてる奴は変態 (110)
Motifは時代遅れか? (165)
■unix金言名言集■ (100)

UNIX認証方式いろいろ


1 :02/07/30 〜 最終レス :2011/12/11
もうNISの時代はおわったのか。
LDAP、PAM、Kerberosいろいろあるけど。
お前はどれを使う!?

2 :
Webアプリケーションが流行れば流行るほど、LDAPかなんらかのDBが主流になるのかな

3 :
PAM と LDAP,Kerberos はレイヤが違うと思われ。
以前 Linux 板に PAM スレが立ったがあっという間に沈んだという。

4 :
LDAPに移行したいだけど,FreeBSDって対応してます?

5 :
>>4
/usr/ports/security/pam_ldap なんてのがあるみたい。
使った事無いからちゃんと動くかどうか知らんが。

6 :
うごくよん.
LDAPよりも,SQLでいきたいなーとか思っておるです.

7 :
>>6
SQLは単にデータベースとしての仕掛けだから、認証方式という論点からは
ズレちゃうような。LDAPサーバのバックエンドとしてSQL(mysql? postges?)
が居るというのならわかるけど。

8 :
>>7
>LDAPサーバのバックエンド
あぁ...そのつもりなんだ.
やっぱ,中にはAccessで一元的に管理してぇとか言う人が居るんだよね.

9 :
iPlanet Directory Server とopenLDAPは同じ形式なんだろうか。
vpopmailやその他のopenLDAP対応した認証がiPlanet Directory Serverでも使えるのか?
iPlanetつかっているSolarisユーザーを声を聞かせてくれっ!

10 :
APOP, HMAC はアルゴリズム知ってます。
でも PLAIN と LOGIN がわかりません。
RFC に書いてありますかね?

11 :
NIS+は確実に死ぬな。(もう死んでるか

12 :
指紋認証でログインするシステムを誰かハックしてください。
おっと、網膜や声紋でもOKです。

13 :
>>12
指紋認証っつっても各社それぞれ判断基準が違うから何とも言えない。

14 :
>>8
SQL喋るRDBがバックエンドのLDAPサーバって俺も欲しいな。
Accessつーか、SQLでtableいじりてーよ。
>>11
NIS+ clientでも認証付きでtable entryいじれて、
あれはあれで良くできているよ。
LDAP(の現状の実装)だと、一般ユーザに変更させるときには、
サーバにloginさせたり、Web interface作ったりうざい。

15 :
>>13 本人を無理やり連れてくるってのはどうよ?
つまり本人をクラックするってことなんだけど。

16 :
FreeBSD4.6Rからはpam_sshとかいうのが使えるらしい。
これはなんか便利な認証方式なのではなかったけ?
具体的にどう使うのかキボーン

17 :
>>14
RDBMSがバックエンドのLDAP serverって既にあるんではないのか?
作るのも簡単そうだし。

18 :
>>17
あるんなら教えてくれ。探してもない。作ったらくれ。

19 :
>>16
パスワードの代わりに ssh の秘密鍵を暗号化してあるパスフレーズを入力する。
それで秘密鍵が読めれば login できて、
ログインシェルの前に自動で ssh-agent が動いて鍵を覚えてくれる。
なので、そこから別のホストにログインするのも(public key
authentication できるようになっていれば)何も入力しなくてよい。

20 :
>>15
そういえばこんなのがあったな。
http://www.mackport.co.jp/WEEKLY-BIO/bio033/bio033.htm

21 :
あげー

22 :
qmail環境でqmail-popまたは、vpopmailでNISをかって認証をしたいんだけど、
chackepasswordなんかが/var/yp/etc/passwdを参照をする洋にするにはどうすればいいんですか?

23 :
もうNISはマジでやめておこう。今からそれを採用するのはヤバイだろ。

24 :
NISの何がやばいのか解説キボンヌ。

25 :
>>24
23はauto_homeとか使ってないんでしょう。
ユーザー認証だけならLDAPでいこうとする気はわかるけど。

26 :
>>23 は NIS と NIS+ を混同してると思われ。
NIS+ は End Of Life
しかし、NIS はバリバリ現役。

27 :
>>22
OSなんなの?
Solarisとかなら、/etc/nsswitch.conf書き換えるだけじゃないの?
qmail-getpw.cとか読んでもそうとしかおもえんが…
>>26
何百台でdatabase共用しようと思うと、NISじゃ無理だよ。
nispopulateで同期する時は、map全体を転送ちゃうからscaleしない。
数台ならNISで充分、わざわざNIS+勉強する意義なし。

28 :
>>27
はいsolarisでございます。
nsswitch.confで/etc/passwdよりもnisのpassswdを優先させたらいいのか?
chechpasswordの認証は直接/etc/passwdを参照しているとおもっていたから…。
聞くより実行。さっそく試してみます。
あー、でもやっぱり明日にしよーっと!

29 :
>>26
そうだね。だからSunは10年ブリに新たな認証方式として、NIS+の変わりになるLDAPを採用した。
iPlanetなどでも力はいってるね。

30 :
>>27
やっぱり/etc/nsswitch.confを書き換えたところで、qmailのpop認証とかsmtp-auth認証は
chechpasswdを使っているから無理だった。
いま思えばやはり当たり前の事。
27はqmailのユーザー認証はなに使っているの?

31 :
>>30
何で当たり前なの? checkpasswordのsource読んでみた?
getentで、/etc/nsswitch.confが有効になっているか調べてみたら?
/etc/init.d/nscd stop; /etc/init.d/nscd startもした?
NIS+→LDAP移行中

32 :
NIS はまだまだ必要。多分これからも必要。
NIS+ がターゲットにしていた部分は多分 LDAP とかになっていくんだろうね。

33 :
LDAP、updateがもうちっと分散指向になればな〜。

34 :
LDAPって騒がれてるのは、知ってるんですが、
イマイチなんなのかわかりませぬ。
どこかLDAPがなにものなのか解説したサイトなどありませぬか?

35 :
【LDAP Linux HOWTO】
http://www.linux.or.jp/JF/JFdocs/LDAP-HOWTO.html
【LDAP Implementation HOWTO】
http://www.linux.or.jp/JF/JFdocs/LDAP-Implementation-HOWTO/
【LDAPによるパスワードの一元管理】
http://www.atmarkit.co.jp/flinux/rensai/root02/root02a.html

36 :
【日本語LDAP RFC】
http://www.cysol.co.jp/contrib/ldap/index_j.html

37 :
>>33 まぁ LDAP が想定してるのはあくまで「ディレクトリサービス」ですからねぇ。

38 :
>>31
もちろんNISは動いてますよ。ただcheckpasswordのソースは私は見ましたが 理解できる程cを理解していません。
もうちょとcheckpasswordをしらべますが、NISは関係ないとおもうんですけど。(/etc/passwdを参照する単なるプログラムだと理解しているのですが

39 :
>>38
違うって言ってるだろ、アフォ!
NISが動いてるかじゃなくて、
libnslがNISを参照してるかgetentで調べんだよ、この低能!

40 :
ああ、とうとう怒らせてしまったな。。

41 :
>>39
そのへん教えてくれませんか?(libnsl

42 :
>>41
とーにーかーくー、getentでNISにしかないpasswd entry引いてみろ。
その次にDES認証モードで運用しているかどうかも調べろ。
DES認証モードならば、(以下続く

43 :
>>42
レスありがとうございます。
getent passwd
全部でます。
getent passwd [ユーザー名]
でます。

solarisなのでDES認証です。

44 :
>>43
> solarisなのでDES認証です。
じゃあ、-DHASGETSPNAMつけて、checkpasswordをcompileしないと。
ちなみにSolarisはDES認証なしでも運用可能な。
# DES認証時/shadow password利用時には、
# getpwent(3)では、password fieldをget出来ない。(変な仕様だ…)

45 :
kerberos はアメリカの輸出規制どーなったんですか。
もう大丈夫なの?

46 :
>>45 名前しか知らないよ〜 勉強しよう…

47 :
age

48 :
もしかしたら>>43は、
passwd fieldの暗号化にDESを使っていることと、
NIS+のDES認証モードの区別ついてないのかな…

49 :
NIS+の話?

50 :
>>49
>>38の場合は、+は余計だった。
NISにもNIS+にもDES認証モードがある。
NFSにもDES認証モードがある。SunOSの場合、同じ鍵対を使う。

51 :
>>45
56bit DES (Kerberos 4) については98年から規制緩和された。
http://www.watch.impress.co.jp/internet/www/article/980917/encrypt.htm
http://www.rccm.co.jp/~juk/krb/
http://www.openbsd.org/ja/crypto.html

52 :
認証に指を差し込む穴に指を入れさせる。
認証に失敗すると、内部の刃物で切断し、終了。

53 :
pc3鯖、落ちてる?

54 :
>52
「いやーごめんごめん、君の認証データを
人事異動の際に移しておくのを忘れちゃってたよ」

55 :
この前PDC環境をSolarisとSambaで構築しました。
便利で便利でない様な…。

56 :
>>55
NTクライアントでちょっと凝ったことするとsmbdがコア吐いてたり。

57 :
ついでに管理者が弱音を吐いたり。

そこ、石投げないでください(-_-)

58 :
くそぉ・・・NIS+ サポート打ち切りかよ・・・
せっかくおぼえたのに・・・

59 :
>>58
ふぉんとですか???

60 :
Solaris 9でnisclientを実行すると、
******** ******** WARNING ******** ********
NIS+ might not be supported in a future release. Tools to aid
the migration from NIS+ to LDAP are available in the Solaris 9
operating environment. For more information, visit
http://www.sun.com/directory/nisplus/transition.html
******** ******** ******* ******** ********
って出てきます。5年はサポートが続くそうです。
まあ付属のLDAPでいいけどさ。credも使えるし。
NIS+とほとんどかわんね─よ。>>58
Multi-paltformになった利点の方が大きい。

61 :
ここは質問スレッドではないのかもしれませんが
どうか一つ質問させて下さい.
Solaris8 x 10台程、Linux x 2台程の規模をNISを使って
管理しています.Solaris8の1台をNIS primary serverにして
あとは全てNIS clientです.パスワード有効期限を設定していますが
NIS serverにログインしたときには警告が出て変えろと言われますが
NIS clientにログインしても何も警告が出ません.パスワード有効
期限が切れたアカウントでも問題なく使えます.これだとNIS client
を使っているユーザーには何時までたってもpasswordを変えてもらえなくて困ってしまいます.
NISはpasswdの中のpassword部分をshadowのpassword部分と置き換えた
ものをmapとして配っているだけのようなので(ypcat passwdとしてみると)shadowの中にあるのパスワード有効期限やアカウント有効期限、
などの情報は配っていないようです.
clientでもパスワード期限切れを警告させたり期限切れアカウント
をloginさせなくするのにはどうしたら一番よいでしょうか。
(1)NISの仕様上不可能.NIS+ならできるので移行せよ
(2)NISの仕様上不可能.LDAPならできるので移行せよ
(3)NISの仕様上不可能.XXXに移行せよ
(4)NISでもXXとすれば可能
NIS+, LDAPを使ったことがないのですがもしこれが出来るなら
移行しようと考えているのです.

62 :
なるほど。質問者に教えられました。ありがとう。たしかに61の言うとうりの参照方法なら不可能なのかな。(今日は遅いので明日調べてみます)
ところで、LDAP導入について61に便乗して質問します。
Solarisに入れたOpenLDAPの環境で/etc/nsswitch.ldapは使えるの?
iplanet Directory Server用なのかな?
何の為にあるのか謎。

63 :
>>61
shadowマップはどうなってるの? (man -s 5 shadow)
nsswitch.confは大丈夫? (ypmatchと違い、getentは常にnsswitch.confを反映する)
>>62
> 何の為にあるのか謎。
nsswitch.{files,nis,nisplus,ldap}は、nsswitch.conf用のsample。
# cp -p /etc/nsswitch.{ldap,conf}
すれば、name serviceはLDAPを参照するようになる。(稼働していればね)
いじょ

64 :
>63
>>nsswitch.conf用のsample。
それは承知です。iPlanet用なのかどうか謎。ってことです。
>>(稼働していればね)
iPlanet Directory ServerのLDAPのデーモンns-slapdが稼働していればね?ってことですか?
OpenLDAPのslapdが稼働していればね?ってことですか?
それともどちらでもOK?

65 :
>>64
LDAP はプロトコルってことを理解している?

66 :
62,63さん、ありがとうございます.
63>> shadowマップはどうなってるの? (man -s 5 shadow)
(Solaris 8/sparcでman -s 4 shadowで)調べると、(一部抜粋します)
username:password:lastchg: min:max:warn: inactive:expire:flag
でした.
63>>nsswitch.confは大丈夫? (ypmatchと違い、getentは常にnsswitch.confを反映する)
grep passwd /etc/nsswitch.confとした所、
passwd: files nis
でした.まず最初に/etc/passwdを見て、その次にNISでpasswdのマップを参照して
いるようです./etc/passwdのパスワード部分はxにしてあり、
ypcat passwdで(例えばアカウントhogeの部分を)調べると,
hoge:Yp52g0OOGbEAU:150:100:Hogeo Hogeta:/home/hoge:/usr/local/bin/tcsh
getent passwd hogeの結果は(getentというcmdを知りませんでした...)
hoge:x:150:100:Hogeo Hogeta:/home/hoge:/usr/local/bin/tcsh
ypmatch -d "nis-domain-name" hoge passwdの結果は
ypcat passwd | grep hogeと同じでした.
/etc/passwdには(NIS server, NIS clientともに)+の記述はしていません.
昔、SunOS4.1.4の時にはnsswitch.confが無かったので+を記述していましたが.

67 :
61です.66が長くなったので分けて続けます.
shadowというマップはNISでは(/var/yp/Makefileを見ると)配って
いないので
% ypcat shadow
no such map in server's domain
% ypmatch -d "nis-domain-name" hoge shadow
Can't match key ono in map shadow.
Reason: no such map in server's domain.
%getent shadow ono
Unknown database: shadow
usage: getent database [ key ... ]
となります.
getspnam(3C)を読みますと、「もしあなたがNIS DBを使っている
場合は、shadowの情報はpasswd.bynameを参照することにより
得られる.ただしこれ(passwd.bynameは)sp_namp and sp_pwdp
しか(つまりlogin nameとencrypted-passwordしか)含んでいない」
とあります.
やはり、NIS clientが得る情報は、NIS serverのpasswdの2番目
の部分に、shadowのencrypted passwordを挿入したもののようです.

68 :
結局私に考えつく方法として次の3つだけです.
(a)(61-(4)の方法として)
/var/yp/Makefileでpasswdだけ他の(auto.homeやservicesと違って)
ファイルと違う扱い(shadowの一部だけpasswdのmapに載せて配るということ)
をしているのが原因なのだから、いっそのこと
/var/yp/MakefileのNISで配るmapにshadowも付け加える.
/etc/nsswitch.confにもshadowの行を付け加えて、NIS clientでも
ypcat shadowが実行できるようになるか試してみる.
(b)(61-(1),(2)として)NIS+かLDAPにして試してみる.
(c)他の角度からの運用で次善的解決法を模索する.

69 :
(a)はちょっと怖くてやりたくない.
(Sunが書いている/var/yp/Makefileのを編集するのはよくやると
思いますが、shadowを編集して入れてしまうというのが未体験
ゾーンなのです)
(b)はNIS+かLDAPで(clientでのパスワード期限の警告、
期限切れのlockが)出来るという機能面の保証がまだ無いので
(ちょっと見つかりませんので)まだ試すには時間がかかる.
ので、(c)の解決法としてNISサーバーでcronで1日一回、
passwordの期限切れが迫っている人には警告のメールを出すように
perl scriptを書いて走らせるようにしました.script自体は
今のところうまく行っているようです.しかしこれでは
* E-mailを読まなかったり使わない人、無視する人には効果がなく、
引き続きNIS clientではpasswordがexpireされたuserでも
 loginできてしまう.という弱点自体はそのままです.
(a)(b)の方法を引き続き検討してみます.
(b)のNIS+やLDAPならclientでもpasswordのexpirationに関する
チェックが出来るよ、という運用実績などある方いましたら
お願いします.
もし(a)の方法を試す勇気が出たら試してここでまた報告します.
それでは.

70 :
少し調べてみると、/var/yp/Makefileにshadowのエントリがあるのは
Linuxではわりと普通らしいです.Solaris 8の/var/yp/Makefile
に、このLinuxのMakefileのshadowのところを見てshadow部分を
書き加えて後ほどやってみます。(進捗あったら報告します)
もし出来ても(NIS clientでpassword expirationがチェックされる
ようになっても)ypcat shadowで皆が他人のpassword expiration date
や、password last change dateなどをお互い知りたい放題に
なってしまうのであまり好ましいとは思えませんが.
ところで/etc/passwd.adjunctってSolaris 2.Xで使っている
人いますか?Webで調べるとどうもSunOS4.Xでpasswordを
shadow化してC2セキュリティにする場合はこれを使え、
とか書いてある割には、(/etc/shadowが元からある)
Solaris 8の/var/yp/Makefileにもpasswd.adjunctの
部分はありますし...AnswerBook2でも隠蔽されたパスワード
と監査情報(<-??)を含むと書いてあるだけでいまいち分かりません.

71 :
>>70
おめー長げ─よ。
> このLinuxのMakefileのshadowのところを見てshadow部分を
> 書き加えて後ほどやってみます。(進捗あったら報告します)
NIS(YP)の場合、shadow mapを作る、これが唯一の方法。
> 63>> shadowマップはどうなってるの? (man -s 5 shadow)
> (Solaris 8/sparcでman -s 4 shadowで)調べると、(一部抜粋します)
> username:password:lastchg: min:max:warn: inactive:expire:flag
> でした.
知ってるって。オマエサンのYP serverがどうなってるか聞いたの。
shadow mapがないなら、出来なかったのは当然。
> もし出来ても(NIS clientでpassword expirationがチェックされる
> ようになっても)ypcat shadowで皆が他人のpassword expiration date
> や、password last change dateなどをお互い知りたい放題に
> なってしまうのであまり好ましいとは思えませんが.
NIS(YP)はそういうもの。(均一なアクセス権)
DES認証モードで運用したときのNISとNIS+の違い、
NIS+のper entryなowner, group, access rights(ugow+rcmd)等を調べて。
(そんなこと気にするのなら当然DES認証モードで運用してるよね?)

72 :
>>68
> /etc/nsswitch.confにもshadowの行を付け加えて、
大体いいところを攻めてるんだけど、
マニュアル、ドキュメントをちゃんと読んでないっぽい。
nsswitch.conf(5)より、
passwd getpwnam(3C), getspnam(3C)
です。
NIS+移行passwd, shadowのtable(map)は統合され、
Solarisのname service(libnsl)では、
passwd table(map)として統一して扱うようになりました。
// 二つに分かれていたのは、歴史的経緯から来る実装上の問題だから。
// APIはまだ二つに分かれてるんだけどね…
// libnslのコード見たければ、Sunがglibcに寄贈した奴を見て。
NISのマニュアルと徹底的に読むことをおすすめする。
ちゃんと理解していないとLinuxの設定の方で辛いと思う。

73 :
>65
プロトコルって何かわかってる?

74 :
>>73
いちいちageて下らね〜こと書くヴァカ発見

75 :
>>73
プロトコールは手続きで宜しいか?
>>74
逝ってよし

76 :
>71さん、>72さんありがとうございます。

結論から言いますとまだ解決していませんが取り敢えず途中報告
です。72さん、確かに66-70は"不必要に"長かったです。
すんません。言ってるそばから今回も少し長めですが、勘弁して
下さい。情報が足りないよりは良いかなと...

nis-server, nis-clientともに64bit Solaris 8/sparcです。

(1)nis-server:/var/yp/Makefileを編集
1-a)
all: passwd group hosts aliases auto.master auto.home

all: passwd shadow group hosts aliases auto.master auto.home
に変更

1-b)
passwd: passwd.time
group: group.time
の間に"shadow: shadow.time"の一行を挿入


77 :
1-c)
## 2002.9 added manually by X.XXXXX
shadow.time: $(PWDIR)/shadow
@(awk 'BEGIN { FS=":"; OFS="\t"; } /^[a-zA-Z0-9_]/ \
{ print $$1, $$0 }' $(PWDIR)/shadow $(CHKPIPE))| \
$(MAKEDBM) - $(YPDBDIR)/$(DOM)/shadow.byname;
@touch shadow.time;
@echo "updated shadow";
@if [ ! $(NOPUSH) ]; then $(YPPUSH) -d $(DOM) shadow.byname; fi
@if [ ! $(NOPUSH) ]; then echo "pushed shadow"; fi
を挿入。
(このフォームに書き込んだ時に改行が変になっているかも
知れませんが、tabなどのmake文法はOKです)
(Solaris 8はshadow mapを作らないようになっているようなので、
Vine LinuxやDebian GNU/Linuxの/var/yp/Makefileを取ってきて
参考にしました。なんだかmakeでも文法が微妙に違う???)
(2)nis-server,client(Sol8):/etc/nsswitch.confを編集
shadow files nis
ただしLinux(Vine2.1.5)の/etc/nsswitch.confには
元からあったのでそのまま。

78 :
(3)nis-serverで
# cd /var/yp
# /usr/ccs/bin/make (Solarisのmakeです)
(4)nis-server, clientを全てreboot
上記のような事(1)-(4)を行なった結果、次のようになりました。
(a)nis-server:/var/yp/shadow.time,
/var/yp/"nis-domain-name"/shadow.byname.{dir,pag}が
作成された。
(b)nis-server, nis-client(Solaris, Linuxともに)で
$ ypcat -k shadow | grep hoge
hoge hoge:cpMpWPFTP7de2:11954::62:7:93:12500:
$ ypmatch -d "nis-domain-name" hoge shadow
hoge hoge:cpMpWPFTP7de2:11954::62:7:93:12500:
でNIS severにshadow mapを見に行っているようだ。

79 :
ただしgetentだと
$ getent
不明なデータベース: shadow
詳細は`getent --help' または `getent --usage' を実行して下さい.
- もしlocaleが英語なら、
Unknown database: shadow
Try `getent --help' or `getent --usage' for more information.
またnis-server:/var/yp/"nis-domain-name"/で
# makedbm -u shadow.byname | grep hoge で見てみると、
hoge hoge:cpMpWPFTP7de2:11955::50:7:1000:12418:
でアカウント名がキー、行全てがデータのdbmが確かに出来て
いるようです。

80 :
(c)けれどもnis-clientにloginするとやはりshadowの内容は
参照されていないようです。例えばhogeのパスワード有効期限
をわざと切らしてやってからloginしても何事もなくlogin出来て
しまいます。
もし基本から間違えていれば別ですが、そうでない場合は、
Solarisをnis-serverにしたままだと、これからどこをあたったら
よいか分からないので、
nis-serverをLinuxで構築して,clientもLinuxとSolaris両方で作って
testして見ようかなと思っています。
Debian Linux:/var/yp/Makefileには最初からshadow mapを作る記述が
あったので、もしこれで出来たならまたなにかSolarisの方でも
進めるかも知れないと考えています。

81 :
>>79
#include <stdio.h>
#include <shadow.h>
int main(int argc, char *argv[]) {
int i;
for (i = 1; i < argc; i++) {
struct spwd *sp = getspnam(argv[i]);
if (sp == NULL) {
perror("getspnam");
exit(1);
}
printf("%s;%s;%l;%l;%l;%l;%l;%l;%x\n",
sp->sp_namp, sp->sp_pwdp, sp->sp_lstchg,
sp->sp_min, sp->sp_max, sp->sp_warn,
sp->sp_inact, sp->sp_expire, sp->sp_flag);
}
return 0;
}
とりあえず実行してみれ。

82 :
>>81さん 遅くなりました.
とりあえず実行してみました(コンパイルではerrorもwarningもでない)
が標準出力になにも出ませんし、ファイルも出来ません.
% ./yptest
% ./yptest hoge
getspnam: Bad file number (hogeがなんであってもこうなるようです.
yptestは81でもらったソースをコンパイルして出来た実行ファイル.
gcc3.0.2, 64bit Solaris 8(sparc), NIS serverでもNIS clientでも同じ
結果)
なんだかレベルにちょっと断層があるようなのでじっくり(理解してから)
やってみます.まずはシステムコールって何?あたりから…


83 :
嘘言ってました.-Wallつけると標準エラー出力にでます。warning
なので大丈夫とは思いますが.
yptest.c: In function `main':
yptest.c:11: warning: implicit declaration of function `exit'
yptest.c:16: warning: unknown conversion type character `;' in format
yptest.c:16: warning: unknown conversion type character `;' in format
yptest.c:16: warning: unknown conversion type character `;' in format
yptest.c:16: warning: unknown conversion type character `;' in format
yptest.c:16: warning: unknown conversion type character `;' in format
yptest.c:16: warning: unknown conversion type character `;' in format
yptest.c:16: warning: too many arguments for format

84 :
>>69
いっそ期限が切れたら cron でスクリプト回してパスワード潰してしまうんでは駄目?

85 :
>84さん、ありがとうございます.
lockまでしてしまうと、確かにNIS clientでもloginされなくなりますが、
lock解除は一般ユーザーでは出来ないのでroot(つまり私)の所へ
くるでしょうから手間が増えてしまうのであまりやりたくないのです.
平均3日に一回位パスワードが切れている人が出ているので…
とりあえず今は警告メールを送る(c)だけで運用しています.

86 :
>>83
< #include <stdlib.h>
< printf("%s;%s;%ld;%ld;%ld;%ld;%ld;%ld;%x\n",
な。(Compileしてなかった)
rootでも取得できなければ、libraryになにか問題があると思う。
ypcatでは取得できているみたいなので。
ltrace/strace(Linux), truss(Solaris)で調べてみてちょ

87 :
>>86さん
# gcc -Wall -o yptest yptest.c
yptest.c: In function `main':
yptest.c:17: warning: long int format, int arg (arg 4)
yptest.c:17: warning: long int format, int arg (arg 5)
yptest.c:17: warning: long int format, int arg (arg 6)
yptest.c:17: warning: long int format, int arg (arg 7)
yptest.c:17: warning: long int format, int arg (arg 8)
yptest.c:17: warning: long int format, int arg (arg 9)
# ./yptest
# ./yptest "なにを書いても"
getspnam: Bad file number
もちろん一般ユーザーでも結果は同じです。実行はNIS server上。
ちなみにSolaris 8にtruss, straceは有りました。
ltraceは無いみたいです。
かなり分かっていない感じなので精進してから再トライします。
System call = OS API? 出直します。

88 :
>>87
man getspnam | head -4
Standard C Library Functions getspnam(3C)
システムコールじゃない

89 :
>>87
> # ./yptest "なにを書いても"
> getspnam: Bad file number
file descriptorがおかしいって事だからなんか変。
とりあえず、
# truss ./yptest root

90 :
>> 89さん
まず最初に、87の
> # ./yptest "なにを書いても"
> getspnam: Bad file number
は私の間違いでした.すいません.
引数としてaccount-nameを食わせればよいということすら
プログラム(81&86)から読み取れなかったのです。今実行してみた所、
# ./yptest root
root;Fn1m.j9izt0.w;-1;-1;-1;-1;-1;-1;0
一般ユーザーのアカウントをrootの代わりにいれても
同じような出力が出てきます.
nishida;ub94r.Mf346ZA;-1;-1;-1;-1;-1;-1;0
NISで配られているパスワードが見えています.ただし、nishidaのshadowは
nishida:ub94r.Mf346ZA:11956::50:10:::
なので50などのshadow中の(パスワード以外の)情報は出てきていない
ような気がします.
まずは報告まで.それでは.

91 :
>>90
> # ./yptest root
> root;Fn1m.j9izt0.w;-1;-1;-1;-1;-1;-1;0
そりゃ、あかんやん。YP shadow map読めて/読んでないよ。
nsswitch.confを
shadow: nis files
でも駄目なの? (なんでfilesを先に書く?)

92 :
>>91さん
あかんです。確かに。
nis filesにして(OSもrebootして)試してみましたがyptestの結果は
変わりませんでした。
files nisにしている理由はSolaris8の
NIS用nsswitch.confテンプレート(/etc/nsswitch.nis)がそうだったから
というだけです。今はNIS serverで/etc/passwd, shadowから直接
NIS mapを作っているので、NISでrootも配っているんです。
files nisにすると全てのhostsのrootパスワードがNIS serverと同じに
なってしまいます。
web siteなどを調べると、NISで配るmapのためのファイルは/var/ypなどに
コピーして(passwd, shadowから)rootを除いて(/var/yp/Makefileを
いじって)運用した方がよいと書いてありますがそこまでは
まだやっていません。
本題の方はもう少し自分で調べて試してみます。進捗あったらまた報告します。

93 :
(^^)

94 :
ネットワーク再構築テスト

95 :
nis から ldap に移行したいと思っておるが、
パスワードの形式を des から md5 に変更しないといけない?

96 :
OSは何よ
つーか NIS や LDAP が認証するわけじゃねーってのは
わかっておるか?
どっちもあくまでデータベースにすぎんわけで。
あ、でも
ttp://taku.ath.cx/index.php?Server%2FLDAP
ってのを見つけた。
ばーぢょんに気をつけれ。

97 :
(^^)
98 :あぼーん:あぼーん
あぼーん

99 :
>>96
NIS -> LDAP なんてことするのは Solaris8 or 9 以外にはちと考えにくい

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼
セキュアOSってドウヨ? (112)
UNIXのココが(・∀・)イイ! (113)
ひたすら何かのソースコードを公開するスレ (152)
最低のウインドウマネージャー (121)
おすすめのunixって何? (126)
読み飛ばしてる言葉を告白するスレ (140)
--log9.info------------------
Mr.Children1433 (1001)
TM NETWORK/TMN vol.240 (310)
BREAKERZ Part46 (288)
ASPARAGUS part18 (177)
Dragon Ash 135 (324)
【CCB】C-C-B 通算50【ココナッツボーイズ】 (692)
ASIAN KUNG-FU GENERATION 153 (635)
【盗作】ART−SCHOOL part85【先生】 (143)
CHAGE and ASKA Vol.514 (1001)
Sound Horizon → 406番目の地平線 → (232)
○● capsule Part59 ○● (135)
【LDH系】FLOWER part7【E-Girls 】 (760)
RADWIMPS part58 (457)
Kalafina Part6 (461)
BUCK-TICK vol.223 (302)
TUBEスレッドPart96〜Lonely Revolution編〜 (303)
--log55.com------------------
なんj EXVS部 ☆11
なんJデュエマプレイス部 ★7
【ぬんぬん推奨】なんJ イキとも部★41 (@1人1)
なんJDQWALK部★4
なんJHCNI部 part279
なんJパチンコパチスロ部★556
なんJGRBL部★274
【マイアの】なんJVYouTuber部 100186【おへそ】