2013年3月29日金曜日

Webminを利用してブラウザからユーザパスワード変更


Webminを利用すればLinuxのOSユーザのパスワードをブラウザから変更することが
可能ですが、それ以外の操作はさせたくない場合の設定方法をまとめます。

OS: CentOS 6.4(64-bit)
Webmin: 1.620


■ユーザ作成
あらかじめOSユーザを作成しておく必要があります。
※OSユーザ一括生成はこちらを参照。
今回はuseraddコマンドでユーザ作成します。
[root@centos64 ~]# groupadd -g 600 public [root@centos64 ~]# useradd -g 600 -u 6001 user01 [root@centos64 ~]# useradd -g 600 -u 6002 user02 [root@centos64 ~]# passwd user01 [root@centos64 ~]# passwd user02

■設定概要
1) ブラウザよりWebminにrootログイン 2) Webminユーザを作成 3) Webminユーザの編集でパスワードの変更のアクセス制御オプションを設定 4) 作成したユーザでログインしてパスワードの変更確認

■Webminユーザ作成
Webmin → Webminユーザ → 新しいWebminユーザを作成


■Webminユーザの作成
「user01」を作成する。

※変更箇所のみ
▼Webminユーザのアクセス権
 ユーザ名: OSで作成したユーザ
 パスワード: Unix認証
 本名: 適当に
▼ユーザインターフェイス設定
 言語: Japanese(JA_JP.UTF-8)
 パーソナルテーマ: MSC.LinuxTheme
▼使用可能な Webmin モジュール
 パスワードの変更にチェック(それ以外はチェックしない)

作成ボタンクリック

■Webminユーザ

↑作成したユーザ(user01)をクリック

■Webminユーザの編集

↑パスワードの変更をクリック

■モジュールのアクセス制御

パスワードの変更のアクセス制御オプション(変更箇所のみ)
 Users whose passwords can be changed: Only this user
 Can force users to change password at next login?: いいえ
 Change password in other modules?: いいえ

保存ボタンをクリック

■Webminユーザの編集

▼Permissions for all modules(変更箇所のみ)
 ファイル選択の root ディレクトリ: User's home directory
 Can send feedback email?: No
 Grant new module permissions to user?: いいえ
 Show Webmin search field?: いいえ

保存ボタンをクリック
その後ログアウト


■作成したユーザでログイン

ここのメッセージを変更することも可能です。IPアドレスとか表示させたくない場合も
考えられますし・・・。設定方法は後日まとめます。

■パスワードの変更



これで画面上からOSユーザのパスワードの変更ができています。

以上です。
前半の設定になりますが、ユーザインタフェイス設定のパーソナルテーマに
MSC.LinuxThemeを選択するところがポイントでしょうか。
画面イメージが変わりますが、システム情報が表示される画面を無くすことができます。

何かのお役にたてれば幸いです。

2013年3月23日土曜日

Webminのセキュリティ対策 SSL化とポート番号変更


WebminはWebブラウザからほぼすべてのOS設定が可能なため、アクセス等のセキュリティ対策
が重要です。少なくともデフォルトポートを変更し、SSL化してhttpsでの接続を推奨します。
そのための手順をまとめます。

OS: CentOS 6.3(64-bit)
Webmin: 1.620


■SSLインストール
[root@centos64 ~]# yum -y install mod_ssl openssl ======================================================================== Package Arch Version Repository Size ======================================================================== Installing: mod_ssl x86_64 1:2.2.15-26.el6.centos base 90 k Updating: openssl x86_64 1.0.0-27.el6_4.2 updates 1.4 M Transaction Summary ======================================================================== Install 1 Package(s) Upgrade 1 Package(s) (以下省略) [root@centos64 ~]# [root@centos64 ~]# /etc/init.d/httpd restart
SSLを有効化するためにhttpdを再起動。

■Net::SSLeayインストール
ブラウザでWebminにログイン
左側メニューの、Webmin → Webmin設定 → SSL暗号化


download and installのリンクからNet::SSLeayをインストール


再びSSL暗号化画面にてSSLを使用可能にする。


SSLが使用可能になるとhttpでのアクセスは拒否されるようだ。

Webブラウザでアクセスすると https://192.168.77.148:10000/ でログイン画面が表示される。




■デフォルトのポート番号を変更
[root@centos64 ~]# cd /etc/webmin/ [root@centos64 webmin]# cp -p miniserv.conf miniserv.conf.org [root@centos64 webmin]# vi miniserv.conf [root@centos64 webmin]# diff miniserv.conf miniserv.conf.org 1c1 < port=4649 --- > port=10000 16c16 < listen=4649 --- > listen=10000 [root@centos64 webmin]#
1行目と16行目を修正。ポート番号を10000から4649に変更。
その後Webminを再起動
[root@centos64 webmin]# /etc/init.d/webmin restart Stopping Webmin server in /usr/libexec/webmin Starting Webmin server in /usr/libexec/webmin Pre-loaded WebminCore [root@centos64 webmin]#

