雑記帳
2014-09-08 (Mon) [長年日記]
■ [Linux] RHEL7でタイムゾーンを変更する
訳あって、ついにRHEL7を触り始めた。さっそくタイムゾーンの変更から、と思って調べてみると、timedatectlというコマンドが用意されているようだ。
現状の確認
# timedatectl status Local time: Mon 2014-09-08 03:32:45 EDT Universal time: Mon 2014-09-08 07:32:45 UTC RTC time: Mon 2014-09-08 07:32:44 Timezone: America/New_York (EDT, -0400) NTP enabled: yes NTP synchronized: yes RTC in local TZ: no DST active: yes Last DST change: DST began at Sun 2014-03-09 01:59:59 EST Sun 2014-03-09 03:00:00 EDT Next DST change: DST ends (the clock jumps one hour backwards) at Sun 2014-11-02 01:59:59 EDT Sun 2014-11-02 01:00:00 EST
Asia/Tokyoに変更する
# timedatectl set-timezone Asia/Tokyo
変更した結果
# timedatectl status Local time: Mon 2014-09-08 16:33:27 JST Universal time: Mon 2014-09-08 07:33:27 UTC RTC time: Mon 2014-09-08 07:33:27 Timezone: Asia/Tokyo (JST, +0900) NTP enabled: yes NTP synchronized: yes RTC in local TZ: no DST active: n/a
これにより /etc/localtime のシンボリックリンクが適切なものに変更されている。
# ls -la /etc/localtime lrwxrwxrwx. 1 root root 32 Sep 8 16:33 /etc/localtime -> ../usr/share/zoneinfo/Asia/Tokyo
以前と同じ方法でも変更はできるが、timedatectlによってより簡単に変更することができるようになったようだ。
■ [Linux][EC2] RHEL7でホスト名を変更する
ホスト名を変更するにも、コマンドが用意されている。
変更前
[root@ip-10-0-0-5 ~]# hostnamectl status Static hostname: ip-10-0-0-5.iret.local Icon name: computer Chassis: n/a Machine ID: 58ab7d423b974a7789b5d487a94d6f94 Boot ID: 6d54614a40b643d3ac0274938d123edd Virtualization: xen Operating System: Red Hat Enterprise Linux Server 7.0 (Maipo) CPE OS Name: cpe:/o:redhat:enterprise_linux:7.0:GA:server Kernel: Linux 3.10.0-123.el7.x86_64 Architecture: x86_64
変更
[root@ip-10-0-0-5 ~]# hostnamectl set-hostname jump --static
変更後
[root@ip-10-0-0-5 ~]# hostnamectl status Static hostname: jump Icon name: computer Chassis: n/a Machine ID: 58ab7d423b974a7789b5d487a94d6f94 Boot ID: 6d54614a40b643d3ac0274938d123edd Virtualization: xen Operating System: Red Hat Enterprise Linux Server 7.0 (Maipo) CPE OS Name: cpe:/o:redhat:enterprise_linux:7.0:GA:server Kernel: Linux 3.10.0-123.el7.x86_64 Architecture: x86_64
ちなみに、EC2の場合は、cloud-initの設定を変更しないと、再起動したときに変更されてしまう。
/etc/cloud/cloud.cfgに、下記の行を追加する。
preserve_hostname: true
■ [Linux][Windows] RHEL7をActive Directory on Windows Server 2012 R2でユーザ認証させる (1)
Active Directory on Windows Server 2012 R2の環境で、Red Hat Enterprise Linx 7をクライアントとして、ユーザ認証を統合してみる。
この手のシステムは実現方法がいくつかあって、自分も過去に複数の方法で構築してきた。
- winbindで認証を行う
- KerberosとLDAPを使って認証を行う
winbindで認証を行う
Sambaを使うときにはwinbindの他に選択肢は無いので使わざるを得ないのだが、過去の自分の経験では、winbindはなぜか唐突にプロセスが死んだり、プロセスが死なないにしても認証が失敗するようになったりして、大変つらいものであった。今回はSambaは使わないので、winbindも使いたくない。
KerberosとLDAPを使って認証を行う
winbindを使わない場合は、KerberosとLDAPを組み合わせて認証を行う設定とする。これはきちんと設定できれば、winbindにくらべて安定して使うことができるのだが、いかんせん、設定が非常に面倒である。特に面倒なのが、Windows Server側にUNIX ID管理ツールを導入して、Active Directory側のスキーマを拡張しなければならない点。そして、Windows Server 2012 R2では、この機能は非推奨になってしまい、GUIでは導入できなくなってしまった(コマンドラインツールを使って入れることは可能)。
今回の目標
以上を踏まえて、今回は下記を目標に構築してみようと思う。
- winbindは使わない
- UNIX ID管理ツールを使ったスキーマ拡張は行わない
これを実現する方法はちゃんと用意されている。最近は、System Security Services Daemon (SSSD)という、クライアントと多岐にわたるIdentity Provider(IdP)の橋渡しをしてくれるツールがあるので、これを使うことにする。
Active Directoryは、最もメジャーなIdPであるため、SSSDはADを単なるKerberos KDCやLDAPサーバではなく、ADとして扱ってくれるようで、設定も比較的容易らしい。
ということで、今回は決意表明だけをして、次回に続く。待て次号! (続きを書きました)