眞鍋 Key Result(2/27~3/3) - careerbeat/dit-ehime GitHub Wiki
- 条件によって処理を選択できる
if 条件式1 then 条件式1が真の場合の実行文1 else 条件式1が偽の場合の実行文2 fi
if 条件式1 then 条件式1が真の場合の実行文1 elif 条件式2 then 条件式2が真の場合の実行文1 else 条件式1と2がどちらも偽の場合の実行文3 fi
- 繰り返して処理を実行できる
for 変数名 in 変数への代入値のリスト do 実行文1 done
- 代入値のリストはseqコマンドでも生成できる
- 条件が真である間、繰り返して処理を実行できる
while 条件文 do 実行文 done
- オープンソースの改ざん・侵入検知システム
- サーバホストのファイル改ざん・侵入検知の機能
- RedHat系のOSであれば、外部レポジトリを用いることなく、オリジナルのパッケージが使える
- 設定では、改ざん検知させたいディレクトリ・させたくないディレクトリを指定できる
コマンド | 意味 |
---|---|
aide -i | 監視対象のファイル・ディレクトリのデータベースファイル作成 |
mv -f /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz | 監視対象のファイル・ディレクトリのデータベースファイルの更新 |
aide -C | 改ざん・侵入チェック |
- RDB(リレーショナルデータベースを操作するための言語)
- データをテーブル表に格納
- 列(フィールド)と行(レコード)から構成
-
DDL:データ定義言語
データベースやテーブルの作成 -
DML:データ操作言語
データの操作 -
DCL:データ制御言語
トランザクション(永続的なデータに対する不可分な一連の処理)の制御
- SELECT:データベースからデータを抽出する
SELECT 列名 FROM テーブル名 (検索条件);
検索条件を指定することもできる
- WHERE:特定の条件を満たしたデータだけを取得する
- ORDER BY:検索結果をソートして表示する
- GROUP BY:データをグループ化し計算した上で抽出する
- INSERT:データベースにデータを追加する
INSERT INTO テーブル名 (列名) VALUES (値);
- UPDATE:データベースのレコードを追加する
UPDATE テーブル名 SET 列名=値 WHERE 条件式;
- DELETE:データベースのレコードを削除する
DELETE FROM テーブル名 WHERE 条件式;
- JOIN:データをまとめて取得したい場合、複数のデータのテーブルを結合する
SELECT aaa.name, bbb.branch FROM aaa INNER JOIN bbb ON aaa.branchid=bbb.branchid; 「aaaテーブルとbbbテーブルを結合したテーブルから、name(元々はaaaのフィールド)とbranch(元々はbbbのフィールド)を取り出す
- サンドボックスは未知のマルウェア検知に有効である
- 最新の研究では、マルウェアを使った標的型攻撃は全体の40%と言われている
- 残りの60%は認証情報の窃取、ソーシャルエンジニアリング、脆弱性の悪用、内部犯行などである
- さらに最近のマルウェアは、サンドボックスで実行されていることを感知し、検出を免れるように動作する
- また、攻撃のスピードも格段に上がっており、ルウェア感染から管理者権限の奪取まで、わずか40分というケースもある
- しかし、サンドボックス型の対策が標的型攻撃に対して完全に無効になったわけではない
- 既存の対策を補完するにはどうすればよいか考えるために、インジケータ(攻撃を示唆する情報)を活用する
- 日本のみにターゲットを絞った攻撃オペレーションを想定した対策(ローカルな視点での対策)
- 多くのUNIXやLinuxで採用されているGUIの実現を可能にしたウィンドウシステム
- クライアント・サーバ方式を採用
- Xサーバ:キーボードからの入力処理やディスプレイへの出力処理等のハードウェアの管理
- Xクライアント:Webブラウザやオフィスなどのアプリケーション
- 「X.Org」はフリーのX Windows Systemの主流
- /etc/X11/xorg.confで設定を行う
セクション | 説明 |
---|---|
ServerLayout | 入力・出力用デバイスの組み合わせとスクリーンの設定 |
Files | フォント関連のパスの設定 |
Module | Xサーバがロード予定のダイナミックモジュールの設定 |
InputDevice | Xサーバに対する入力デバイス(キーボード等)の設定 |
Monitor | システムにより使用されるモニタタイプの設定 |
Device | システム用のビデオカードの設定 |
Screen | ディスプレイの色深度と画面サイズの設定 |
リモートアクセスを許可にするには、xhostコマンドでXクライアントがXサーバを利用できるように許可する
また、Xクライアントの処理結果を表示するために、remotepcの環境変数DISPLAYでXサーバを指定して環境変数の DISPLAYをエクスポートを設定する
-
コンソールからstartxコマンドを実行
-
xinitコマンド
-
~/.xinitrcがあれば実行
なければ/etc/X11/xinit/xinitrcを実行 -
/.xsessionを実行/.xsessionがなければ~/.Xclientsを実行
~/.Xclientsがなければ /etc/X11/xinit/Xclientsを実行 -
KDEまたはGNOMEまたは他のウィンドウマネージャが起動
コマンド | 意味 |
---|---|
showrgb | X Window Systemで利用可能な色とRGB値の情報確認 |
xlsclients | 実行中のXクライアントを表示 |
xwininfo | コマンド実行後に指定したウィンドウのサイズ、位置、色深度の情報確認 |
xdpyinfo | ディスプレイ情報の表示 |
xwininfo | xdpyinfoコマンドで取得できる情報のイメージ |
ランレベル5で起動した場合に、Xサーバを起動してGUIのログイン画面を表示するもの
[ディスプレイマネージャの種類]
種類 | 配置場所 | 説明 |
---|---|---|
XDM | /etc/X11/xdm | XDMはX.Orgの標準 XDMは、X Display Managerの略 |
KDM | /etc/X11/kdm | KDMはKDEで利用される KDMは、KDE Display Managerの略 |
GDM | /etc/X11/gdm | GDMはGNOMEで利用される GDMは、Gnome Display Managerの略 |
ウィンドウの外観、アイコン、メニューなどを提供しユーザが設定できるようにしたもの
[ウィンドウマネージャの種類]
ウィンドウマネージャ | 説明 |
---|---|
Metacity | Gnome標準のウィンドウマネージャ |
Kwin | KDE標準のウィンドウマネージャ |
twm | 必要最低限の機能だけを備えたウィンドウマネージャ |
fvwm | 仮想デスクトップ機能を備えたウィンドウマネージャ |
enlightment | 高機能でグラフィカルなウィンドウマネージャ |
[統合デスクトップ環境] ウィンドウマネージャだけでなくアプリケーションまで含めて統一的な操作を提供するソフトウェア(現在の主流、GNOMEやKDEなど)
- 障害を持つユーザーを支援するための色々なソフトウェアが利用できる技術をAT(Assistive Technology)という
- 上記の中で、入出力の補助機能全般をアクセシビリティと言う
[キーボードアクセシビリティ]
- キーボードやマウス操作を障害を持つ利用者が利用しやすくする機能
アクセシビリティ | 説明 |
---|---|
スティッキーキー(順次入力キー) | 同時に複数のキーを押せないユーザーのために、修飾キー(Shift、Alt、Ctrlキーなど)が押された後は、他のキー入力があるまで修飾キーが入力された状態にする機能(ラッチ) |
スローキー | 指に麻痺などがあるユーザのために、一定時間以上キーを押したもののみが入力確定する機能 |
リピートキー | キーを押した指をすぐに離せないユーザのために、一定時間以上キーを押さなければ入力操作が繰り返されない機能 |
バウンスキー | 指のけいれんなどで誤って連続してキー入力を行ってしまうユーザのために、一定時間内に複数入力された場合は無視する機能 |
トグルキー | NumLock、CapsLock、Scrollキーを押して機能が有効になってLEDランプが点灯しても認識できないユーザのために、オン、オフの際にビープ音で知らせる機能 |
マウスキー | マウスを利用することが困難なユーザのために、マウスの代わりに、テンキーを使用して、マウスポインタを移動させたり、クリック操作したりすることができる機能 |
[その他アクセシビリティ機能]
- ハイコントラスト:視覚障害者のために、ディスプレイに表示されるコントラストを強調して見やすくする機能
- スクリーンリーダー:視覚障害者のために、スクリーン上の文字を音声に変換して読み上げる機能 etc...
[アクセシビリティ機能を実現するソフトウェア]
- emacspeak:emacsエディタに読み上げ機能を追加したスクリーンリーダーのソフトウェア
- Orca:スクリーンリーダー、スクリーン拡大鏡などの機能が備わったソフトウェア
- GOK(Gnome Onscreen Keyboard):スクリーンリーダーのソフトウェア
- セキュリティ強化を目的としたセキュアOS
- ディストリビューションではない
- Linuxカーネルの機能、LSM(Linux Security Module)のモジュールとして実装されている
- 上述した通り、SELinuxはメインラインのカーネルに組み込まれているため、各ディストリビューションで用意されている Kernelのバージョンに紐付いている
- Ubuntuでは、デフォルトでSELinuxではなく「AppArmor」というセキュリティ技術が採用されている
※AppArmorはSELinuxよりカジュアルに扱えるセキュリティツールで、エンドユーザーでも比較的気軽に使える
- 根本部分を大きく変えるという変化はなく、原理部分に関しては引き続き同じ状態である ‐ ポリシの記述方法やテスト環境、応用範囲などSELinuxをさらに効果的に使おうとする部分に関する開発は活発に続いている
- Linuxのユーザーアカウント情報は/etc/passwdに下記の書式で保存される
ユーザ名:(暗号化された)パスワード:UID:GID:コメント:ホームディレクトリ:ログインシェル
-
パスワードにシャドウパスワードが設定されている場合、/etc/passwdにはxが記載されて、/etc/shadowファイルに暗号化された パスワードが記載される
-
UID:root → 0、システム管理用 → 1~99、一般ユーザ → 100以降
- Linuxのグループアカウント情報は/etc/groupファイルに下記の書式で記載されている
グループ名:グループパスワード:GID:ユーザーリスト
- ユーザーは複数のグループに所属できる
- プライマリグループはユーザーにとって基本となるグループ(/etc/passwdのGIDフィールドに記載)
- サブグループはプライマリグループ以外に参加しているグループ
コマンド書式 | 概要 |
---|---|
useradd [ オプション ] ユーザー名 | ユーザーアカウントの作成 |
usermod [ オプション ] ユーザー名 | 既存のユーザーアカウントの変更 |
userdel [ オプション ] ユーザー名 | 既存のユーザーアカウントの削除 |
id [ユーザー名] | ユーザがどのグループに所属しているのかを調べる |
passwd [ オプション ] [ ユーザ名 ] | ユーザーのログインパスワードの変更 |
コマンド書式 | 概要 |
---|---|
groupadd [ オプション ] ユーザー名 | グループアカウントの作成 |
groupmod [ オプション ] ユーザー名 | 既存のグループアカウントの変更 |
groupdel [ オプション ] ユーザー名 | 既存のグループアカウントの削除 |
プロトコル | 概要 |
---|---|
FTP | 自信のマシンから遠隔地にあるマシンにファイルを送信したり、その逆に遠隔地にあるマシンからファイルをコピーするためのプロトコル |
SCP | FTPで送受信するデータをSSHで暗号化するプロトコル 転送を中断すると再開できないが高速 |
SFTP | SCPと同じくFTPで送受信するデータをSSHで暗号化するプロトコル 転送を中断しても再開できるが低速 |
- FTPは暗号化されていないため、重要な情報の転送には向いていない
- SCPは暗号化されていてFTPより安全だが、あまりにも大きいサイズのファイルを不安定なネットワーク下で転送するのには向いていない
- SFTPはSCPと同じく暗号化されていてFTPより安全で、速度は別としてネットワーク環境に対しては柔軟に対応できる