Webブラウザで https://192.168.77.148:4649/ にアクセスするとログイン画面が表示される。


以上です。何かのお役に立てれば幸いです。

2013年3月22日金曜日

CentOS 6.4にWebminインストール


WebminはUnix系OSのシステム管理用のWebベースのインターフェイスです。
Webブラウザを使用して、ユーザアカウント、Apache、DNS、ファイル共有等を
セットアップすることができます。
※ http://www.webmin.com/ の What is Webmin? を直訳しただけです。

OS: CentOS 6.3(64-bit)
Webmin: 1.620


■リポジトリ設定(webminはデフォルトリポジトリに登録されていないので)
[root@centos64 ~]# vi /etc/yum.repos.d/webmin.repo [root@centos64 ~]# cat /etc/yum.repos.d/webmin.repo [webmin] name=Webmin Distribution Neutral mirrorlist=http://download.webmin.com/download/yum/mirrorlist enabled=0 [root@centos64 ~]#

■jcameron-key.ascのインポート
[root@centos64 ~]# wget http://www.webmin.com/jcameron-key.asc [root@centos64 ~]# ll jcameron-key.asc -rw-r--r-- 1 root root 1320 12月 5 09:58 2002 jcameron-key.asc [root@centos64 ~]# rpm --import jcameron-key.asc [root@centos64 ~]#

■yumでインストール
[root@centos64 ~]# yum --enablerepo=webmin -y install webmin ======================================================================== Package Arch Version Repository Size ======================================================================== Installing: webmin noarch 1.620-1 webmin 21 M Transaction Summary ======================================================================== Install 1 Package(s) Total download size: 21 M (以下省略) [root@centos64 ~]#

■※インストール直後は起動している。
[root@centos64 ~]# /etc/init.d/webmin status Webmin (pid 3030) is running [root@centos64 ~]#



■ブラウザでアクセス
※httpdを起動させておく必要がある。
http://192.168.77.148:10000/
Username: root
Password: rootのパスワード

■日本語表示設定
左側メニューの、Webmin → Change Language and Theme
Webmin UI Language を Japanese (JA_JP.UTF-8)に変更してMake Changesボタンをクリック。


以上です。何かのお役に立てれば幸いです。

2013年3月18日月曜日

CentOS 6.4 インストールパッケージ

CentOS6.4のインストール時に選択できるパッケージを調査。
サーバタイプ「Minimal」を選択してどのようにパッケージの選択肢が表示されるかを記載してみる。


【High Availability】
 □ High Availability
 □ High Availability の管理

【Load Balancer】
 □ Load Balancer

【Resilient Storage】
 □ Resilient Storage

【Scalable Filesystem】
 □ Scalable Filesystem

【Webサービス】
 □ PHP サポート
 □ TurboGears アプリケーションフレームワーク
 □ Web サーバー
 □ Web サーブレットエンジン

【アプリケーション】
 □ Emacs
 □ TeX のサポート
 □ インターネットアプリケーション
 □ インターネットブラウザ
 □ オフィススイートと生産性
 □ グラフィックツール
 □ 技術文書

【サーバー】
 □ CIFS ファイルサーバー
 □ FTP サーバー
 □ NFS ファイルサーバ
 □ サーバープラットフォーム
 □ システム管理ツール
 □ ディレクトリサーバー 
 □ ネットワークインフラストラクチャサーバー
 □ ネットワークストレージサーバー
 □ バックアップサーバー
 □ プリントサーバー
 □ 識別管理サーバー
 □ 電子メールサーバー

【システム管理】
 □ SNMP サポート
 □ WBEM サポート
 □ システム管理
 □ メッセージング接続クライアントのサポート

【デスクトップ】
 □ KDEデスクトップ
 □ X Window System
 □ グラフィカル管理ツール
 □ デスクトップ
 □ デスクトップのデバッグとパフォーマンスツール
 □ デスクトッププラットフォーム
 □ フォント
 □ リモートデスクトップ接続クライアント
 □ レガシー X Windows システムの互換性
 □ 入力メソッド
 □ 汎用デスクトップ (GNOMEデスクトップ)

【データベース】
 □ MySQL データベースサーバー
 □ MySQL データベース接続クライアント
 □ PostgreSQL データベースサーバー
 □ PostgreSQL データベース接続クライアント

