GOADBULL

LPIC レベル1 102 コマンド

digコマンド

DNSサーバーに問い合わせて指定した名前に関するサーバーからの応答を表示する。
詳細な情報を確認できるため、DNSに関するでハッキングツールとして使用することもできる。
DNSサーバーからでバックのための詳細な情報を取得できる。

検索タイプ
a IPアドレス
any 全ての情報
mx メールサーバーの情報
ns ネームサーバーの情報
soa ゾーンの情報
txt テキスト情報

ifup/ifdown

インターフェースをアップ/ダウンする

sendmailコマンド

メール送信やMTAの制御のためのコマンド。単独で実行すると、標準入力からメールを受けとる。

journalctlコマンド

systemd-journaldデーモンを動作させ、ログの一元管理を行う。
systemdから起動したプロセスの標準出力やsyslogへのログメッセージをバイナリ形式で保存する

オプション 
-a 画面表示で気合文字も含めて表示
-l カーネルからのメッセージも表示
-f 新規に追加されたログをリアルタイムを表示
-l 画面表示可能な全てのログを表示
-u 指定したユニットからのログを表示。
--vacuum-size アーカイブジャーナルの総容量が指定したサイズを下回るまで古いジャーなるを削除 --vacuum-time 指定した期間より古いファイルを削除 -o ログの出力形式を決定(json、verboseなど)
オプション未指定でログを表示する。

デフォルトではページャによる表示を行う。
ページャを無効にするには、--no-pagerオプションを指定指定する。

loggerコマンド

手動でログメッセージを生成するコマンド。
生成したメッセージをジャーナルファイルに書き込むことができる。
-p ファシリティ、プライオリティの設定が可能。

ファシリティをmail プライオリティをalertにしてメッセージ『This is ALERT』を送信したい場合
logger -p mail.alert This is ALERT

chmodコマンド

権限設定をするコマンド。

dateコマンド

システムクロックの参照や設定に使用する。
ハードウェアクロックの時刻をシステムクロックに反映させるときは、hwclockコマンドを使う。

netstatコマンド

有効なネットワーク接続や開いているソケット情報を表示する。
オプション
-r ルーティングテーブルを表示
-i ネットワークインターエースの統計情報を表示。
-n アドレスやポートの名前解決をしないで表示。
オプションなし 有効なネットワーク接続や開いているソケットの情報を表示する。

ssコマンド

netstatの後継になるコマンド。ネットワークのソケットの情報を表示する。
オプション
-a 全てのソケットを表示
-n サービス名前解決をしない
-t TCPソケットを表示
-u UDPソケットを表示

setコマンド

シェルのオプション機能の変更
set -o[+o] オプション
-oは登録、+oは解除 set -oのみで、オプション機能の有効・無効が確認できる。
オプション
allexport 新規作成・変更した変数を自動的に環境変数とする。
emacs emacsエディタと同じキーバインド(ショートカットキーみたいな)にする。
ignoreeof Ctrl+Dを押してもログアウトしない設定にする。
noglob パス展開を無効にする。
vi viエディタと同じキーバインドにする。

envコマンド

環境変数を設定・確認するコマンド。

オプション
-i 何も環境変数が設定されていない状態にする。
-u 環境変数を一時的に削除。
環境変数名=値   環境変数名の値を一時的に指定されたものに変更

ifconfigコマンド

ネットワークインターフェースの表示や設定を行うことができる。

idコマンド

ユーザーのUIDやGIDを表示。

tracepathコマンド

宛先アドレスまでの経路と経路情報の最大転送層単位を確認できる。
-n ホスト名ではなく、アドレスで表示

ipコマンド

形式) ip オブジェクト サブコマンド

オブジェクト
addr(a) IPv4、IPv6アドレス
link ネットワークデバイス
neighbor ARPキャッシュ、NDキャッシュ
route ルーティングテーブル

サブコマンド
add 追加
del 削除
show 現在の状態の表示。

ncコマンド

Netcatコマンド。
TCPやUDP周りの調査ができる。

オプション
-u UDPで動作。

systemd-catコマンド

実行結果をsystemd-journaldに書き込む。 例 systemd-cat ls

lastコマンド

最近ログインしたユーザーの一覧を表示するコマンド
/var/log/wtmp ログイン/ログウト情報が記録されているバイナリファイル。
-n 行数指定 -t 指定した日時より後。 -R hostnameを指定しない。

chageコマンド

パスワードの有効期限の設定に特化したコマンド

オプション
-l パスワードの有効期限に関する情報を表示
-m パスワード変更の間隔の最短日数を指定(インスタ形式)
-M パスワード変更の間隔の最長日数を指定
-I パスワードの有効期限切れ後にアカウントがロックされるまでの日数を指定
-E アカウントの有効期限を指定
-W パスワードの有効期限が切れる前に警告を表示する日程を指定

