【Linux試験対策】LPIC-2 202見直しポイント

本稿ではLinux認定試験のLPICで必要とされる知識のうち見直すべきポイントをまとめます。

目次

DNS

BINDのサーバデーモン

named

DNSサーバ機能とDHCPサーバ機能を提供するソフトウェア

dnsmasq

masqはmasquerade(仮装)の略称だと覚えましょう。

コンテンツ・キャッシュサーバ機能を提供して複数のバックエンドをサポートするソフトウェア

PowerDNS

コンテンツ・キャッシュサーバ機能を分離してセキュリティを強化したソフトウェア

djbdns

djbは人名の頭文字らしいので覚えるしかありません。

Non-authoritative answerが返ってくるコマンドとその意味

nslookupで,キャッシュサーバが応答していることを示している

/etc/name.confでnamedを操作できるホストの指定を行うステートメント

controls

named自体の設定を行うoptionsと混同しやすいので注意です。

/etc/name.confでzoneステートメントでルートサーバを表すタイプ

hint

逆引きで利用される特別なドメイン

in-addr.arpa

/etc/name.confで構文チェックを行う

named-checkconf

named.confで指定されたゾーンファイルのチェックはnamed-checkzoneとなります。

ルートDNSサーバの情報を更新する方法

dig @m.root-servers.net. ns > /var/named/named.root

namedを操作するコマンド

rndc

Remote Name Daemon Controlの略称と覚えましょう。

ゾーンを配置するディレクトリはどこで指定するか

/etc/named.confのoptionsステートメント

ゾーンを配置するファイル名はどこで指定するか

/etc/named.confのzoneステートメント

MXレコードのプリファレンス値と優先度

値が小さいものほど高い優先度となる

DNSのクラスでINではないものを挙げよ

現在ではCH(Chaosnet)がBINDサーバのメタデータを提供するクラスとして利用されている

ZSK・KSKを作成するコマンド

dnssec-keygen

ゾーンファイルに署名するコマンド

dnssec-signzone

namedが指定したバージョンを答えるための設定
options {
  version "9.8";
}
キャッシュオリジンサーバの設定方法を二つ挙げよ
  • type hint;
  • options { forward only; };
$ORGINはどこに書いてもよいか

どこに書いてもよいが,ドット(.)で終わらない名前の最後に付加するのはその行以降になる

namedのログはどこに出力されるか

syslogを使っているためデフォルトだと/var/log/messages

TSIGの公開鍵はサーバに保存するか

保存しない。公開鍵暗号というより共通鍵暗号の方が理解としては近い。

TSIGはTransaction Signatureですので時刻の同期も必要です。

DANEとは

DNSのリソースレコードにX.509v3認証情報を格納する方式

webサーバ

httpd.confの外部設定ファイルの明示
# 外部設定ファイルの置き場所
AccessFileName .htaccess
# 外部設定ファイルで上書き可能な設定
AllowOverride AuthConfig Limit
Apacheのインストール後にモジュールを組み込むためのコマンド

apxs

Apache eXtenSion toolの略称と捉えましょう。

DSOとは

Dynamic Shared Objectの略称で,Apache HTTP Serverなどで使われる動的共有モジュールの形式

基本認証のパスワードを設定するコマンド

htpasswd

ダイジェスト認証のパスワードを設定するコマンド

htdigest

基本認証のユーザlpicを作成し,パスワードをファイルに出力するコマンド

htpasswd -c /etc/httpd/conf/htpasswd lpic

cはcreateです。

apacheに接続して表示される情報を制御するディレクティブとその設定値

ServerTokens Prod

Squidで特定の文字列が含まれるURLをキャッシュしない設定

hierarchy_stoplist

ApacheとNginxのディレクティブの違い
  • Apache:キャメルケース
  • Nginx:スネークケース
httpd.confの構文チェック

apachectl configtest

Apache2.0以降でポート番号を変更するためのディレクティブ

Listen

