034058 ランダム
 ホーム | 日記 | プロフィール 【フォローする】 【ログイン】

家studyをつづって

PR

プロフィール


kinada3

カテゴリ

日記/記事の投稿

バックナンバー

キーワードサーチ

▼キーワード検索

楽天カード

コメント新着

Bottega@ Re:LPIC1メモ2(06/16) 比較式の説明がない -leとか
Bottega@ Re:LPIC1メモ2(06/16) 仮想環境でのhwclockは?

フリーページ

ランキング市場

ニューストピックス

2018年02月13日
XML
カテゴリ:LINUX
LPICレベル1を目指して。。。
2018年6月5日更新 P443

〇Linuxの仕組み的な

TCP Wrapper
/etc/hosts.allow
/etc/hosts.deny
を読み込む
httpはTCP Wrapperで保護されない。

GPG設定ファイルの格納ディレクトリ
~/gnupg

SSHのknown_hostsに格納される情報
・ホスト名
・IPアドレス
・公開鍵

/etc/ssh_known_hosts:すべてのユーザがreadできる。
PermitRootLogin=noでrootはSSHでログインできない
sshのプロキシ
ssh -o ProxyCpmmand="ssh -p 221 -W Server2:222 server1" localhost

sshクライアントで「ForwardX11 yes」、サーバで「X11 Forwarding yes」を設定することで、X11のポート転送が可能

サーバ側で公開鍵を保存するファイル
authorized_keys

ssh-agent:複合化された秘密鍵をメモリに保存するエージェント

cups:Linuxのプリントサービス
/etc/cups/printers.confに設定情報あり
lpadminコマンドでプリンタの設定や削除を行う
lpq、lpc、lpstat:プリンタのキューを表示するコマンド

GhostScript:PostScriptデータを非PostScriptデータに変換する

〇ネットワーク関連
代表的なメール転送エージェント
Postfix、Sendmail、Exim(イクシム)
※現時点では、Eximのシェアが大きい。
参考サイト
http://www.securityspace.com/sspace/index.html
2018年分

ネットワークアプリケーションはnsswitch.confを参照し、名前解決を行う。
/etc/nsswitch.conf内のhosts:行にDNSサーバを指定する

ユーザがroot権限でアプリケーションを実行できるかどうかの判断
/etc/sudoers

inetd、xinetdはネットワークからのリクエストを受け付けるデーモン
設定ファイルはそれぞれ、
/etc/inetd.conf
/etc/xinetd.conf

メールの配送
/var/mail or  /var/spool/mail

不正アクセスを11.22.33.44から受けている場合
ip route add 11.22.33.44 gw 127.0.0.1 lo

/etc/hosts
ipアドレス ホスト名

/etc/resolv.conf
問い合わせを行うDNSサーバについて記載

/etc/services:サービス名 ポート番号/プロトコル 別名
ネットワークを介したサービスのやり取りを記載

Linuxの起動シーケンス
1.電源投入
2.BIOSの起動
3.ブートローダの読み込み
4.カーネルの読み込み
5.initプロセスの実行
6.システムタスク、サービスの実行
7.ログイン画面の表示

GRUB
GRUBとはOSを起動するために必要なブート・ローダと呼ばれるプログラムの1つ。
ブート・ローダでLinuxで主に使われているのがGRUB(GRand Unified Bootloader)。

GRUBの設定ファイル
/boot/grub/grub.conf
/boot/grub/menu.list
GRUBの設定ファイル内の記載
root(hd1,4)
読み方の例として、「hd0,0」の場合、一つ目のHDDの一番最初のパーティションとなる。