sourceコマンド

引数のファイルをシェルコマンドとして実行するコマンド。
実行権限が指定されていて、root以外は読み取りのみ。
. で代用可能。
シェルスクリプトに実行権がない場合でも実行可能。(読み取り権と、ディレクトリの検索権が必要(x))

visudoコマンド

権限委譲の設定を行う。/etc/sudoersファイルを設定することで編集を行うことができる。

sudoコマンド

オプション
-l 自身に委譲されているコマンドを確認できる。
権限委譲の設定は、/etc/sudoersファイルを設定するファイル。

routeコマンド

ルーティングテーブルの表示、追加、削除を行う。 オプション -F ルーティングテーブルを表示 -C ルーティングキャッシュ(高頻度に使用されるテーブル)を表示 -n 名前解決せず、ルーティングテーブルを表示。

ipコマンド

ipに関数する情報を表示したり、設定したりする。

オブジェクト
addr IPv4、IPv4アドレス
link ネットワークデバイス
negihbor IPv4のARPキャッシュ
IPv6のNDキャシュ
route ルーティングテーブル

サブコマンド add 値の追加
del 値の削除
show 現在の状態の表示

crontabコマンド

定期的に実行する処理を指定できる。

ユーザー制限
1、/etc/cron.allowファイルがあれば、記述のあるユーザーが利用可能。
2、/etc/cron.allowファイルがなければ、/etc/cron.denyに記述がないユーザーのみ実行可能。
3、両方のファイルがなければ、rootユーザーのみが利用可能。

オプション
-e 設定ファイルを編集
-l 設定ファイルを表示
-r 設定ファイルを削除

設定ファイル(/var/spool/cron/ユーザー名)を編集するのには、-eを使う。viなどで直接編集することはできない。

どうゆうコマンドを用意しているのか表示したい場合は、cat /etc/crontabを設定する。

pingコマンド/ping6コマンド

接続確認のために使う。

-c 疎通確認用パケットの送信回数を指定
-i 疎通確認用パケットの送信感覚
-n 結果表示の形式をホスト名でなく、アドレスで表示。

ulimitコマンド

ユーザーやシェルが利用できるリソースを制限できるコマンド

-a リソースの制限値を全て表示
-c コアファイル(エラーの参考情報)のサイズを制限
-f 出力ファイルサイズを制限
-u ユーザー一人が起動できるプロセス数を制限
-v シェルが利用できる仮想メモリを制限

nmapコマンド

指定したホストの開いているポートをネットワーク経由で確認(ポートスキャン)することができる。ログインしなくてよい。 netstatやlsofでも相手いるポートを確認できるが、ローカルホストしかできない。nmapはリモートホストの情報も確認できる。

batchコマンド

指定したコマンドを指定した時刻に実行するように設定するコマンド。

nmcliコマンド

 NetworkManagerを管理するためのコマンド。
オブジェクトを指定してからコマンド入力する。
オブジェクト
general(NetworkManager) hostname ホスト名を表示・指定したホスト名に変更。
networking(ネットワーク) on|off ネットワークの有効化・無効化
radio(wifi) Wifiの状態を表示。
connection(接続状態)
device(デバイス)

general status NetworkManagerの状態を表示
general hostname ホスト名を表示・指定したホスト名に変更
full インターネットにサクセス可能なネットワークに接続している。
portal インターネットにアクセスする前の状態である(フリーWifiの接続前ログイン状態)
limited ネットワークに接続してい流がインターネットにアクセスできない。
unknown 接続状態が見つからない。

timedatectlコマンド

systemdの動作するシステムにおいて、システム時刻の表示や設定を行うコマンド。dateコマンドの用意システムロックを操作するだけでなく、システムクロックやハードウェアクロックを同時に設定できる。

オプション
status 現在の日付時刻や状態の表示
set-ntp NTPによる時刻同期の有効
set-time 日付や時刻の設定
set-timezone タイムゾーンを一覧表示するサブコマンド。

tzselectコマンド

タイムゾーンを確認するコマンド。
環境変数TZや/etc/timezoneファイルを指定する値を確認する。

tzconfig

/etc/localtimeと、/etc/timezoneファイルをまとめて設定できるコマンド。

localeコマンド

現在のロケールや使用可能なロケールを確認するためのコマンド。

オプション
-a 利用可能なロケール名を表示。
-v -a使用時に詳細な情報を表示する。
-c 指定したキーワードのカテゴリと値を表示。

useraddコマンド