SSHで1024番ポート以上を利用する場合はsshd_configのPortディレクティブで設定するため注意です。

DocumentRoot外のファイルへのアクセス方法
  • Alias
  • ScriptAlias
  • Option FollowSymLinks
Apacheのモジュールと使用可能な引数を列挙せよ
  • mod_authz_core:env/all/method/expr
  • mod_authz_user:user/valid-user
  • mod_authz_host:ip/host/forward-dns/local
Apacheでクライアントのアクセス制御の新旧を説明せよ
  • 新:mod_authz_coreとmod_authz_hostを利用し,Require all deniedやRequire ipを利用
  • 旧:mod_authz_compatを利用し,Orderで条件の順番を指定してAllowやDenyを書く
NameVirtualHostには何を指定するか

名前ベースのバーチャルホストで利用する一つのIPアドレス

バーチャルホストのデーモンはどのような単位で起動するか

クライアントのリクエスト単位

squid.confでhttp_accessの指定がない場合の挙動

リクエストは拒否される

squid.confで全てのhttp_accessに一致しない場合の挙動

最後のhttp_accessのallow/denyを反対にした挙動となる

最後がallow allやdeny allで終わっている場合は必ず一致するため分かりやすいです。

auth_paramとproxy_authの違い
  • auth_param:認証方式の設定
  • proxy_auth:認証を指定するaclのタイプ

ファイル共有

SMBとCIFSの違い

いずれもネットワークサービスの名称だが,CIFSではNetBIOSは利用せずにTCP/IPで直接通信する

NetBIOS名とIPアドレスの名前解決を行うサーバ

WINS

Sambaとは

Microsoftネットワークで使用されているSMB/CIFSというプロトコルを扱うことでLinuxホスト上でWindowsでのファイル共有の仕組みを実現するOSS

Sambaのデーモン
  • smbd:samba block daemon
  • nmbd:netbios message block daemon
/etc/samba/smb.confを変更したら再起動は必要か
  • global:必要
  • それ以外:不要
Sambaユーザとして認証できなかった場合の設定

map to guest Never|Bad User|Bad Password

Bad Userは存在しないユーザが指定された場合はゲストユーザ,Bad PasswordはBad Userに加えてパスワード入力ミスの場合もゲストユーザとする。

SambaのパスワードとLinuxのパスワードを同期させる設定

unix password sync

smb.confで表示もアクセスもさせたくないファイルやディレクトリの設定

veto files = /{ファイル名}/

smb.confの構文チェック

testparam

Sambaはsysログを介するか

介さない

smbdのログファイル名

/var/log/samba/log.smbd

smbd.logではない点に注意。

Sambaでマスターブラウザに選ばれやすくなるための設定

os level = {数値}

Active DirectoryドメインにKerberos認証を使ってログオンする

security = ADS

Sambaユーザを作成するコマンドで認証情報の格納方法としてどのbackendにも対応しているもの

pdbedit

Password Database Editの略称だと理解しましょう。

ネットワーク上にあるリモートホストの機能を別のホストから使えるようにする仕組み

RPC

RPCプログラム番号をTCP/IPのポート番号に変換するサービス

portmap

NFSの/etc/exportsでrootでのアクセス時にroot権限で実行するオプション

no_root_squash

squashは「root権限を潰す」と覚えましょう。root_squashがrootでのアクセス時に匿名アカウント権限で実行するオプションです。

/etc/exportsを反映させるコマンド

exportfs

ハードマウントで設定するべきオプション

intr

無限に再実行させないために割り込み中断を可能にするオプションです。

LMHOSTSファイルは何を記述するか

NetBIOS名とIPアドレスの対応

ワークグループMYGROUP内のマスターブラウザを検索する

nmblookup -M MYGROUP

NFSのfilesrvでエクスポートしている/share/pubを/mnt/nfs/pubにマウントする

mount -t nfs filesrv:/share/pub /mnt/nfs/pub

