Linux OSインストール後に行なうべき設定項目
■システム管理ユーザを作る
rootはあらゆるファイルにディレクトリにアクセスでき、安全でないコマンドを使う事もできる。誤操作でシステムを壊してしまう事になりかねない。そのため、システム管理用のユーザを作り、普段はそれでログインし、スーパーユーザになる必要のある場合だけsuコマンドでrootになる方法を取るべきである。ここでは管理用として「user」という名前のアカウントを作成する事にする。
まずuserのホームディレクトリを作成する。ここでは/home以下に作成。
# cd /home # mkdir user |
必要に応じて、userディレクトリのパーミッションも変更するようにする。
次にuserが所属するグループ「user」を作成する。ユーザとグループにはそれぞれIDが振られるが、その数値を決めておく。500以上にする。ここではuserID・groupIDともに500とする(同じ値にするのが慣習)。また、userが使うシェルはbashとする。
/etc/groupを編集し、
user:x:500: |
の1行を追加。その後、次のコマンドで「user」ユーザを追加。
# adduser -g user -u 500 -s /bin/bash -d /home/user user |
・ -gは使用するグループを指定
・ -uは使用するUIDの数値を指定
・ -sは使用するシェルを指定
・ -dは使用するホームディレクトリの場所を指定
作ったuserにパスワードを設定する
# passwd user |
■シェルを起動させないユーザ
デーモンなどを起動させたりFTPログインするだけのユーザは、/etc/passwdを編集し、
user:x:500:500::/home/user:/sbin/nologin |
などとし、userアカウントで使用するシェルを/bin/nologinというシェルにする。そうすればシェルが起動できないため、コマンドが実行される恐れはない。
■rootになれるユーザの制限
初期設定では誰でもsuコマンドとパスワードでrootになる事ができるが、それを制限する事ができる。rootになれないユーザを作り、そういったユーザでログインさせる事で、rootになる事を試す事もできなくする。root権限はシステムを破壊する事ができるため、管理者が使用するユーザ以外はsuでrootになれる権限を剥奪して置いた方がよい。
/etc/login.defsファイルに以下の一行を追加
SU_WHEEL_ONLY yes |
次に/etc/groupファイルのwheelの行にuserを付け加える。
wheel:x:10:root,user |
これで、suでrootになれるのはuserからだけという設定となった。
さらに上記の設定を有効にするために/etc/pam.d/suファイルに以下の行を追加。
auth required /lib/security/pam_wheel.so use_uid group=wheel |
■セキュリティレベル
lokkitコマンドで、どのパケットを通過させるかというセキュリティレベルを(基本的な内容しか設定できないが)簡単に変更する事ができる。(lokkitコマンドはiptables/ipchainsを使用しているので、詳細な設定はiptables/ipchainsで行なう)
CustomizeのAllow incoming ? Other portsに
‘サービス名:プロトコル’
という具合に表記すればそのサービスを使用するプロトコルのみ許可を与える事ができる。例えば
‘http:tcp,http:udp’
とすれば、httpに対するtcpとudpのアクセスに応答する設定となる。
インストールした直後では、セキュリティレベルがHighになっていて、全ての外部からの通信を遮断する設定になっている場合がある。その場合はこのlokkitコマンドでNICに来る通信を許可してやればいい。
■いらないサービスを止める
# setup |
でセットアップ画面を立ち上げSystem servicesを選び、OS起動時に立ち上がるようになっているサービス一覧を出す。中にはセキュリティ的に落としておいた方がよいものもあるので、そのようなものはチェックを外す。以下の表と照らし合わせ、できるだけ必要最低限に留める。起動推奨か書かれていないものもあるが、基本的に必要がなければ立ち上げない。
System servicesを変更した後は、有効にさせるために
# reboot |
でシステムを再起動する。
サービス名 |
起動 推奨 |
説明 |
FreeWnn |
△ |
かな漢字変換システム。FreeWnnの変換サーバープログラムjserverを起動。漢字変換を使用しないのであれば停止しましょう。デフォルト起動(停止推奨) |
amanda |
― |
AMANDA(Advanced
Maryland Automatic Network Disk Archiver)用デーモン。LAN全体を対象としたバックアップシステム。バックアップされる側に必要なサービス |
amandaidx |
|
AMANDAで利用するバックアップデバイスを接続しているマシンに必要なサービス |
amd |
|
ファイルシステムの自動マウントを処理するサービス |
amidxtape |
|
AMANDAでテープデバイスを利用するのに必要なサービス |
anacron |
○ |
指定されたスケジュールに従ってコマンドを自動実行するデーモン。ログの切り替え、監視などでシステムが利用している。またサイトで一定時間ごとに起動するMRTGやTripwireなどの監視系コマンドを動かすのに必要。デフォルト起動(起動推奨) |
apmd |
× |
APM(Advanced
Power Management)の制御デーモン。省電力設定等を行う。サーバーとして使用するなら停止しておくのが無難。デフォルト起動(停止推奨) |
arpwatch |
|
イーサネットアドレスとIPアドレスの対応を記憶するデーモン(起動推奨) |
atalk |
|
AppleTalkプロトコルでMacintoshとファイル/プリンターの共有を行うデーモン |
atd |
× |
指定された時刻に指定されたコマンドを実行するデーモン。起動させておいても問題ないでしょう。デフォルト起動 |
autofs |
× |
ファイルシステムの自動マウントを初期設定。実際に動作するデーモンはautomount。ファイルサービス系は使用しないなら停止しましょう。デフォルト起動(停止推奨) |
bcm5820 |
|
broadcom社の「eコマースプロセッサ」BCM5820というSSLアクセラレータ用のドライバー |
bgpd |
|
ルーティングマネージャーZebraの一部で、BGPv4/+/-プロトコル用ルーティングエンジン |
bootparamd |
|
古いSunワークステーションで利用されていたネットワークブート機能を提供するサービス |
canna |
△ |
かな漢字変換サーバーcannaserverの起動スクリプトサービス。漢字変換を使用しないのであれば停止しましょう。デフォルト起動(停止推奨) |
chargen |
|
デバックなどで利用するCharacter
Generatorプロトコル(TCP) |
chargen-udp |
|
デバックなどで利用するCharacter
Generatorプロトコル(UDP) |
comsat |
|
biff形式のメール受信通知サービスを行うサービス |
crond |
○ |
一定のスケジュールに従ってコマンドを自動実行するデーモン。ログの切り替え、監視などでシステムが利用している。起動しておきましょう。デフォルト起動(起動推奨) |
daytime |
|
日時を通知するDaytimeプロトコル(TCP) |
daytime-udp |
|
日時を通知するDaytimeプロトコル(UDP) |
dbskkd-cdb |
|
高速データベースを用いたSKKサーバーサービス |
dhcpd |
|
DHCP(Dynamic
Host Configuration Protocol)サーバー。動的IP割り当てデーモン |
echo |
|
デバックなどで利用するDiscardプロトコル(TCP) |
echo-udp |
|
デバックなどで利用するDiscardプロトコル(UDP) |
eklogin |
|
Kerberos認証を用いたリモートログインを受け付けるサーバーサービス(セッション自体も暗号化する) |
finger |
× |
ユーザー名、ログインしてからの時間などユーザーの情報を提供するサービス |
gated |
|
RIP,BGP,EGP,HELLO,OSPFなどのルーティングプロトコルを扱える動的経路制御サービス |
gpm |
○ |
Linuxコンソール用マウスドライバー。デフォルト起動(起動推奨) |
gssftp |
|
Kerberos認証を用いたFTPサーバーサービス |
httpd |
|
Webサーバー(Apache)デーモン |
identd |
|
IDENTプロトコルによってユーザーの情報を答えるサービス |
imap |
|
IMAP(Internet
Message Access Protocol)サーバーサービス |
imaps |
|
IMAP(Internet
Message Access Protocol)サーバーサービス(SSL) |
innd |
|
インターネットニュースサーバーサービス |
ip6tables |
|
パケットフィルタプログラムiptablesサービス(IPV6)。ipv6を使用しないなら停止しましょう。デフォルト起動(停止推奨) |
ipchains |
○ |
パケットフィルタプログラムipchains。iptablesかipchainsはどちらか必ず起動しましょう。ポリシーの設定も忘れずに。デフォルト起動(起動推奨) |
ipop2 |
|
POP2(Post
Office Protocol 2)デーモン |
ipop3 |
|
POP2(Post
Office Protocol 3)デーモン |
iptables |
○ |
パケットフィルタプログラムiptables。ipchainsを設定すれば不要です。ipchainsのnewバージョンです。 デフォルト起動(起動推奨) |
irda |
|
IrDA赤外線通信デバイスの制御サービス |
iscsi |
|
TCP/IP
over SCSIによってinternetSCSIに対応するストレージデバイスに接続するサービス |
isdn |
× |
ISDNカード用接続スクリプトサービス。ISDNを使用していなければ停止しましょう。デフォルト起動(停止推奨) |
isicom |
|
Multitech
Intelligent Serial Internal (ISI) サポートツール |
junkbuster |
|
フィルタリング機能を持ったプロキシサーバーデーモン |
kadmin |
|
Kerberos5の管理インターフェースを提供するサービス |
keytable |
○ |
キーボードマップとコンソールフォントをロードするスクリプト。デフォルト起動(起動推奨) |
klogin |
|
Kerberos認証を用いたリモートログインを受け付けるデーモン |
kprop |
|
KerberosデータベースをマスタKDCからスレーブKDCに複製する際に利用されるサービス |
krb5-telnet |
|
Kerberos認証を用いたTELNETサーバーデーモン |
krb524 |
|
Kerberosバージョン4とバージョン5の差異を吸収し、互換性を保つためのサーバーサービス |
krb5kdc |
|
Kerberos5のKDC(Key Distribution Center)として機能するサーバーサービス |
kshell |
|
Kerberos認証を用いたリモートシェルが接続するサーバーサービス |
ktalk |
|
トーク要求を処理して通知し、ユーザーがトーククライアントを使ってそれに答えられるようにするサービス |
kudzu |
|
ハードウェア構成の変更を自動的に検出するサービス。デフォルト起動(起動推奨) |
ldap |
|
ディレクトリーサービスLDAP(Lightweight Drectory Access Protocol)を実現するサービス |
lpd |
× |
プリンタージョブ制御サービス。プリンターを使用しなければ止めておきましょう。サーバーには不要。デフォルト起動(停止推奨) |
mars-nwe |
|
NetWare互換のファイル/プリンターサーバーサービス |
microcode_ctl |
|
インテルIA32マイクロコードの更新をできるようにするためのドライバ |
mysqld |
|
SQLデータベースサーバーサービス |
named |
|
DNS(Domain
Name System)名前解決デーモン(BIND) |
netdump |
|
ネットワーク越しに、データとメモリダンプを送るサービス |
netdump-server |
|
ネットワーク越しに、データとメモリダンプを送るサービス(Server) |
netfs |
× |
/etc/fstabを参照しNFS,SMB,NCPのネットワークファイルシステムをマウントするサービス。使用しないのに起動しておくのは危険です。デフォルト起動(推奨停止) |
network |
○ |
システムのネットワーク環境を初期設定するスクリプトサービス。スタンドアロンでなければ絶対必要。デフォルト起動(推奨起動) |
nfs |
|
UNIXマシン同士でファイル共有を行うNFS(Network File System)サーバーサービス |
nfslock |
× |
NFSでファイルロックを行うためのサービス。使用しないのに起動しておくのは危険です。デフォルト起動(推奨停止) |
ntalk |
|
talkプロトコルを用いたユーザー間の通信(チャット)を実現するサーバーサービス |
ntpd |
|
ネットワークを介して時計を合わせるNTP(Network
Time Protocol)サーバー4サービス |
ospf6d |
|
Zebraで使うIPV6用OSPF(Open Shorttest Path First
Protocol)エンジンサービス |
ospfd |
|
Zebraで使うOSPF(Open Shorttest Path First Protocol)V2ルーティングエンジンサービス |
pcmcia |
|
PCカードのデバイスドライバーをロードするスクリプトサービス。使用しないなら停止しましょう。デフォルト起動(停止推奨) |
pop3s |
|
POP3(Post
Ofiice Protocol 3)サーバーデーモン(SSL)サービス |
portmap |
× |
RPC接続をTCPのポートにマッピングするサービス。RPCを攻撃されないように停止しましょう。デフォルト起動(推奨停止) |
postgresql |
|
postgreSQLサーバー |
pxe |
|
PXE(Preboot
Execution Environment)に準拠したネットワークブート機能を提供するサーバーサービス |
radvd |
|
IPV6環境で使うルーター通知サービス |
random |
○ |
カーネルの乱数生成機能に関連するデバイスファイルとエントロピープールを初期化するサービス。SSLをサポートする場合は起動しておく。デフォルト起動(推奨起動) |
rarpd |
|
イーサネットアドレスからIPアドレスに変換するサーバーサービス |
rawdevices |
○ |
RAWデバイスをブロックデバイスに割り当てるスクリプトサービス。OSのバッファリング機構を介さずにアプリケーションが直接ハードディスクとデータ-を読み書きする事を可能にする。デフォルト起動(推奨起動) |
reconfig |
|
anacondaを使ってインストール時のシステム設定を再度実行するスクリプトサービス。デフォルト起動(推奨停止) |
rexec |
|
リモートマシン上でコマンドを実行するrexecコマンドの機能を提供するサービス |
rhnsd |
○ |
Redhat
Networkに接続し定期的にアップデートをチェックするサービス。デフォルト起動(推奨起動) |
ripd |
|
Zebraで使うRIP(Routing Information Protocol)サービス |
ripngd |
|
Zebraで使うIPV6用RIPデーモン(Routing
Information Protocol Next Generation)サービス |
rlogin |
|
リモートマシンへのログインを行うrloginコマンドの機能を提供するサービス |
routed |
|
RIP(Routing
Information Protocol)によって動的経路制御を行うサービス |
rsh |
|
リモートマシン上でコマンドを実行するrshコマンドの機能を提供するサービス |
rstatd |
|
ネットワーク上のマシンの統計値を提供するサービス |
rsync |
|
rsyncコマンドによるファイル同期を行うサービス |
rusersd |
|
ネットワーク上のマシンに誰がログインしているかを調べるサービス |
rwalld |
|
ログイン中の全員のターミナルにメッセージを送るwallコマンドを使用するためのサービス |
rwhod |
|
ネットワーク上のマシンに誰がログインしているかを調べるサービス |
sendmail |
× |
世界中で最も使用されているメールサーバーデーモン。高機能だが設定が難しい。使用していなければ停止させておこう。わからずに起動させておくと危険。デフォルト起動(使用しないなら停止) |
sgi_fam |
× |
ファイル/ディレクトリーの変更を知らせるサービス。使用していないなら停止させておこう。デフォルト起動(推奨停止) |
smb |
|
Windowsとファイル、プリンターを共有するサービス(Samba) |
snmpd |
|
SNMP(Simple
Network Management Protocol)エージェントサービス |
snmptrapd |
|
SNMP(Simple
Network Management Protocol)トラップデーモン |
squid |
|
キャッシングを主とするwebプロキシサーバーデーモン |
sshd |
× |
通信経路を暗号化して安全なリモートログインを可能とするSSH(Secure
Shell)サーバーサービス。デフォルト起動(推奨停止) |
swat |
|
webベースのSamba設定ツールSWAT(Samba Wab Admin Tool)サービス |
syslog |
○ |
システムメッセージロガ−デーモンklogdとsyslogdを起動する。絶対止めてはならないサービス。デフォルト起動(絶対起動) |
talk |
|
talkプロトコルを用いたユーザー間の通信(チャット)を実現するサーバーサービス |
telnet |
× |
telnetサーバー。ネットワークを介してリモート接続が可能(可能ならSSHを) |
tftp |
|
TFTPプロトコルによるファイル転送を行うデーモン。 |
time |
|
timeプロトコル(TCP) |
time-udp |
|
timeプロトコル(UDP) |
tux |
|
カーネルモードで動作するハイパフォーマンスなWebサーバーデーモン |
ups |
|
UPS(無停電電源装置)をモニタリングする機能を提供するデーモン |
vncserver |
|
リモートコントロールシステムVNC(Virual Network Computing)サーバーサービス |
wine |
|
Windowsエミュレータ−Wineのエミュレーションライブラリーとプログラムローダー機能を提供。デフォルト起動(推奨停止) |
wu-ftpd |
× |
標準のFTPサーバーデーモン |
xinetd |
○ |
接続要求に応じてサーバーデーモンを起動するスーパーサーバー。新inetd。デフォルト起動(推奨起動) |
xfs |
○ |
ファイルが破損したかどうかをチェックするジャーナリング・ファイルシステムの1つ。 |
yppasswdd |
|
NISドメインサーバーで動かすと、NIS環境下でユーザーによるパスワード変更等が可能になる。 |
ypserv |
|
NIS(Network
Information Service)サーバー。ユーザー名やホスト名などの情報を管理する。 |
ypxfrd |
|
NISマップ情報をNISマスターサーバーからスレーブサーバーに転送する際に使われる |
zebra |
|
ルーティングマネージャー。対応するプロトコルごとのモジュールと組み合わせて使用する |