新規ユーザーを設定する、ユーザーごとの設定を決めるコマンド。
-m ユーザーのホームディレクトリが存在しない場合、作成する。
=M ユーザーのホームディレクトリを作成しない。

オプションを付けずにユーザーを追加数rと、デフォルトが追加される(/etc/default/useradd参照)

iconvコマンド

文字コードを変換する際に使う。(文字化け解消)
例:iconv -f UTF-8 -t EUC-8 example.txt > example_1.txt
-f 変換前の文字コードを指定
-t 変更後の文字コードを指定
-c 変換できなかった文字は出力しない。
-l 扱える文字コードを表示。

hostnamectlコマンド

ホスト名や関連する情報の表示、ホスト名の設定を行える。

journalctlコマンド

systemd-journaldのログを表示する

-a 画面に表示できないログも表示する。
-b 特定のシステム起動時のログを表示する。
-D 指定したディレクトリのログを表示
-l (--full)画面表示可能な全てのログを表示
-r (--reverse)最古のログからの表示
-u 特定のユニットからのログを表示。
-n (--line)直近のログから指定行数分を表示。デフォルトは10行

xhostコマンド

Xサーバーへのアクセスの許可・不許可を設定する。
Xサーバー(画面表示を提供するサーバー)が接続を受け入れるコンピュータのリストに、ホスト名を追加、削除する。

+,-でユーザーを登録する。
+のみ、-のみは、全てのユーザーを指す。

hostname

ホスト名を一時的に変更するために使う。f

gpgコマンド

GnuPGという暗号化プログラムを使用して、ファイルの暗号化や復号復号を行う。 --gen-key 公開暗号方式の鍵ペアを生成する
--export 公開暗号鍵をエクスポートする。
--import 公開鍵をインポートする
--list-keys 公開鍵を一覧表示する
--sign ファイルに署名する
--verify ファイルの署名を検証する。
-e 公開鍵を使用して、ファイルを暗号化する。 -o 出力ファイル名を指定する。
-r 暗号化に使用する暗号鍵の持ち主のメールアドレスを指定する。

--gen-keyオプションを指定すると、~/.gnupg/ディレクトリのしたに、公開暗号方式の秘密鍵と公開鍵のキーペアなどが作成される。

whoコマンド

/var/run/utmpファイルを参照し、現在システムにログインしているユーザーの情報を表示する。(サボり判明)

exportコマンド

シェル変数を環境変数として登録するためのコマンド。

ntpqコマンド

指定されたホスト上で実行するNTPサーバーに照会する。
同期状態を確認する。

-p 指定したサーバーとの同期状態を一覧表示する。
-i 対話モードで起動する。

trapコマンド

シェルに割り込みなど、シグナルが送られた時の処理を設定・実行する。

構文 trap コマンド シグナル

groupmodコマンド

グループアカウントの設定を変更するコマンド。
-g GID  GIDの変更
-n  グループ名の変更

usermodコマンド

ユーザーのアカウント情報を変更するために使用する。

-d ホームディレクトリを指定
-g プライマリグループを指定
-G プライマリグループ以外に参加する補助部ループを指定
-s ログインシェルを指定
-L パスワードをロックする
-U パスワードをアンクロックする
-p 暗号数無のパスワードを設定する。

ssh-keygenコマンド

公開鍵と秘密鍵のペアを作成する。

newaliases

/etc/aliasesの編集後、設定を反映させるためのコマンド。

startxコマンド

CUI環境(ランレベル3)で実行すると、X Window Systemを起動させることができる。

journalctlコマンド

systemd-journaldデーモンを動作させ、ログの一元管理を行う。
systemdから起動したプロセスの標準出力やsyslogへのログメッセージをバイナリ形式で記録します。
systemd-journaldのログを表示するには、journalctlコマンンドを使用する。

再起動によって、クリアされないようにするためには、/etc/system/jourald.confでジャーナルファイルの保存先を制御する設定項目Storage-presistentを設定する必要がある。

sshコマンド

-L ポートフォワーディングする。

ポートフォワーディングとは?
このポートに届いたデータは、指定した場所に転送。
あるポートで受け取った通信を別のポートに転送する処理のこと。
-l ユーザー名を指定することができる。 -o User=ユーザー名
例)ローカルのポート8000への接続は、SSHサーバ自身(localhost)のポート80(Webサーバ)へ転送する
$ ssh -L 8000:localhost:80 user@ssh-server

-l ユーザー名 オプションを指定する
-o User=ユーザー名 オプションを指定する。

オプション
-l ログインユーザー名の指定
-p 接続先ポート番号の指定
-l 秘密鍵のファイルを指定
-o ssh_configで設定できるオプションの指定

hwclockコマンド

ハードウェアクロックの参照や設定を行う。