Linuxのユーザ名とWindowsクライアントの複数ユーザで共有するためのsmb.conf内の設定

username map

map usernameなどと誤解しないように注意してください。

Samba側でWindowsドメインのアカウントをUnixアカウントとして利用する機能

winbind

逆にwindows側でUnixアカウントを利用することはできません。

Kerberos認証ではkerberosサーバが発行した公開鍵を利用するか

利用しない

Kerberos認証では認証後の通信を暗号化するか

暗号化しない(Kerberos認証はあくまでも認証のフレーム)

kerberos認証を利用する際のsmb.confにおいてworkgroupはどのような設定を行うか

[global]セクションでドメイン名の左端の要素を指定する。EXAMPLE.COMの場合はEXAMPLE。

kerberos認証を利用する際のsmb.confにおいてrealmはどのような設定を行うか

[global]セクションでドメイン名を指定するEXAMPLE.COMの場合はEXAMPLE.COM。

kerberos認証を利用する際のsmb.confにおいてnetbios nameはどのような設定を行うか

DNSホスト名

NFSv3サーバ上で動作する基本的なデーモンを述べよ

portmapdもしくはrpcbinddを起動した上でmountdとnfsdとstatdを起動する

NFSv4サーバ上で動作する基本的なデーモンを述べよ

portmapdもしくはrpcbinddを起動した上でnfsdとidmapdを起動する

NFSv4におけるidmapdはNFSv3ではmountdとnfsdが担っていたと捉えましょう。

NFSサーバexamserverで利用できるディレクトリを表示するコマンド

showmount -e examserver

-eはexportedの略称と理解しましょう。

/etc/exportsで擬似ルートを設定するためのパラメータ

fsid=0

例えば/var/nfs *(ro,fsid=0)のように設定します。

全ユーザがゲストアカウントによりパスワードなしでプリンタを共有する設定
  • security = share(パスワードだけの認証)
  • guest ok = yes

ネットワーククライアント管理

eth0で172.17.0.1にDHCPリレーする設定

dhcreleay -i eth0 172.17.0.1

dhcとcが入る点に注意してください。clientのcです。

RAとRSを説明せよ
  • RS:クライアント→ルータのルータ要請
  • RA:ルータ→クライアントのルータ通知
PAMで失敗したらすぐに認証を拒否するコントロール

requisite

LDIFの識別名

dn(distinguished name)

OpenLDAPのサーバデーモンの設定ファイル

/etc/openldap/slapd.conf

LDAPの情報をローカルでキャッシュするサービス,およびそれを参照するような設定

/etc/nsswitch.confにsssを記述する

SSSD(System Security Service Daemon)の略称です。

pam_security.soが参照するファイル

/etc/securetty

rootとしてログイン可能な端末名を記載したファイルです。

DHCPはLDAP情報とNIS情報を提供するか

LDAPは提供せず,NISは提供する

DHCPサーバの設定でDNSサーバを設定するのはdomain-name-serversとdns-serversのどちらか

domain-name-servers

DHCPサーバの設定でデフォルトゲートウェイを設定するのはroutersとgatewaysのどちらか

routers

LDAPのエントリーでルートは左側か右側か

右側

exampl.comの場合はこのままdn: uid=lpic, ou=People, dc=example, dc=comのようにします。

slapaddはslapd(サーバプロセス)を経由するか

経由しない

slapcatはslapd(サーバプロセス)を経由するか

経由しない

slapdでログファイルを指定するディレクティブ

logfile

LDAPデータベースはどこに置かれるか

/var/lib/ldap

olcSuffixとolcRootDnを説明せよ
  • olcSuffix:管理するディレクトリのルートDN
  • olcRootDn:管理者アカウント

olcはOnline Configurationの略称です。システムに合わせて設定します。

OpenLDAPにxmlやtextは使えるか

使えない

pam.confとpam.dが共存した場合どうなるか

pam.confが無視される

pam_access.soはホストからのアクセス制御を行うか