〇コマンド
gpg:GPGの暗号化コマンド。「-edit-key」を付けることでユーザの鍵管理を対話形式で行う
ssh-keygen:SSHで使用する公開鍵、秘密鍵の生成
newaliases:メールアドレスのエイリアスを作成(メールアドレスの追加なし)
mailq:メールの配送キューの情報を表示
※もしくはメールキューのディレクトリのファイルをlsで表示することでも可能
dig、host:ホスト名に対応するIPアドレスを名前解決する
route add {-host or -net} 172.16.0.0 netmask 255.255.0.0 gw172.16.255.254
ip:ルーティングテーブルの表示や、ネットワークインターフェースの表示
lsof:プロセスがオープンしているファイルを表示するコマンド
ifconfig:ネット―枠の表示、設定コマンド
netstat:アクティブなネットワーク情報やルーティンぎテーブルを表示する
※反応がない場合に考えられる問題⇒DNSの応答がない
iconv:ファイルの文字コードを変更
lsof:ファイルシステムにアクセスしているプロセスを表示
locale:現在のロケール情報(言語、国などの情報)を表示する
logger:任意のファシリティ、プライオリティのメッセージをsyslogに送る
logrotate:古いlogを別名で保存し新しいファイルを作成するコマンド
hwclock:マザーボード上のハードウェアクロックとシステムクロック間の同期を取るコマンド
date:上記に対して、システムクロックのみを設定するコマンド
リファレンスクロック→原子時計、stratum0。NTPサーバはstratum1。
また、時刻同期にはroot権限が必要

crontab:決められた時刻に特定のコマンドを実行するコマンド
cronはジョブスケジューラ
crontabは/etc/crontabに配置

cronコマンドのフィールドの見方
分 時 日 月 曜日 コマンド
※各行の区切りは改行

anacron:システム保守のためのログの削除コマンドなどを実行
/etc/cron.daily等を参照する。

ユーザのパスワードの有効期限やパスワード失効期限を設定するコマンド
・usermod
・passwd
・change

last:最近ログインしたユーザを表示。/var/log/wtmpを参照する。

who:現在ログインしているユーザを表示する。/var/run/utmpを参照する。

ulimit:プログラムのリソースを制限するコマンド。

gok:Gnome Onscreen Keyboard。スクリーンキーボードの起動。
emacspeak:目の不自由な人のためのテキストを読み上げる機能
groups:自身のグループ名を表示する。

groupadd:グループの追加

groupdel:グループの削除

usermod:ユーザのグループ変更
useradd:ユーザの作成コマンド。-Dオプションでインアクティブの期間後に無効化する。

change:ユーザの有効期間の変更・「-l」で参照
userdel -r ユーザ名

userdel -force -remove ユーザ名:ユーザとホームディレクトリを削除する
2つのをキー入力を同時にできない人のための機能
後押しで、同時入力と同等とする機能
スティッキー・キー
スロー・キー
バウンス・キー
useradd:ユーザの登録コマンド。初期登録時は/etc/passwdは「x」表示、/etc/shadowは!!表示となる。

seq:seq 数字でその数字まで1ずつ足して表示する。

コマンドに$$をつけると自身のプロセスIDを表示する。
[root@localhost ~]# echo $$
56634

$0はシェルの名前を表示
[root@localhost ~]# echo $0
-bash

function関数を使うと、プロセスを呼ばずにシェルスクリプトのように動作できる
function 関数名(){コマンド、echo等}

alias:コマンドに別の名前を付けて、短い名前で実行させる。
※削除はunalias
※¥をつけると一時的にaliasを解除する。

df:ファイルシステムの使用状況を表示するコマンド

tune2fs:ファイルシステムをチェックする最大時間間隔を設定

renice:プロセスの優先度を変更する

tr:引数の文字列を削除する

cat << 文字列
上記のようにすると「文字列」を入力するまでプロンプトが表示され、
文字列を入力するとそれまで入力したものが表示される。
[root@localhost ~]# cat << END
> line 1
> line2
> END
line 1
line2
[root@localhost ~]#

こんな使いかたも可能
[root@localhost ~]# cat << END > test
> line1

> line11
> END
[root@localhost ~]# cat test
line1
line11

xargs:標準入力から受け取ったファイルを引数にコマンドを実行
[root@localhost ~]# head test
line1
~(headはファイルの先頭10行を表示するコマンド)
line10

上と同じ結果をxargsを使って実行

