■ユーザー毎のFTPの使用を制限
・/etc/ftpd/ftpusersファイルへFTPサーバへのアクセスを拒否するユーザーを列挙する。
■ホスト単位でのFTPアクセスの制限
・/etc/ftpd/ftphostsに複数のホストからFTPサーバ上の複数のアカウントへのログインを許可、拒否。
■classによるFTPの制限
・/etc/ftpd/ftpaccessにclassによるユーザーの定義を行い、class単位での制限を実施する。
①classの定義
class クラス名 ユーザー種類[匿名ユーザー|ゲストユーザー|実ユーザー] アクセス元
例)
class local anymous,guest,real 192.168.1.0/24
→192.168.1.0のセグメントからアクセスしてきた匿名、ゲスト、実ユーザーlocalクラスとして定義する。
②ログイン可能ユーザー数、時間の制限
limit クラス名 ユーザー数 接続可能時間 メッセージファイル
例)
limit local 50 Wk0800-1800 /var/ftp/message
→毎週勤務時間でのlocalクラスに属するユーザーからの同時ログイン数を50に制限する。
ログイン制限数に達した場合は/var/ftp/messageファイルの内容が表示される。
③ログイン試行回数の制限
loginfails 試行回数
例)
loginfails 5
→ログイン試行に5回失敗するとFTPから切断され、メッセージがsyslogファイルへ記録される。
2008年2月25日月曜日
Windowsファイル共有
「ネットワーク共有を設定しているのに、ファイル共有接続ができない!!」
■匿名アクセス
ファイルサーバ側でゲストアカウントを有効にし、Guestのパスワードを空に設定しておくと、クライアントからユーザーアカウントとパスワードを指定しなくても、サーバに接続し、Guest権限でファイルにアクセスできる機能。
→Guest権限のため権限制限はあるがファイルの受け渡しなどは十分利用可能。
■IPC$(Inter-ProcessCommunicatuin):プロセス間通信
Windows根とワークにおいて、そのマシンの公開リソースの一覧を取得したり、以後のリソースの使用に対する準備を行うために使われる。
■匿名アクセス
ファイルサーバ側でゲストアカウントを有効にし、Guestのパスワードを空に設定しておくと、クライアントからユーザーアカウントとパスワードを指定しなくても、サーバに接続し、Guest権限でファイルにアクセスできる機能。
→Guest権限のため権限制限はあるがファイルの受け渡しなどは十分利用可能。
■IPC$(Inter-ProcessCommunicatuin):プロセス間通信
Windows根とワークにおいて、そのマシンの公開リソースの一覧を取得したり、以後のリソースの使用に対する準備を行うために使われる。
2008年2月24日日曜日
solarisセキュリティ
■OpemBootのセキュリティレベルを変更
noe
パスワード必要無し。デフォルトの設定。
command
bootおよびgoをのぞく全てのコマンドについてパスワードが必要。
full
goを除く全てのOpenBootコマンドにてパスワードが必要。
<パスワード設定>
・rootでの設定方法
#eeprom security-passwd
・OpenBootでの設定方法
ok passwd
<セキュリティモード変更>
・rootでの設定方法
#eeprom security-mode=command
・OpenBootでの設定方法
ok setenv security-mode full
■ファイルシステムのセキュリティ
・ファイルの削除はそのファイルので権限ではなく、ファイルが存在するディレクトリの権限に依存する。
・SetUID(SetGID)
ファイルがプログラムの場合のみ有効。
たとえ誰がそのプログラムを実行しようと、プログラムが特定のユーザであるように見せる。
一定のプログラムしか一定の情報にアクセスすることを許可しない場合に有用される。
■ファイルシステム監査ツール
ASET(Automated System Enhancement tool)
パーミッション設定やシステムファイルの内容をチェックするパッケージ。
脆弱性を調べ、レポートを出力する。
リリースメディアに含まれる。(SUNWastパッケージ)
#pkginfo | grep SUNWast
fuserコマンド
どのプロセスがファイルを開いているかを確認する。
PID+状態
<状態の種類>
c:プロセスのカレントDIR
r:プロセスのrootDIR
o:普通のオープンされているファイル
m:メモリにマップされているファイル
t:テキストファイル
■ユーザアカウント、環境
・必要のないPATHは環境変数として設定しない。
・アカウントパスワードパラメータ
/etc/default/passwd
・rootでの直接ログインを防ぐ
/etc/default/login
CONSOLE=/dev/null
・suコマンドのログ
/etc/default/su
SULOG=/var/adm/sulog 書き込むログファイルを指定
SYSLOG=YES syslogにも記録するかどうかを指定
CONSOLE=/dev/console どのスクリーンにsuのメッセージを表示するか指定
PATH=/usr/bin: 新しいユーザのシェルのデフォルトパスを指定
SUPATH=/usr/sbin:/usr/bin rootに変更した場合のパスを指定
・プロンプトへのユーザ名の表示
.login
set prompt="`uname -n` #"
・制限つきシェル
/usr/lib/rsh(Bourneシェル)、/usr/bin/rkshの二つは制限つきシェルが使える。
ディレクトリの移動ができない、PATH環境変数が変更できない、リダイレクトが使えないなど。
■cronの制御
・/etc/cron.d/cron.allow
crontabの使用を許可するユーザーリスト
・/etc/cron.d/cron.deny
crontabの使用を許可しないユーザーリスト
→リストされたユーザーIDでのcronジョブの実行か可能だが、リストの参照、変更処理を行えないため、セキュリティが向上する。
・実行シェル内部に不要なPATHを設定しない。
→コマンド同じファイルを用意し、わざと実行させる(トロイの木馬)攻撃を防ぐ。
内部で実行するコマンドはひとつひとつ変数として定義する方が安全性が高い!!
■各種システムログ
syslog
・UDP514番を使用する。
loginlog [/var/adm/loginlog]
・ログイン試みが6回失敗するとログを出力。
・/var/adm/loginlogを作成する。
sulog [/var/adm/sulog]
・suコマンドの試みを全て出力。
wtmpx [/var/adm/wtmpx]
・ユーザーのログイン、ログアウト、システム再起動情報を出力。
・lastコマンドにて内容を確認できる。
vold.log [/var/adm/vold.log]
・VolumeManagerのログを出力。
logcheckツール
・キーワードが登録されているフィルタファイルを用い、記録するログにキーワードが含まれているとメッセージを送る。
・必要な間隔でcronから起動される。
■不要なサービスの停止
<設定ファイル>
/etc/inet/services
ポートタイプとポート番号をサービス名と関連付ける。
サービス名 ポート番号/プロトコル サービス別名
/etc/inetd.conf
システムが提供する各ネットワークサービスを結びつける。
サービス名 ソケットタイプ プロトコル {wait|nowait} サービスを実行させているユーザ名 サービスパス プログラム引数
noe
パスワード必要無し。デフォルトの設定。
command
bootおよびgoをのぞく全てのコマンドについてパスワードが必要。
full
goを除く全てのOpenBootコマンドにてパスワードが必要。
<パスワード設定>
・rootでの設定方法
#eeprom security-passwd
・OpenBootでの設定方法
ok passwd
<セキュリティモード変更>
・rootでの設定方法
#eeprom security-mode=command
・OpenBootでの設定方法
ok setenv security-mode full
■ファイルシステムのセキュリティ
・ファイルの削除はそのファイルので権限ではなく、ファイルが存在するディレクトリの権限に依存する。
・SetUID(SetGID)
ファイルがプログラムの場合のみ有効。
たとえ誰がそのプログラムを実行しようと、プログラムが特定のユーザであるように見せる。
一定のプログラムしか一定の情報にアクセスすることを許可しない場合に有用される。
■ファイルシステム監査ツール
ASET(Automated System Enhancement tool)
パーミッション設定やシステムファイルの内容をチェックするパッケージ。
脆弱性を調べ、レポートを出力する。
リリースメディアに含まれる。(SUNWastパッケージ)
#pkginfo | grep SUNWast
fuserコマンド
どのプロセスがファイルを開いているかを確認する。
PID+状態
<状態の種類>
c:プロセスのカレントDIR
r:プロセスのrootDIR
o:普通のオープンされているファイル
m:メモリにマップされているファイル
t:テキストファイル
■ユーザアカウント、環境
・必要のないPATHは環境変数として設定しない。
・アカウントパスワードパラメータ
/etc/default/passwd
・rootでの直接ログインを防ぐ
/etc/default/login
CONSOLE=/dev/null
・suコマンドのログ
/etc/default/su
SULOG=/var/adm/sulog 書き込むログファイルを指定
SYSLOG=YES syslogにも記録するかどうかを指定
CONSOLE=/dev/console どのスクリーンにsuのメッセージを表示するか指定
PATH=/usr/bin: 新しいユーザのシェルのデフォルトパスを指定
SUPATH=/usr/sbin:/usr/bin rootに変更した場合のパスを指定
・プロンプトへのユーザ名の表示
.login
set prompt="`uname -n` #"
・制限つきシェル
/usr/lib/rsh(Bourneシェル)、/usr/bin/rkshの二つは制限つきシェルが使える。
ディレクトリの移動ができない、PATH環境変数が変更できない、リダイレクトが使えないなど。
■cronの制御
・/etc/cron.d/cron.allow
crontabの使用を許可するユーザーリスト
・/etc/cron.d/cron.deny
crontabの使用を許可しないユーザーリスト
→リストされたユーザーIDでのcronジョブの実行か可能だが、リストの参照、変更処理を行えないため、セキュリティが向上する。
・実行シェル内部に不要なPATHを設定しない。
→コマンド同じファイルを用意し、わざと実行させる(トロイの木馬)攻撃を防ぐ。
内部で実行するコマンドはひとつひとつ変数として定義する方が安全性が高い!!
■各種システムログ
syslog
・UDP514番を使用する。
loginlog [/var/adm/loginlog]
・ログイン試みが6回失敗するとログを出力。
・/var/adm/loginlogを作成する。
sulog [/var/adm/sulog]
・suコマンドの試みを全て出力。
wtmpx [/var/adm/wtmpx]
・ユーザーのログイン、ログアウト、システム再起動情報を出力。
・lastコマンドにて内容を確認できる。
vold.log [/var/adm/vold.log]
・VolumeManagerのログを出力。
logcheckツール
・キーワードが登録されているフィルタファイルを用い、記録するログにキーワードが含まれているとメッセージを送る。
・必要な間隔でcronから起動される。
■不要なサービスの停止
<設定ファイル>
/etc/inet/services
ポートタイプとポート番号をサービス名と関連付ける。
サービス名 ポート番号/プロトコル サービス別名
/etc/inetd.conf
システムが提供する各ネットワークサービスを結びつける。
サービス名 ソケットタイプ プロトコル {wait|nowait} サービスを実行させているユーザ名 サービスパス プログラム引数
2008年2月22日金曜日
STATSPACK~メモリの見積もり~
■Buffer Pool Advisory
データベースバッファキャッシュの適切なサイズを見積もるために必要な情報。
Size For Est (M)
見積もりキャッシュサイズ(MB)
Size Fctr
現キャッシュサイズに対するサイズ比率 ※1.0が現在の値
Buffers for Estimate
測定用のキャッシュサイズ(バッファ単位)
Est PhysicalRead Factor
このキャッシュサイズに対する物理読み込み要因。
実際のキャッシュ内の読み込み回数を見積もった物理読み込み回数の割合。
Estimated Physical Reads
このキャッシュサイズで見積もった物理読み込み回数
**************************************************************************
Buffer Pool Advisory for DB: TEST Instance: TEST End Snap: 38
-> Only rows with estimated physical reads >0 are displayed
-> ordered by Block Size, Buffers For Estimate
Size for Size Buffers for Est Physical Estimated
P Estimate (M) Factr Estimate Read Factor Physical Reads
--- ------------ ----- ---------------- ------------- ------------------
D 48 .1 5,955 3,142.88 73,408,214
D 96 .2 11,910 9.60 224,282
D 144 .3 17,865 1.84 43,022
D 192 .4 23,820 1.16 27,062
D 240 .5 29,775 1.00 23,357
D 288 .6 35,730 1.00 23,357
D 336 .7 41,685 1.00 23,357
D 384 .8 47,640 1.00 23,357
D 432 .9 53,595 1.00 23,357
D 480 1.0 59,550 1.00 23,357
D 528 1.1 65,505 1.00 23,357
D 576 1.2 71,460 1.00 23,357
D 624 1.3 77,415 1.00 23,357
D 672 1.4 83,370 1.00 23,357
D 720 1.5 89,325 1.00 23,357
D 768 1.6 95,280 1.00 23,357
D 816 1.7 101,235 1.00 23,357
D 864 1.8 107,190 1.00 23,357
D 912 1.9 113,145 1.00 23,357
D 960 2.0 119,100 1.00 23,357
-------------------------------------------------------------
**************************************************************************
SQL> show parameter db_cache_advice
NAME TYPE VALUE
------------------------------------ ---------------------- ------------------------------
db_cache_advice string ON
SQL> desc v$db_cache_advice;
名前 NULL? 型
----------------------------- -------- --------------------
ID NUMBER
NAME VARCHAR2(20)
BLOCK_SIZE NUMBER
ADVICE_STATUS VARCHAR2(3)
SIZE_FOR_ESTIMATE NUMBER
SIZE_FACTOR NUMBER
BUFFERS_FOR_ESTIMATE NUMBER
ESTD_PHYSICAL_READ_FACTOR NUMBER
ESTD_PHYSICAL_READS NUMBER
データベースバッファキャッシュの適切なサイズを見積もるために必要な情報。
Size For Est (M)
見積もりキャッシュサイズ(MB)
Size Fctr
現キャッシュサイズに対するサイズ比率 ※1.0が現在の値
Buffers for Estimate
測定用のキャッシュサイズ(バッファ単位)
Est PhysicalRead Factor
このキャッシュサイズに対する物理読み込み要因。
実際のキャッシュ内の読み込み回数を見積もった物理読み込み回数の割合。
Estimated Physical Reads
このキャッシュサイズで見積もった物理読み込み回数
**************************************************************************
Buffer Pool Advisory for DB: TEST Instance: TEST End Snap: 38
-> Only rows with estimated physical reads >0 are displayed
-> ordered by Block Size, Buffers For Estimate
Size for Size Buffers for Est Physical Estimated
P Estimate (M) Factr Estimate Read Factor Physical Reads
--- ------------ ----- ---------------- ------------- ------------------
D 48 .1 5,955 3,142.88 73,408,214
D 96 .2 11,910 9.60 224,282
D 144 .3 17,865 1.84 43,022
D 192 .4 23,820 1.16 27,062
D 240 .5 29,775 1.00 23,357
D 288 .6 35,730 1.00 23,357
D 336 .7 41,685 1.00 23,357
D 384 .8 47,640 1.00 23,357
D 432 .9 53,595 1.00 23,357
D 480 1.0 59,550 1.00 23,357
D 528 1.1 65,505 1.00 23,357
D 576 1.2 71,460 1.00 23,357
D 624 1.3 77,415 1.00 23,357
D 672 1.4 83,370 1.00 23,357
D 720 1.5 89,325 1.00 23,357
D 768 1.6 95,280 1.00 23,357
D 816 1.7 101,235 1.00 23,357
D 864 1.8 107,190 1.00 23,357
D 912 1.9 113,145 1.00 23,357
D 960 2.0 119,100 1.00 23,357
-------------------------------------------------------------
**************************************************************************
SQL> show parameter db_cache_advice
NAME TYPE VALUE
------------------------------------ ---------------------- ------------------------------
db_cache_advice string ON
SQL> desc v$db_cache_advice;
名前 NULL? 型
----------------------------- -------- --------------------
ID NUMBER
NAME VARCHAR2(20)
BLOCK_SIZE NUMBER
ADVICE_STATUS VARCHAR2(3)
SIZE_FOR_ESTIMATE NUMBER
SIZE_FACTOR NUMBER
BUFFERS_FOR_ESTIMATE NUMBER
ESTD_PHYSICAL_READ_FACTOR NUMBER
ESTD_PHYSICAL_READS NUMBER
SELECT SIZE_FOR_ESTIMATE EST_SIZE,
BUFFERS_FOR_ESTIMATE EST_BUFFERS,
ESTD_PHYSICAL_READ_FACTOR PHYSIC_FACT,
ESTD_PHYSICAL_READS PHYSIC_READS
FROM V$DB_CACHE_ADVICE
WHERE NAME = 'DEFAULT'
AND BLOCK_SIZE = '8192';
2008年2月21日木曜日
2008年2月1日金曜日
時刻同期
■solaris9時刻変更手順
1.シングルモードで再起動
#sync;sync;sync
#shutdown -i0 -g0 -y
ok boot -s
2.日付変更
<日付変更方法①>
dateコマンド
#date 020118002008
→2008年2月1日18時00分に設定
<日付変更方法②>
ntpdateコマンド
※NTPサーバ設定を行っている場合のみ
#ntpdate -b ←システム時刻を設定する。
#ntpdate -q ←時刻のみ問い合わせ。
3.時刻確認
#date
■NTPについて
デーモン
xntpd
設定ファイル
/etc/inet/ntp.conf
-----------------------------------------
#multicastclient 224.0.1.1
server 192.168.129.16 ←NTPサーバアドレス
driftfile /var/ntp/ntpstats/ntp.drift ←「ntp.drift」誤差調整用
-----------------------------------------
コマンド
#ntptrace ←NTPサーバへの疎通確認
その他
①ポーリング間隔
・時刻同期間隔はだんだんと広がって行く。
#server 192.168.44.169 minpoll 6 maxpoll 6 ←ポーリング間隔を6(64秒)に指定。
(指定値はビット数。デフォルト値[minpoll:6(64秒),maxpoll:10(1024秒)])
1.シングルモードで再起動
#sync;sync;sync
#shutdown -i0 -g0 -y
ok boot -s
2.日付変更
<日付変更方法①>
dateコマンド
#date 020118002008
→2008年2月1日18時00分に設定
<日付変更方法②>
ntpdateコマンド
※NTPサーバ設定を行っている場合のみ
#ntpdate -b ←システム時刻を設定する。
#ntpdate -q ←時刻のみ問い合わせ。
3.時刻確認
#date
■NTPについて
デーモン
xntpd
設定ファイル
/etc/inet/ntp.conf
-----------------------------------------
#multicastclient 224.0.1.1
server 192.168.129.16 ←NTPサーバアドレス
driftfile /var/ntp/ntpstats/ntp.drift ←「ntp.drift」誤差調整用
-----------------------------------------
コマンド
#ntptrace ←NTPサーバへの疎通確認
その他
①ポーリング間隔
・時刻同期間隔はだんだんと広がって行く。
#server 192.168.44.169 minpoll 6 maxpoll 6 ←ポーリング間隔を6(64秒)に指定。
(指定値はビット数。デフォルト値[minpoll:6(64秒),maxpoll:10(1024秒)])
EXCELでの相関予測
傾き
「=LINEST(既知のy,既知のx,TRUE)」
Y切片
「=INDEX(LINEST(既知のy,既知のx,TRUE),2)」
相関関係
「=CORREL(既知のy,既知のx)」
値
「Y切片+傾き×n」
「=LINEST(既知のy,既知のx,TRUE)」
Y切片
「=INDEX(LINEST(既知のy,既知のx,TRUE),2)」
相関関係
「=CORREL(既知のy,既知のx)」
値
「Y切片+傾き×n」
登録:
投稿 (Atom)