Mazn.net

やってみて 調べてみて 苦労しなけりゃ 箱は動かじ

LDAPサーバ構築 その2 - Sambaサーバとの連携 @ Debian etch

LDAP+SambaでPDCを構築する方法です。

# apt-get install samba-doc smbldap-tools

設定は基本的には/usr/share/doc/smbldap-tools/README.Debian.gzに書かれています。

LDAPのSamba用スキーマをインストールします。

# zcat /usr/share/doc/samba-doc/examples/LDAP/samba.schema.gz > /etc/ldap/schema/samba.schema

samba.schemaを/etc/ldap/slapd.confに追記します。

include       /etc/ldap/schema/samba.schema

性能向上のために、ldapのDBにインデックスをはります。同様にslapd.confに追記。

 index         uid,uidNumber,gidNumber,memberUid       eq index         cn,mail,surname,givenname               eq,subinitial

index sambaSID eq index sambaPrimaryGroupSID eq index sambaDomainName eq

パスワードへのアクセスを変更

 access to attribute=userPassword

 access to attrs=userPassword,sambaNTPassword,sambaLMPassword

に変更

で、LDAPサーバを再起動します。

# /etc/init.d/slapd restart

Sambaの設定です。 /etc/samba/smb.confのすでにある設定項目を変更

...

 passdb backend = ldapsam:ldap://127.0.0.1/

obey pam restrictions = no passwd program = /usr/sbin/smbldap-passwd %u passwd chat = Newpassword %n\n Retypenewpassword* %n\n

さらに以下をGlobalの最後に追記

 os level = 64preferred master = Yes

domain master = Yes

ldap suffix = dc=hoge,dc=net

ldap machine suffix = ou=Computers

ldap user suffix = ou=Users

ldap group suffix = ou=Groups

ldap admin dn = cn=admin,dc=hoge,dc=net

ldap passwd sync = Yes

ldap ssl = No

*all*authentication*tokens*updated*

add user script = /usr/sbin/smbldap-useradd -m "%u"

ldap delete dn = Yes

delete user script = /usr/sbin/smbldap-userdel "%u"

add machine script = /usr/sbin/smbldap-useradd -w "%u"

add group script = /usr/sbin/smbldap-groupadd -p "%g"

delete group script = /usr/sbin/smbldap-groupdel "%g"

add user to group script = /usr/sbin/smbldap-groupmod -m "%u" "%g"

delete user from group script = /usr/sbin/smbldap-groupmod -x "%u" "%g"

set primary group script = /usr/sbin/smbldap-usermod -g "%g" "%u"

#======================= Share Definitions =======================

次にsmbldap-toolsの設定。これはsambaのユーザ管理などのツールで、パスワードをUnixユーザと同期させたりできます。 まずは設定

# zcat /usr/share/doc/smbldap-tools/examples/smbldap.conf.gz > /etc/smbldap-tools/smbldap.conf
# cp /usr/share/doc/smbldap-tools/examples/smbldap_bind.conf /etc/smbldap-tools/smbldap_bind.conf

/etc/smbldap-tools/にできたファイルを適宜変更します。 smbldap.confのSIDは

# net getlocalsid

コマンドで取得できます。(Sambaを起動しておく必要あり?) あと、ldapTLSは、今回はTLSを使用しないので"0"にします。 smbldap_bind.confにはadminのdnとパスワードを記述します。 最後に初期データ投入

# smbldap-populate -u 2000 -g 2000

-u -g でUID,GIDのスタート値を設定できます。 ユーザの追加は

# smbldap-useradd -a -N "hoge name" -u 2001 hogehoge

といった感じ

暗号化パスワードの生成

LDAPブラウザなどで直接ユーザのパスワードを変更したい場合、暗号化したパスワードが必要になるときがあります。

暗号化パスワードを生成したい場合は以下のようにして生成できます。

# slappasswd -h {CRYPT}

{CRYPT}は{md5}や{SMD5}などを指定。

LDAPサーバ構築 @ Debian etch

まずはapt-getでインストールします

# apt-get install slapd ldap-utils

インストールすると、自動的にホストのDNSからBaseDNが設定されます。 また、cn=adminというadmin権限ユーザも登録されます。

たとえば、hoge.netというホストならば、

# ldapsearch -W -x -Lb "dc=hoge,dc=net" -D "cn=admin,dc=hoge,dc=net"

とすれば、LDAP検索できます。

設定ファイルをいじってもいいですが、

# dpkg-reconfigure slapd

とすると対話形式でも設定できます。

デフォルトサーバ証明書の更新 @ CentOS 4

インストール時に自動的にインストールされるApacheのSSLの証明書を更新する方法。

# openssl req -new -key /etc/httpd/conf/ssl.key/server.key -x509 -days 365 -out /etc/httpd/conf/ssl.crt/server.crt

もちろん俺々証明書です。-daysの部分が有効期限の日数なので、期限長くしたい場合はここの数字を変えてください。

WordPress プラグイン - Stat Traq導入

アクセス統計をとってくれるプラグインStat TraqをWordPressに導入しました。

Downloadはこちらから。

インストールはサイトに載っている通りなのですが、一応メモとして残しておきます。

  • 上記サイトからプラグインをダウンロード
    • ファイル名 : StatTraq_V1-1-1.zip
  • zipファイルを展開したらwp-contentとwp-stattraqというディレクトリが現れます。wp-content/plugins/stattraq.php をWordPressインストールディレクトリのwp-content/pluginsディレクトリへコピー。
  • wp-stattraqディレクトリはWorldPressインストールディレクトリの直下に置きます。
  • WordPressの管理ページのプラグインにStatTraqが現れるので有効にします。
  • ブラウザでhttp://blogのURL/wp-stattraq/stattraq-install.phpにアクセスし、"Create the StatTraq Table for version 1.1"をクリックするとデータベースにテーブルが作成され準備完了。