[root@localhost ~]# ls test | xargs head
line1
line10
[root@localhost ~]#

dd:指定されたブロックサイズでブロックを書き込む

tee:標準入力を標準出力とファイルに書き出す。
[root@localhost ~]# ls | tee testfile
anaconda-ks.cfg
initial-setup-ks.cfg
testfile
[root@localhost ~]# cat testfile
anaconda-ks.cfg
initial-setup-ks.cfg
testfile
[root@localhost ~]#

dmseg:システム起動時にカーネルが画面に表示するメッセージを表示

uname:マシンアーキテクチャやカーネルリリース情報を確認

init 1/telinit 1(ランレベル)
ほかのユーザのセッションを断ち切って管理者がメンテナンス実施
ランレベル1はrootユーザのみのシングルユーザモード

wall:ログインしているユーザ端末にメッセージ送付

systemctl:systemdに管理されたサービスの起動、停止コマンド

uname:マシンアーキテクチャやカーネルバージョンの情報を表示するコマンド

wall:ログインしているユーザにメッセージを送る
      wall メッセージ

grep:「-v」オプションをつけることで指定した文字列を含まない行を出力。

expand:タブをスペースに変換するコマンド

標準出力など
Linuxに限らず大体のOSには「標準入力」「標準出力」「標準エラー出力」の三つがある。
Linuxではデフォルトで
・標準入力には0
・標準出力には1
・標準エラー出力には2
が割り当てられる。
2>&1のように「&」をつけることによって、2と1の出力を同一にできる。

〇設定ファイル
/etc/nologin
このファイルを「touch /etc/nologin」のようなコマンドで作成すると、
それ以降、root以外のユーザはログインできなくなる。

/etc/inittab
システムのランレベルの変更
Ctrl+Alt+Delでもシャットダウンさせないという定義も可能

/etc/skel配下のファイル、ディレクトリはuseraddでユーザ作成時に各ユーザに配布される。
/etc/passwd
すべてのユーザに読み取り権限がある
/etc/shadowのパスワード暗号化方式は変更しても既存のものには影響はない
また、第2フィールドに*を入れるとログイン拒否が可能

~/.bash_history
ログアウト時にコマンドの実行履歴が保存される
なお、「~」はユーザのホームディレクトリ

「\」等の特殊文字を文字として扱いたい場合は「\」でエスケープする。

○ネットワーク関連
Linuxをルータにするには、ネットワークインタフェース間の転送を許可する必要がある
cat /proc/sys/met/ipv4/ip_forward

〇vi関連
i:カーソルの前に文字を入力
I:カーソル行の先頭に文字を入力
a:カーソルの後ろに文字を入力
o:カーソル行の下に新しい行を作成し、先頭に文字を入力

yy:カーソル行をコピーする。yyの前に数字を入れるとその行数コピーする。

〇シェルスクリプト関連
#!/bin/sh:シェルスクリプトの先頭行にあり、インタプリタを指定している。
「$bash シェルスクリプト名」でも結果は同じ。

シェルスクリプトのIF構文
 if コマンド1
  コマンド2
 fi
 ※コマンド1の戻り値が0ならコマンド2を実行
「test」コマンドは以下の形式で後続の条件式を判定する。
「test 条件式」

○その他
プロセスの受け取るシグナル
1 SIGHUP 制御端末(controlling terminal)のハングアップ検出、または制御しているプロセスの終了
2 SIGINT キーボードからの割り込み (Interrupt)
3 SIGQUIT キーボードによる中止 (Quit)
4 SIGILL 不正な命令
5 SIGTRAP トレース/ブレークポイント トラップ, IOT トラップ。SIGABRT と同義
6 SIGABRT abort(3) からの中断 (Abort) シグナル
7 SIGBUS バスエラー (不正なメモリアクセス)
8 SIGFPE 浮動小数点例外
9 SIGKILL Kill シグナル
18 SIGCONT 一時停止したプロセスを再開する

プロセスの優先度:-20~19、プロセスの優先度は「nice値」