行わない。ログインユーザの制御を行う。

PAMでユーザのログインを記録するタイプ

session

accountではないため注意してください。

pam_unix.soとpam_ldap.soについて説明せよ

unixはローカル認証なので,LDAPで完結させたい場合はpam_ldap.soのみを利用すればよい

メールサービス

postfixの設定を表示するコマンド

postconf

postfix flushは何を行うコマンドか

キューを全て再送信する。postqueue -fと同じ。全て削除するのはpostsuper -d ALLを利用する。

メールキューを表示するコマンド
  • mailq
  • postqueue -p
MDAの例を挙げよ
  • procmail
  • dovecot

最近はSieveを用いてプログラミングライクにフィルタリングを実装しています。

POP3のポート番号

110

POP3Sのポート番号

995

IMAPのポート番号

143

IMAPSのポート番号

993

ユーザーのホームディレクトリ直下にメールを保存する設定
  • Postfixの場合:home_mailbox = Maildir/
  • Dovecotの場合:mail_location = maildir:~/Maildir
dovecotで使用するプロトコルをIMAPとPOP3のみに設定する

protocols = imap pop3

postfixのデーモンの動作を記述するファイル

/etc/postfix/master.cf

postfixで最終の宛先として指定するパラメータ

mydestination = mylpic.com, mylinuc.com

mydestinationsと複数形にしないように注意してください。

mydestinationで指定した宛先以外の宛先を指定するパラメータ

relayhost

postfixでchrootしたい場合に編集する設定ファイル

/etc/postfix/master.cf

newaliases以外にエイリアスデータベースを更新するコマンド

postalias {更新対象のデータベース}

RBLが利用するプロトコル

DNS

RBLはRealtime Blackhole Listの略称で,スパムメールやウィルスメールの発信元IPをレコードとして登録したリストのことを指します。

dovecotでユーザの認証方式を指定する記述
  • mechanisms(v1.x)
  • auth_mechanisms(v2.x)
Sieveのコマンドとして格納/破棄/転送/他のメールボックスに格納を表すアクション
  • 格納:keep
  • 破棄:discard
  • 転送:redirect
  • 他のメールボックスに格納:fileinto

dropやtransferというアクションは存在しないため注意してください。

システムセキュリティ

iptablesにおけるパケットフィルタリングはsyslogやrsyslogに依存するか

依存する。あくまでもカーネルの機能であるため。

IPv6に対するiptablesコマンド

ip6tables

Linuxで動作するルーティングソフトウェア

Quagga

静的経路だけであればiptablesのみで動作します。

FTPのデータ転送と制御のポート番号
  • データ転送:20
  • データ制御:21
パケットスニファリングツール

Snort

非同期的に改ざんを検知するツール

Tripwire

Xmasスキャンを行う方法

nmap -sX example.com

XmasスキャンはTCPパケットのフラグ(FIN/PSH/URG)がすべてセットされており「クリスマスツリーのように点灯している」イメージに由来していると覚えましょう。

TCP wrapperの設定ファイルで指定したコマンドを実行するためのオプション

spawn

/etc/hosts.allowや/etc/hosts.denyで利用されます。

インストールされているパッケージの改ざんをチェックするコマンド

rpm -Va

主なテーブルとデフォルトチェインを述べよ
  • filter:INPUT/OUTPUT/FORWARD
  • nat:PREROUTING/POSTROUTING/OUTPUT
  • mangle:filterのチェイン+natのチェイン
FTPでクライアント→サーバで転送するコマンド

STOR

FTPでサーバ→クライアントで転送するコマンド

RETR

retrieveの略称と覚えましょう。

id_rsaと~/.sshのパーミッション
  • id_rsa:400
  • ~/.ssh:700
Snortは開いているポートを調べられるか

調べられない。nmap/netstat/lsofなどを利用する。

tcpdumpは開いているポートを調べられるか

調べられない。nmap/netstat/lsofなどを利用する。