【ベースシステム】
 □ FCoE ストレージ接続クライアント
 □ Infiniband のサポート
 □ Java プラットフォーム
 □ Perl のサポート
 □ Ruby Support
 □ iSCSI ストレージ接続クライアント
 □ コンソールインターネットツール
 □ ストレージ可用性ツール
 □ スマートカードのサポート
 □ セキュリティツール
 □ ダイヤルアップネットワークサポート
 □ ディレクトリ接続クライアント
 □ デバッグツール
 □ ネットワーキングツール
 □ ネットワークファイルシステムクライアント
 □ ハードウェア監視ユーティリティ
 □ バックアップクライアント
 □ パフォーマンスツール
 □ ベース
 □ メインフレームアクセス
 □ レガシー UNIX の互換性
 □ 互換性ライブラリ
 □ 印刷クライアント
 □ 大規模システムのパフォーマンス
 □ 数学/科学系および並列計算

【仮想化】
 □ 仮想化
 □ 仮想化クライアント
 □ 仮想化ツール
 □ 仮想化プラットフォーム

【言語】
 ■ 日本語のサポート
 ※ 他は省略

【開発】
 □ Eclipse
 □ その他の開発
 □ サーバープラットフォーム開発
 □ デスクトッププラットフォーム開発
 □ 開発ツール

---------------------------------------
 □:インストールしない
 ■:インストールする

サーバタイプ「Minimal」を選択するとインストール対象にチェックが付くのは日本語のサポートのみ。
最小構成となるが、もちろんOSインストール時にネットワークの設定を行えばsshでのアクセス可能。
CentOS6.3のパッケージと比較すると、下記2つが無くなっていた。
【システム管理】
 □ システム管理 Messaging Server のサポート
【ベースシステム】
 □ クライアント管理ツール

■OSバージョン確認
[root@centos64-min ~]# cat /etc/redhat-release CentOS release 6.4 (Final) [root@centos64-min ~]# uname -r 2.6.32-358.el6.x86_64 [root@centos64-min ~]#

■パッケージ数確認
[root@centos64-min ~]# rpm -qa | wc -l 219 [root@centos64-min ~]#
219個と少ないがCentOS6.3の時より2個増えている。

■runlevel別のサービス起動設定
[root@centos64-min ~]# chkconfig --list auditd 0:off 1:off 2:on 3:on 4:on 5:on 6:off blk-availability 0:off 1:on 2:on 3:on 4:on 5:on 6:off crond 0:off 1:off 2:on 3:on 4:on 5:on 6:off ip6tables 0:off 1:off 2:on 3:on 4:on 5:on 6:off iptables 0:off 1:off 2:on 3:on 4:on 5:on 6:off lvm2-monitor 0:off 1:on 2:on 3:on 4:on 5:on 6:off netconsole 0:off 1:off 2:off 3:off 4:off 5:off 6:off netfs 0:off 1:off 2:off 3:on 4:on 5:on 6:off network 0:off 1:off 2:on 3:on 4:on 5:on 6:off postfix 0:off 1:off 2:on 3:on 4:on 5:on 6:off rdisc 0:off 1:off 2:off 3:off 4:off 5:off 6:off restorecond 0:off 1:off 2:off 3:off 4:off 5:off 6:off rsyslog 0:off 1:off 2:on 3:on 4:on 5:on 6:off saslauthd 0:off 1:off 2:off 3:off 4:off 5:off 6:off sshd 0:off 1:off 2:on 3:on 4:on 5:on 6:off udev-post 0:off 1:on 2:on 3:on 4:on 5:on 6:off [root@centos64-min ~]#

■ディスク使用状況(インストール直後)
[root@centos64-min ~]# df -hT Filesystem Type Size Used Avail Use% マウント位置 /dev/mapper/vg_centos64min-lv_root ext4 14G 750M 12G 6% / tmpfs tmpfs 499M 0 499M 0% /dev/shm /dev/sda1 ext4 485M 32M 428M 7% /boot [root@centos64-min ~]#

以上です。何かの参考になれば幸いです。

2013年3月17日日曜日

CentOS 6.4 インストール手順 画面キャプチャ付

2013年3月9日にリリースされたCentOS6.4のISOファイルを取得し、VMware ESXi上に構築した手順を画面キャプチャ入りでまとめます。
Samba4に対応し、マイクロソフトのHyper-V上で動くようになったそうですが、ESXi上に構築します。

・VMware ESXi 5.0
・CentOS 6.4 (64-bit)
・Kernel: 2.6.32-358
・インストールパッケージタイプ: Desktop


■インストーラ起動


■Discチェック
チェック不要…。物理ディスクじゃなくisoファイルだし…。


■インストール開始


■言語選択
英語のままにしようかと迷いましたが、迷わず日本語で。



■ストレージデバイス
SANなんて高価な環境ありません。
どんなデータだって破棄しちゃってください。新規インストールなので何もないですが。



■ホスト名
とりあえず、「centos64」にしました。


■ネットワークの設定
「ネットワークの設定」 → 「編集」


