WEBサービス創造記

WEBサービスを作ったり保守したりしてる人のメモブログです。

CentOS5の初期設定

      2015/07/23

一般ユーザーの作成

rootはすべてのコマンドを実行することが可能であり、すべてのファイルやディレクトリにアクセスする権限を有する。万が一、誤操作などで重要なファイルやプログラムを削除してしまったりするといけないので、root権限が必要な操作を行なうときだけ適宜suコマンドでroot権限を得て操作するようにする。

デフォルトでは一般ユーザーのアカウントが存在しないため、最初に作成する。

1. root権限でのログイン
centos login: root    ※rootと入力
Password:   ※パスワードの入力(タイピングしても実際は表示されません)
[root@centos ~]#  ※rootでログインが完了

2. 一般ユーザーの追加(ここでは例としてユーザー名を「user1」とする)
[root@centos ~]# useradd user1
[root@centos ~]# passwd user1   ※user1にパスワードを付与
Changing password for user user1.
New UNIX password:  ※パスワードの入力
Retype new UNIX password:   ※パスワードの再入力
passwd: all authentication tokens updated successfully. 

rootになれるユーザーを限定する

rootになれるユーザーを限定することでセキュリティを高める。

[root@centos ~]# usermod -G wheel user1 ※user1をwheelグループに追加
[root@centos ~]# vi /etc/pam.d/su ※テキストエディタで/etc/pam.d/suを開きます。
※/etc/pam.d/su内の下記の行の先頭にある#を削除し、wheelグループのみsuコマンドでrootになれるように設定する。
#auth            required        pam_wheel.so use_uid
 ↓
auth            required        pam_wheel.so use_uid

※編集が完了したら適当なユーザーを作成し、suコマンドでrootになれないことを確認する。

パッケージ管理ツール「yum」の設定

パッケージの競合や依存関係を解消し効率的にパッケージの管理を行なってくれる「yum」を快適に動作させる設定を行なう。
パッケージの自動更新プラグインはデフォルトでインストールされている常駐型の「yum-updatesd」ではなくcron型の「yum-cron」を採用する。理由は後者の方がメモリの消費量が少ないためである。

1. プラグイン「fastestmirror」のインストール
[root@centos ~]# yum -y install yum-fastestmirror ※インストールするパッケージをダウンロードする際、最も高速なミラーサーバーを自動で選択してくれるプラグイン「fastestmirror」をインストール

2. パッケージの自動更新に関する設定
[root@centos ~]# /etc/rc.d/init.d/yum-updatesd stop   ※デフォルトで動作しているyum-updatesdを停止
[root@centos ~]# yum -y remove yum-updatesd   ※yum-updatesdを削除する
[root@centos ~]# yum -y install yum-cron  ※yum-cronをインストールする
[root@centos ~]# /etc/rc.d/init.d/yum-cron start  ※yum-cronを起動
Enabling nightly yum update:                  [ OK ]
[root@centos ~]# chkconfig yum-cron on    ※OS起動時に「yum-cron」を起動するように設定

ファイアウォールの無効化

デフォルトで有効になっているファイアウォールを無効化する。

[root@centos ~]# /etc/rc.d/init.d/iptables stop ※ファイアウォールの停止
[root@centos ~]# chkconfig iptables off   ※OS起動時にファイアウォールが起動しないように設定

SELinuxの無効化

デフォルトで有効になっているSELinuxを無効化する。

[root@centos ~]# setenforce 0 ※SELinux無効化
[root@centos ~]# getenforce   ※SELinuxの状態を確認
Permissive  ※Permissiveであることを確認
[root@centos ~]# vi /etc/sysconfig/selinux
※OS起動時にSELinuxを無効化する
SELINUX=enforcing
 ↓
SELINUX=disabled

サーバーの時刻を設定する

NTPサーバーを利用し、サーバーに正しい時刻を同期する。

NTPサーバーのインストール

[root@centos ~]# yum -y install ntp

NTPサーバーの設定

時刻同期先NPTサーバーを設定ファイルで指定する。

※NTPサーバー検索の参考
http://www.venus.dti.ne.jp/~yoshi-o/NTP/NTP-Table.html

[root@centos ~]# vi /etc/ntp.conf
# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
※"server 時刻同期先NTPサーバーのIP" という形式で記述
server 130.69.251.23    # ntp.nc.u-tokyo.ac.jp
server 133.31.180.6     # sutntp.sut.ac.jp

NTPサーバーの起動

dateコマンドで現在のサーバーの時刻を確認する。

[root@centos ~]# date

正確な時刻と大幅なずれがある場合、NTPサーバーが起動できないので一旦手動で時刻を合わせる

[root@centos ~]# date -s "2008/10/08 22:26:20"

NTPサーバーを起動する。

[root@centos ~]# /etc/rc.d/init.d/ntpd start  ※NTPサーバー起動
[root@centos ~]# chkconfig ntpd on    ※OS起動時にNTPサーバーを起動するように設定する

NTPサーバーの動作確認

[root@centos ~]# ntpq -p  NTPサーバーへの時刻同期状態確認
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
ntp.nc.u-tokyo. .GPS.            1 u   34   64  377    8.670    3.073   0.184
tusntp.tus.ac.j .GPS.            1 u   47   64  377   15.251    2.855   0.470

設定ファイルで指定した時刻同期先のNTPサーバーが表示される。
NTPサーバー名の先頭に何も記号がない場合は時刻の同期中であることを意味する。

しばらく待ってから再度コマンドを実行する。

[root@centos ~]# ntpq -p  NTPサーバーへの時刻同期状態確認
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
+ntp.nc.u-tokyo. .GPS.            1 u   34   64  377    8.670    3.073   0.184
*tusntp.tus.ac.j .GPS.            1 u   47   64  377   15.251    2.855   0.470

NTPサーバー名の先頭に上記のような記号が付加されていれば同期完了。
“*”は同期中のNTPサーバーを意味する。
“+”は接続テストに合格し、いつでも参照可能なサーバー
を意味する。

 - CentOS