OpenVPNの設定ファイルで接続中のクライアントを/var/log/openvpn-status.logに出力する設定

status /var/log/openvpn-status.log

iptablesが操作するカーネルモジュール

netfilter

設定されたフィルタリングルールを表示するコマンド

iptables -L

route -nでリンクローカルアドレスは表示されるか

表示される

/var/ftpの適切なパーミッション

-wx --- ---

readは他のユーザから知られないために付与させません。

vsftpdで匿名ユーザを利用するための設定

anonymous_enable=YES

デフォルトで/var/ftpにchrootします。ルートディレクトリを変更したい場合はanon_root=/var/ftp/pubのようにします。

/var/ftp配下に共有ライブラリをコピーする方針はあり得るか

chrootしていたとしてもあり得ない。FTPはあくまでもアップロードのためのコマンドなので,仮に共有ライブラリが見つからない場合はchrootしていない場合と同様にld.so.confを編集してldconfigコマンドを実行する。

OpenSSHでログイン時のパスフレーズ入力を省略する方法
  • ssh-agentの利用
  • キーペア作成時にパスフレーズを入力しない
  • サーバ側にknown_hostsと.shostsを設定

.shostsは.rhostsでもOKです。この設定はホストベース認証と呼ばれています。

SSHのホストベース認証を無効化する設定

IgnoreRhosts yes

sshの-Lと-R
  • -L:ローカルからリモートへポート転送
  • -R:リモートからローカルへポート転送
OpenSSHでX11のポートフォワーディングを許可するディレクティブ

X11Forwarding yes

root権限が不要なTCPポートスキャンを行う

nmap -sT {ホスト名}

TCP connect scanです。

OpenVPNでクライアント同士を接続可能にするオプション

client-to-client

問題演習で引っかかったポイント

Sambaサーバに接続されているクライアントと開いているファイルを表示するコマンド

smbstatus

/etc/exportsのホストは何で区切るか

半角スペース。/home/user 192.168.1.100(rw,no_root_squash)のように。

filesrvの/pubを/mnt/nfs/pubにハードマウントして割り込みを許可するコマンド

mount -t nfs -o hard,intr filesrv:/pub /mnt/nfs/pub

dhcpdのデフォルトゲートウェイの設定

option routers 192.168.0.254;

ログインに関するPAMの設定

/etc/pam.d/login

slapd.confでディレクトリ管理者のDNを設定

rootdn "cn=Manager,dc=lpic,dc=jp"

右側の方がDIT(Directory Information Tree)の根本に近いです。

LAPデータベースの内容をLDIF形式で出力

slapcat > ldapdb.ldif

iptablesで記録するログメッセージにヘッダを追加する

iptables -A MYFILTER -j LOG --log-prefix "Reject: "

nmapのOオプション

OSの種類を調べる

/etc/openvpn/server.confで「ca keys/ca.crt」と記述されている際のca.crtの絶対パス

/etc/openvpn/keys/ca.crt

mod_authz_coreにpath/methodは含まれるか
  • path:含まれない
  • method:含まれる
IgnoreRhosts yesとは

ユーザーが特定のホストから接続している場合にそのホストが信頼できると見なして認証を通す仕組みをIgnoreするための設定

Sambaの設定においてプリンタドライバを配置しておくべき共有の名前

print$

OpenVPNにおいてクライアント側で使用するポートを動的に決定するよう設定するパラメータ

nobind

LDAPの既存のエントリの更新を行うchangetype

modify

OpenLDAPの木構造においてルートにあたる要素の名前

config(ルート要素のcn)

LDAPエントリのパスワード変更を行うコマンド

ldappasswd

ゾーンファイルの構文や内容を検証するために使用されるコマンド

named-checkzone

テキスト形式のゾーンファイルをBINDの内部で使用できるバイナリ形式にコンパイルするコマンド

named-compilezone

named-checkzoneと同様に構文チェックもしてくれます。

BINDの設定におけるゾーンファイルの形式

