アプリ版:「スタンプのみでお礼する」機能のリリースについて

こんばんは~。
RedHatLinux9.0を駆使し、会社でサーバ構築をやっています。
とりあえず、社員全員分のユーザ(LINUXユーザ)を作り終え、SAMBAでも導入しようかなとSAMBAの情報をいろいろ調べてみると、またSAMBAユーザとパスワードを設定しなければいけないことがわかりました。(;;

なにぶん社員が多いものでかなり億劫です。
どうにか回避策はありませんでしょうか。
こんなツールがあるよ~とかでいいので。
よろしく御教授願います。m(_ _)m

■SAMBA条件
ユーザごとに認証する。
パスワード入力は暗号化されたもので認証する。

A 回答 (5件)

No3です。

昔ソラリスでアカウント一括で作ったときのあんちょこ載せておきますので参考にしてください。

ユーザーアカウントの一括登録
ターゲットにするファイル(とその作成方法):
/etc/passwd (エクセルで作って置き換え)
/etc/shadow (シェルスクリプトで登録)→これをexpectにやらせる
/etc/group (手入力)

適当なディレクトリに3つのファイルを置く。
/export/home/userpasswdlist.txt
/export/home/passwd.sh
/export/home/passwd.expect
それぞれ
「ユーザー名:パスワード となっているリストファイル」
「リストを読み込んでexpectスクリプトに渡すシェルスクリプト」
「パスワード設定を自動化するexpectスクリプト」
である。内容は

「userpasswdlist.txt」
ユーザー名1:パスワード1
ユーザー名2:パスワード2
ユーザー名3:パスワード3
...etc

「passwd.sh」(chmodで実行可能に。このスクリプトを実行することでパスワード設定が始まる。)
#!/bin/sh
IFS=:
set -f
while read line ; do
set $line
/export/home/passwd.expect $1 $2
done < /export/home/userpasswdlist.txt

「passwd.expect」(chmodで実行可能に。「passwd.sh」から呼ばれる。)
#!/usr/local/bin/expect
set user [lindex $argv 0]
set password [lindex $argv 1]
spawn passwd $user
expect "*password:"
send "$password\n"
expect "*password:"
send "$password\n"
expect eof

「passwd.sh」を実行すると、指定したパスワードが暗号化されて「shadow」ファイルに登録され、アカウントが利用可能になる。

いちいち手でパスワードを打つのが面倒なら、こういう風にやるという方法もありますよ。
    • good
    • 0
この回答へのお礼

あっ、ありがとうございます(^^)
こういうのを待っていたんです。
expect……勉強不足です。
これを気にシェルスクリプト勉強しようと思います。
対話的なものを自動にできるなんてすばらしいですね。
ほんとに助かりました。
でも、社員の1/4ぐらいタイプしてしまった(笑

お礼日時:2003/11/25 22:44

No3です。


> この作業が嫌なんです。
> 名前タイプして、パスワード2回タイプしての繰り返し…

いやいや、だから、それをしなくてすむようにするのがexpectですよっ・・・てスクリプト使えないんですか・・・。(対話的なコマンドに自動で応えるっていうのはそういう意味ですよ~!)
「この作業」がいやだからスクリプトを勉強するんですよ、というのは置いておいて、
# mksmbpasswd.sh < /etc/passwd > /etc/samba/smbpasswd
したら一発なはずですよ。この文の意味は分かりますか?ユーザーを作るとこの「/etc/passwd」ファイルにユーザー情報が書き込まれますが、それをそっくりそのままSAMBAのユーザー情報ファイルであるところの「/etc/samba/smbpasswd」に内容コピーしてやる、ということですよ?
また私個人的にはRH社の9に対するサポートが終わっても、もともとRH社のサポートって使ったことないから気にしてないんですけど・・・場合によってはいまだに7.3使ったりすることもありますしね。(公開サーバーを運営しているわけではないので。)
    • good
    • 0

あとPerlがつかえるなら


crypt
も。

この回答への補足

Perlは使えません。
スクリプト言語はひとつも習得していません(^^;

補足日時:2003/11/22 00:57
    • good
    • 0

# mksmbpasswd.sh < /etc/passwd > /etc/samba/smbpasswd


かもしくは
# mksmbpasswd.sh < /etc/shadow > /etc/samba/smbpasswd
ですかね。
smbpasswdの書式とpasswdやshadowの書式を見比べてください。
UNIX上のユーザー作成にも、対話的なコマンドに指定した答えを返してくれるexpectが便利かと。

この回答への補足

回答ありがとうございます。
これも結局SAMBAのパスワードファイルができるだけで
また、ユーザごとにパスワードを入れてやらなければいけませんよね?
この作業が嫌なんです。
名前タイプして、パスワード2回タイプしての繰り返し…

やはりこれしかないんでしょうか?

補足日時:2003/11/22 00:52
    • good
    • 0

はじめまして。



Googleで「SAMBA」、「passwd」、「ユーザ」、「同期」をキーワードにして調べてみたら
passwdファイルと同期させる方法が書いてあるページを見つけました。

以上、ご参考までに。
では。

参考URL:http://www.atmarkit.co.jp/flinux/samba/sambatips …

この回答への補足

このページ見ました。
(1)は条件に適さない…平文のため
(2)はもうSAMBAパスワードが入っていることを前提条件としている。←これが億劫
(3)一番可能性があるが詳しい説明がない。

ありがとうございました。

補足日時:2003/11/22 00:41
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!