-r ハードウェアクロックを表示
-s ハードウェア時刻をシステムクロックに反映させる。
-w システムクロックの時刻をハードウェアクロックに反映させる。

chronycコマンド

Chronyが自身の時刻同期先と同期が取れているか確認できるコマンド。

サブコマンド
activity オンライン/オフラインNTPサーバー数を表示
sources 時刻のソースを表示
sourcestats 時刻のソースの統計情報を表示
tracking トラッキング(時刻同期の詳細情報)を表示。

Chrony

ntpdに変わるNTPサーバー/クラインとの関係
設定ファイルは/etc/chrony.conf
iburstのオプションをつけることで、短い間隔で、4回問い合わせ、時刻同期をはやめることができる

/etc/chrony.confでジャーナルファイルの保存先を制御する設定項目
server 時刻を取得するNTPサーバを指定
peer 時刻を取得するNTPサーバーを指定(同じスペクトラム同士)
pool 時刻を取得するNTPサーバのプール
driftfile 自身の時刻のずれ具合を記録するファイルを指定

lsofコマンド

特定のポートを使用しているプロセスなど、ローカルホストの様々なプロセス情報を表示することができる。
ファイルシステムやポート、システムのリソースを使用しているプロセスの情報を表示できる。
リソースが使用中のため、マウントできない場合のトラブルシューティングとして使う。
オプションなし 現在開いているファイルを確認することができる。

iptables

パケットフィルタリングやNATの設定をするコマンド。

lpr

印刷ジョブを作成し、プリントキューに登録。

lprmコマンド

印刷キュー内の印刷ジョブを取り消す
-P 指定プリンタの印刷ジョブを削除
- 自分の印刷ジョブを全て削除

at

一度だけ実行するジョブを予約するために使用する。

オプション
-l 予約中のジョブを表示
-d 指定した予約中のジョブを削除

xauthコマンド

Xサーバーへの接続に使用される資格情報を表示したり、クライアント認証ファイルを編集したりするコマンド。ユーザー単位でアクセスを制限する。

fuserコマンド

システムの特定のリソースの使用中のプロセスを検索し、強制終了することができるコマンド。(ハッカーを見つける)

オプション
-k プロセスにSIGKILLを送信
-m マウントされたファイルシステムを指定
-v 詳細な情報を表示
-n 検索する領域を指定(tcpなど)。不正プログラムのPIDを知ることが可能。

groups

ユーザーの所属するグループを表示。

userdelコマンド

ユーザーアカウントを削除する。 -r (--remove) ユーザーのホームディレクトリも削除される。 -f (--force) ログイン中でも強制的に削除。

whoコマンド

現在ログインしているユーザーの情報を表示させることができる。 w でも代用可能。 whoコマンドな、/var/run/umpファイルを参照し、現在システムファイルを /var/run/utmpファイルはログイン中のユーザー情報が格納されているバイナリファイル。

seqコマンド

単調増加する連続した数値を作成するコマンド。 seq 開始する数値 終了するする値。 seq 終了するする値(1から開始) seq 開始する数値 増加する数値 終了する数値

nmtuiコマンド

TUI(テキストベースインターフェース)で起動するためのコマンド

suコマンド

Switch Userコマンド。ログイン中に別のユーザーに切り替わることができる。
-をつけると、切り替わる先のユーザー環境変数を使用する。

atqコマンド

実行予約した仕事を表示するコマンド。 at -lコマンドと同じ

testコマンド

if文のように使う

-d 指定したパスが存在し、ディレクトリでありばtrueを返す。
-e 指定したパスが存在すればtrue
-f 指定したパスが存在し、ファイルであればtrue
-L 指定したパスが存在し、シンボリックリンクであればtrue
-r 指定したパスが存在し、読み込み可能であればtrue
-w 上に同じようなもの
-x 上に同じようなもの

logrotateコマンド

ログファイルの分割・更新ができる。
ログローテーションの設定ファイルは、/etc/logrotate.conf

declareコマンド

変数を宣言することができるコマンド。
変数を削除をする場合は、unsetコマンドを使用する。

-f 関数を見ることができる。(setと同じ)

passwdコマンド

-l パスワードをロックする。 -u パスワードをアンロックする。

getentコマンド

/etc/nsswitch.confの情報を確認するためのコマンド。
データベース名にnswitch.confで指定できるサービス名、検索したい情報おwキーに指定することで、名前解決順序設定に従って検索した結果を得ることができる。 /etc/nsswitch.confは、名前解決やサービス名解決の際の問い合わせ順序を指定するファイル。ユーザー情報、パスワード、ホスト名からIPアドレスを取得する情報など。
作成者 sakurai kazuki コメントや要望があれば、下記のツイッターにDMをください。