masterfile-format

AuthUserFileを説明せよ

基本認証(mod_auth_basic)で使用されるユーザー名とパスワードの情報を格納するファイルのパスを指定する。

<Directory /var/www/html/secure>
    AuthType Basic
    AuthName "Restricted Area"
    AuthUserFile /etc/apache2/.htpasswd
    Require valid-user
</Directory>
証明書発行業務を行うためのスクリプト

CA.pl(plはperlスクリプトの拡張子)

LinuxシステムをWindowsドメインに参加させて認証やアクセス制御を行う

winbindd

NetBIOS名の解決を行うコマンド

nmblookup

ADドメインサービスの管理を行うコマンド

samba-tool

RPCを使うシステム間でサービスがどのポート番号を利用しているか通知するサービス

portmapper

IPv6ネットワークにおいてRAを送信するデーモン

radvd

Router Advertisement Daemonの略称です。

FTPサーバを挙げよ
  • ProFTPD
  • vsftpd(very secure FTPDと覚える)
  • Pure-FTPD
OpenVPNのポート番号

UDP/1194

rndc dumpdb {ファイル名}は正しいか

正しくない。出力先ファイルはname.confのdump-fileパラメータで指定する。

nginxでfastcgiにプロキシするディレクティブ

fastcgi_pass

fastcgi_proxyではない点に注意してください。

NFSで/homeの読み取り書き込み許可を与える

exportfs -o rw *:/home

LDAPのouとは

組織単位

管理者権限でLDAPデータベースにアクセスする方法

slapd.confにrootdnとrootpwを記述してslapdを再起動し,ログインする

LDIFファイルで設定を変更することを明示するもの

changetype: modify

Postfixで送信元アドレスの書き換えを行う

main.cfの中でsender_canonical_mapsを利用する

doveadmでユーザ名やクライアントIPが表示されるサブコマンド

who

sshd_configで特定のユーザにログインを許可する設定

AllowUsers

vsftpdで匿名ユーザのユーザ名
  • anonymous
  • ftp

ルートディレクトリを変更するanon_root=/var/ftp/pubのanonと混同しないように。

vsftpdで匿名ユーザの実行ユーザ

ftp

OpenVPNでクライアント同士を通信可能にするにはどこで何を設定すればよいか

サーバの設定ファイル(/etc/openvpn/server.confなど)でclient-to-clientを設定する。

クライアント側で設定する訳ではないため十分注意してください。

覚えるべきディレクトリ・ファイル

リゾルバが問い合わせ先のDNSサーバを指定する

/etc/resolv.conf

DHCPサーバの設定ファイル

/etc/dhcp.conf

DHCPのリース情報を記録するファイル

/var/lib/dhcp/dhcpd.leases

dhcpdとdが入る点に注意してください。

postfixとsendmailのメールキューの場所
  • /var/spool/postfix
  • /var/spool/mqueue
IPv4をIPv6でルータとして動作させるための一時的な設定ファイル
  • /proc/sys/net/ipv4/ip_forward
  • /proc/sys/net/ipv6/conf/all/forwarding
FTPでログインを許可しないユーザ一覧

/etc/ftpusers

「ログインできない」ユーザである点に十分注意してください。

sshdの設定ファイル

/etc/ssh/sshd_config

OpenVPNサーバの設定ファイル

/etc/openvpn/server.conf

Postfixで配送の基本動作を設定するファイル

/etc/postfix/main.cf

postfix.confというファイルは存在しません。

namedの作業ディレクトリ

/var/named/

PAMモジュールを置く場所

/lib/security

/etc/pam.d/securityではないため注意です。

squidの設定ファイル

/etc/squid/squid.conf

nginxも/etc/nginx/eginx.confにメイン設定ファイルを置いて,/etc/nginx/conf.dに詳細の設定ファイルを置きます。

シェアはこちらからお願いします!

コメント

コメントする

※ Please enter your comments in Japanese to distinguish from spam.

目次