「自動接続する」にチェック
「IPv4のセッティング」タブでアドレスとネットマスクを設定


■タイムゾーン
ここは日本っす。JSTで。なのでUTCのチェックを外す。


■rootパスワード


■インストール領域



■パッケージタイプ
Desktopを選択してみた。実際に使う場合はMinimal+カスタマイズになりそう。


■インストール処理
サーバのスペックによるけど30分くらい?


■インストール完了
この後、再起動が必要です。


■インストール後設定


■ライセンス情報
強制的に同意させられていると感じるのは自分だけ?


■ユーザーの作成


■日付と時刻
UTC時間になっているので必要に応じ修正する。


■Kdump
仮想サーバのメモリの割り当てが少なくて。すみません。
インストール後の設定作業も以上です。その後、ログイン画面が表示されるはず。


■ログイン



■デスクトップいじる
背景とテーマを変えてみた。


■OSの状況確認
[root@centos64 ~]# df -hT Filesystem Type Size Used Avail Use% マウント位置 /dev/mapper/vg_centos64-lv_root ext4 14G 3.3G 9.5G 26% / tmpfs tmpfs 499M 80K 499M 1% /dev/shm /dev/sda1 ext4 485M 33M 427M 8% /boot [root@centos64 ~]# rpm -qa | wc -l 1097 [root@centos64 ~]# uname -r 2.6.32-358.el6.x86_64 [root@centos64 ~]#
Desktopでインストールすると、httpdやSambaも自動でインストールされ、OS領域で3.3GBも消費する。
パッケージの数も1000以上!
カーネルバージョンは、「2.6.32-358」だそうです。

以上で作業終了です。

2013年3月9日土曜日

SubversionのBasic認証にActive Directoryを利用


SubversionのBasic認証にActive Directoryを利用する方法です。
Active Directoryに登録しているユーザの詳細は前回記事を参照ください。

【ADサーバ】
OS: Windows Server 2008 R2(64-bit)
Domain Name: kuitan.net
IP: 192.168.77.125
⇒AD登録ユーザ:
 dn: CN=aduser01,CN=Users,DC=kuitan,DC=net
 dn: CN=puser01,OU=person,DC=kuitan,DC=net

【Webサーバ】
OS: CentOS 6.3(64-bit)
Apache: 2.2.15
Subversion: 1.6.11
IP: 192.168.77.147


■SVNリポジトリ作成
[root@web03 ~]# mkdir /opt/svn [root@web03 ~]# mkdir /opt/svn/users [root@web03 ~]# mkdir /opt/svn/person [root@web03 ~]# svnadmin create /opt/svn/users/project01 [root@web03 ~]# svnadmin create /opt/svn/users/project02 [root@web03 ~]# svnadmin create /opt/svn/person/project03 [root@web03 ~]# svnadmin create /opt/svn/person/project04 [root@web03 ~]# chown -R apache: /opt/svn

■subversion.conf追加設定
[root@web03 ~]# vi /etc/httpd/conf.d/subversion.conf [root@web03 ~]# tail -27 /etc/httpd/conf.d/subversion.conf <Location /users> DAV svn SVNListParentPath on SVNParentPath /opt/svn/users AuthType Basic AuthName "Subversion Authentication Users" AuthBasicProvider ldap AuthzLDAPAuthoritative off AuthLDAPURL ldap://192.168.77.125:389/cn=users,dc=kuitan,dc=net?sAMAccountName?sub?(objectClass=*) AuthLDAPBindDN Administrator@kuitan.net AuthLDAPBindPassword xxxxxxxx Require valid-user </Location> <Location /person> DAV svn SVNListParentPath on SVNParentPath /opt/svn/person AuthType Basic AuthName "Subversion Authentication Person" AuthBasicProvider ldap AuthzLDAPAuthoritative off AuthLDAPURL ldap://192.168.77.125:389/ou=person,dc=kuitan,dc=net?sAMAccountName?sub?(objectClass=*) AuthLDAPBindDN Administrator@kuitan.net AuthLDAPBindPassword xxxxxxxx Require valid-user </Location> [root@web03 ~]# /etc/init.d/httpd restart
※表示の都合上タグを"<"と">"で記載。
※<Location /users>の設定ではcn=usersに属するユーザがアクセスできるリポジトリを定義している。
※<Location /person>の設定ではou=personに属するユーザがアクセスできるリポジトリを定義している。

■ブラウザからアクセス
https://192.168.77.147/users/
Basic認証の画面が表示され、ADに登録したユーザ(cn=usersに属するユーザ)でアクセスする。



その後、https://192.168.77.147/person/にアクセスすると再びBasic認証を要求される。
ou=personに属するユーザでアクセスする。


※ちなみに、上記を行うだけならWebサーバ側にopenldap-clientsパッケージは不要。