あとは管理画面からStatTraqからアクセスすれば統計情報が見られます。

統計情報例として、ページ毎のアクセス数、アクセス元のIP、リンク元などが取得できます。

EntityBean @ JBoss 4.2

JBoss 4.2でEntityBeanを作ってみた。

@Idアノテーションは書籍やネットを調べると フィールドでもgetterでもよいと書いてあるが、どうもフィールドにつけるとうまく動いてくれない。

バグなのかプログラムが悪いのかわからないが、getterだと動いてくれました。

EJB3 JPAのmapping-type @ JBoss 4.2

JBoss 4.2 でEJB3のJPA (JAVA Persistence API) のバックグラウンドのDBを設定する際、deployディレクトリにData Sourceのxmlファイルを置きますが、そのファイル内で指定する<mapping-type> はどこで定義されてるんだろ?と思い調べてみると、 server/default/conf/standardjbosscmp-jdbc.xml で定義されてた。

定義を見ると、今はPostgreSQL 8系を使用してるので "PostgreSQL 8.0"を指定すればよいことがわかる。

EJB3 JPAでEntityBeanを作成する際、@Idアノテーションで主キーを指定するのだが、さらに @GeneratedValueで採番の方法を指定できる。PostgreSQLのserialを使用したいがAUTOやSEQUENCEを指定してもserialを使用できない。

standardjbosscmp-jdbc.xml をいじればできそうだがどういじればよいかわからないので、今日は諦めです。

sshの公開鍵・秘密鍵

公開鍵・秘密鍵をたまにしか作成しないのでメモ

# ssh-keygen -t dsa  ←DSAがもっとも強力な暗号らしい

 Generating public/private dsa key pair.

 Enter file in which to save the key (/home/mazn/.ssh/id_dsa):

 Enter passphrase (empty for no passphrase): パスワード入力

 Enter same passphrase again: パスワード入力

 Your identification has been saved in /home/mazn/.ssh/id_dsa.

 Your public key has been saved in /home/mazn/.ssh/id_dsa.pub.

 The key fingerprint is:

 65:86:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx mazn@localhost

これで.sshディレクトリにid_dsaとid_dsa.pubが生成されます。
pubが公開キーです。このキーのペアをリモートのサーバに転送し、リモートサーバ上で

# cat id_dsa.pub >> ~/.ssh/authorized_keys

で登録完了

Apache 2.0 + OpenSSL

OpenSSLは SSLv2/SSLv3/TLSv1 をサポートしているオープンソースの暗号化ライブラリ。もともとNetscape社が開発していたもので、最初のリリースがSSLv2だったため、バージョンは2からとのこと。

世界中のセキュリティ専門家さま達がSSLv2の脆弱性を指摘、それを修正したものがSSLv3となったそうな。

TLSv1はSSLv3をもとに作られたらしく SSLv3≒TLSv1 と考えていいみたい。じゃ、何が違うんだ??って思うのが普通だと思うけど、そこまで調べてないです。

ちなみに、IE6ではデフォルトはTLSがoffになってます。なぜだろ?

Apache 2.0 は標準でこの三つのプロトコルをサポートしてるので、何も考えなくてもデフォルトで使えちゃいます。もし使うプロトコルをSSLv3/TLSv1に限定したいなら apacheのSSL設定ファイル(httpd.confとかssl.conf)に

SSLProtocol  SSLv3 TLSv1

のように書いてあげればOK.

Mazn blog 始動

ここでは主にIT技術的な話をメインに書いていきます

このブログについて

プライバシーポリシー

Cookieについて

当サイト(Mazn.net)ではGoogleが提供している分析ツール「Google アナリティクス」を利用して、ユーザーの行動を分析しています。Google アナリティクスのデータのプライバシーとセキュリティについてはこちらをご覧ください。Google アナリティクスはトラフィックデータの収集のためにCookieを使用しています。トラフィックデータは匿名で収集されており、個人を特定するものではありません。

広告の配信について

Google AdSenseによる広告サービスを利用しています。このような第三者配信事業者は、ユーザーの興味に応じた広告を配信するため、当サイトや他のブログ、サイトへのアクセス情報 Cookie(氏名、住所、メールアドレス、電話番号等個人を特定するものではありません)を使用することがあります。第三者通信事業者に情報が利用されることを希望されない場合は、広告の設定で広告を無効にしたり、Cookieを無効にすることができます。その他、Googleの広告におけるCookieの取り扱い詳細については、Googleのポリシーと規約ページをご参照ください。

免責事項

当ブログからリンクやバナーなどによって他のサイトに移動された場合、移動先サイトで提供される情報、サービス等について一切の責任を負いません。 当ブログのコンテンツ・情報につきまして、可能な限り正確な情報を掲載するよう努めておりますが、誤情報が入り込んだり、情報が古くなっていることもございます。 当ブログに掲載された内容によって生じた損害等の一切の責任を負いかねますのでご了承ください。 また、当ブログに掲載しているすべての記事は、予告なしに変更・削除されることがあります。予めご了承下さい。

お問い合わせ


このブログについて
プライバシーポリシー・お問い合わせ等
購読する(RSS)
記事検索
アーカイブ
カテゴリー
  • ライブドアブログ