root以外でuidが500未満のユーザは、
デーモンやディレクトリの所有者として利用するシステムアカウントで使われる。

Linuxのオンラインマニュアルは/usr/share/manに配置される。

Linuxのウィンドウマネージャ
・metacity
・kwin

X windowのstartxはシェルスクリプト
startx→xinit→xinitrc→XClientsの順番で起動
/etc/local以下のbinにはインストールするディレクトリ

xdplyinfo:Xwindo画面の色深度を表示するコマンド
xwininfo:Xwindo画面の色深度を表示するコマンド

xorg.conf
X window systemの解像度の設定ファイル
Fontの設定はFiles内のパラメータで変更
xfs:Xorgのフォントサーバ
xhost +ホスト名:あるクライアント上の画面をネットワーク経由で配信する。
※上記の問題点として、認証なしにサーバにアクセスできてしまう問題がある。
xmodmap:キーボードのマッピングを変えるコマンド
システムのランレベルを3⇒5に変更した場合、ログイン画面が表示される。
⇒画面はディスプレイマネージャが表示する。
xresources:ログインの背景画面の設定ファイル。
      グリーティングメッセ―ジの変更も可能。
xdm-config:xdmが参照する基本設定ファイル
Xsetup_0:xdmの壁紙を変更
linuxスワップパーティションは82(コード)

/etc/inittabのファイルにランレベルを規定する=SysV init≒Upstart
ディストリビューションによって異なる。

Systemctlで管理⇒systemd

systemdのターゲット
systemdはカーネルから起動される最初のプロセス
PIDは1が割り当てられる。
ターゲットはsystemdの管理対象で、ランレベルに相当するもの。

RPM 【RedHat Package Manager】
RPMとはRedHat社が開発したソフトウェアのパッケージ管理システム。
RPMでパッケージ管理を行うディストリビューションを「RPM系ディストリビューション」などと呼ぶことがある。
rpmコマンドを用いてバイナリをインストールしたり、ソースコードからバイナリを生成してインストールしたりすることができる。遠隔のサーバからHTTPやFTPでパッケージをダウンロードして展開することもできる。

〇Xシステム関連
Xサーバの強制終了:Ctrl+Alt+Backspace
〇SQL関連事項
・updateで変更する値はsetで指定
・項目を消すのはdelete

〇Linux関連事項
pinglogger:pingの受信ログを見るツール

/var/logのログ
boot.log :システムの起動や停止
cron :crondのログ
dmesg :システム起動時にコンソールに表示されるログ
lastlog :ユーザのログインのログ
maillog :メールサーバログ
messages :ログインやデーモンの起動・停止ログ
secure :セキュリティに関するログ
wtmp :ログイン・ログアウト
xferlog :FTPによるファイル転送ログ
access_log :Webサーバのアクセスログ
error_log :Webサーバのエラーログ

SSHのポートフォワーディング
クライアントとサーバの間に仲介サーバとしておくことで、
クライアントと仲介サーバ間の通信をSSHにより暗号化、接続先のサーバとの通信は平文で行う

スーパーサーバ方式
プロセスは非常駐、リクエスト受信するとxinetdにより起動される。
スタンドアロン
プロセスは常駐のため、レスポンスが早い
セキュリティ的な話
/bootは別パーティションが望ましい

〇syslog関連
Linuxにおけるsyslog収集ソフトウェアは以下のとおり
・syslog
・rsyslog(syslogの機能強化、互換性あり)
・syslog-ng(syslogと互換性はない)
・systemd journal(syslog、rsyslogとの互換性あり)
 journalctlコマンドで収集したログを表示できる

/etc/syslog.confの書き方
ファシリティ.プライオリティ アクション(出力先)
アクションに「none」を指定すると、ログsの出力を無効化する

/etc/protocols
TCP/IPで使えるプロトコルとIPヘッダの対応表を記載したファイル






最終更新日  2018年06月12日 23時06分00秒
コメント(0) | コメントを書く
[LINUX] カテゴリの最新記事

Copyright (c) 1997-2019 Rakuten, Inc. All Rights Reserved.