ojixiiさんの助け合いフォーラム投稿一覧
「/etc/cron.allow」と「/etc/cron.deny」ファイルが存在しない場合の挙動は以前から議論のある内容のようですね。
https://ping-t.com/modules/forum/index.php?topic_id=4866
https://ping-t.com/modules/forum/index.php?topic_id=2749
事情が変わったのかなと思って MIRACLE LINUX 9(5.14.0-70.13.1.el9_0.x86_64)で確認してみましたが、
「どちらのファイルもない場合はrootだけ使用可能」は変わってませんでした。
[guest@ML9 ~]$ ls /etc/cron.allow /etc/cron.deny
ls: cannot access '/etc/cron.allow': No such file or directory
ls: cannot access '/etc/cron.deny': No such file or directory
[guest@ML9 ~]$ crontab -e
You (guest) are not allowed to use this program (crontab) ★
See crontab(1) for more information
man 1 crontab にも以下の記述です。
If neither of these files exist, then only the super user is allowed to use crontab.
ただ、少し調べてみたところ、
LinuC の方(レベル1 102)の例題だと「どちらも存在しない場合は全ユーザが利用可能」となってたり、
https://linuc.org/study/samples/3341/
LPI Learning Materials だと「ディストリビューションごとに異なる」となってます。
https://learning.lpi.org/en/learning-materials/102-500/107/107.2/107.2_01/#_configure_access_to_job_scheduling
If neither of these files exist, the user’s access to cron job scheduling depends on the distribution used.
一応 MIRACLE LINUX の man 1 crontab では「POSIXに準拠している」とあったので、
POSIXを見てみると、以下のようにありました:(最新 POSIX:2008-2018)
https://pubs.opengroup.org/onlinepubs/9699919799/utilities/crontab.html
If neither file exists, only a process with appropriate privileges shall be allowed to submit a job.
「どっちのファイルもない場合は、適切な権限を持ったプロセスだけがジョブ登録できますよ」
それからUbuntu(Debian系)については以下に記述があります。
https://help.ubuntu.com/community/CronHowto#Allowing.2FDenying_User-Level_Cron
In the case where neither file exists, the default on current Ubuntu (and Debian, but not some other Linux and UNIX systems) is to allow all users to run jobs with crontab.
No cron.allow or cron.deny files exist in a standard Ubuntu install, so all users should have cron available by default, until one of those files is created. If a blank cron.deny file has been created, that will change to the standard behavior users of other operating systems might expect: cron only available to root or users in cron.allow.
「どっちのファイルもない場合は、(ほかの Linux とか UNIX とは違って)Ubuntu とか Debian では全ユーザが利用できます」
特に「that will change to the standard behavior users of other operating systems might expect(他のOSのユーザーが期待する標準的な動作に変更されます)」
を読む限りでは、標準的な動作とは異なるってことになるのかなと理解しました。
長くなりましたが、まとめると(個人的な理解で恐縮ですが)、
/etc/cron.allow、/etc/cron.deny の両方がない場合は、
標準(POSIX)の動作としては root だけが利用できる。
ただし Debian系(Ubuntuなど)では全ユーザが利用できる という例外もある。
ということでしょうか。出題時にどんな条件や選択肢で出題されるかがポイントかもです。
最新の事情などはわからないので、講習会の講師のかたに質問できるようでしたら是非してみていただきたいです。。
「ゾーンファイルの先頭から SOA レコードの前までに記載した $TTL は~」のところがこの設問のポイントで、
「(もしも)ゾーンファイルの先頭に$ORIGINディレクティブが記載されている場合~」のくだりは補足説明ですね。
仰る通り設問には $ORIGIN の記述がないので、SOA レコードが書かれている2行目よりも前、
つまり①の場所に $TTL がなければいけないという説明なのだと思います。
sshパッケージ「へ」依存している なので、
sshパッケージが依存されている = sshの被依存パッケージ ということで showpkg でよいかなと思います。
depends は ssh パッケージ「が」依存している方ですね。
「前」って日本語が「先(前方)」と「戻る」の両方の意味を持ってるのがややこしいですね。
LPIC含めて英語系の試験やコマンドの仕様では
前= 戻る は previous や back、
次= 先 は forward や next
の傾向な気がします。
Kali Linuxで実行しましたが、正答の通りの結果でした。
for f in file*
で、"file" で始まるファイルのみを抽出しているので
test01.txt と test02.txt は出力されないと思いますが、いかがでしょうか。
「umask 011」の場合はファイルは「666」になります。
$ umask 011
$ umask
0011
$ touch file
$ mkdir dir
$ ls -l
合計 12
drwxrw-rw- 2 guest guest 4096 12月 4 21:16 dir
-rw-rw-rw- 1 guest guest 0 12月 4 21:15 file
011は「1」つまり「x(実行権)」にマスクをかけるという意味です。
ファイルの場合、デフォルトのパーミッションが「666」で既に実行権(x)が立っていませんので見た目は変わりません。
ディレクトリの場合はデフォルトが「777」なので、実行権(x)にマスク値011をかけると「766」になります。
単純な数字の引き算ではないというところは注意が必要かもしれませんね。
file: 666[rw-rw-rw-] に 011[-----x--x] をマスク → 【rw-rw-rw-】666
dir : 777[rwxrwxrwx] に 011[-----x--x] をマスク → 【rwxrw-rw-】766
dpkgの-Gと-Eは同じく苦戦しました。
↓こちらの覚え方がインパクトあって私は参考になりました。
https://thcom.hatenablog.com/entry/2013/06/19/234209
targetの変更はisolateサブコマンドで行うのかもしれませんが、
この問題では「何が起こるか」なので、コマンドを実行したときに起きる事象として誤ってないように思えます。
ちなみに systemctl の man には記述のあるコマンドなので出題されないとも言いきれない気はしますね。
(systemctl(1)からの抜粋です)
poweroff
Shut down and power-off the system. This is mostly equivalent to start poweroff.target --irreversible, ...
たぶんですが、すぐ上の誤答解説がそのまま当てはまるんじゃないかなと思います。
106.185.48.114 の問合せ結果が reach 12 = 00 001 010 なので、
連続して成功してない = 安定していない =
取得元サーバである 145.174.168.164 も安定していない
ということなのではないかなと思います。
質問の意図を読み違えてたら申し訳ないですが。。
sshコマンドでオプションを指定する方法には3つあって、
sshコマンドは、以下の順で取得した設定に基づいて動作します。
- コマンドラインオプション
- ユーザ毎の設定ファイル(~/.ssh/config)
- システム全体の設定ファイル(/etc/ssh/ssh_config)
問題15769では 1 の方法(-o IdentityFile=~/mykey~)で、
参考では 2 の方法(IdentityFile ~/.ssh/~)で
指定しているということではないでしょうか。
これは「$1"0" $1"1"」と解釈されるためで、$1には何も値が入っていないので文字としての「0 1」だけが表示されることになります。
本当は $10 は "$10"、$11 は "$11" として解釈してほしいところを、ブレース{} で囲っていないと
$10 → $1 と 文字"0"
$11 → $1 と 文字"1"
で分解して解釈されちゃうので、
$10 → $1(引数がないので空) と 文字"0" = 文字"0" だけ出力される
$11 → $1(引数がないので空) と 文字"1" = 文字"1" だけ出力される
ってことだと思います。
ちなみに同条件で「$100」を出力してみたら、「$1 と 文字"0" と 文字"0"」で解釈されて "00" が出力されました。
いらないようです。入れないのが通例みたいですね。
https://www.wantanblog.com/entry/2021/01/15/224451#lprコマンド
https://cns-guide.sfc.keio.ac.jp/2001/12/2/2.html#SECTION013221000000000000000
とはいえスペース入れてもコマンドがエラーになるわけじゃなかったので、スペース有り無しどっちでも受け付けてるようです。
問題文の中のコマンドの意味はOKですかね?
ssh -L 80:localhost:80 web.example.com
ローカルのポート80に接続したとき、たとえばブラウザで
http://localhost:80 などとアクセスすると、web.example.com:80 へポートフォワーディングされるようにしますよってコマンドです。
これはつまり
「localhost:80 →→ [SSH暗号化接続(転送)] →→ web.exapmle.com:80」ということになるので、
「ローカルホストにアクセスすると(web.example.com:80への接続が)暗号化される」
「web.example.comに直接アクセスすると暗号化されない」
てことになるんじゃないかなと思います。
参考にある1つ目の絵と説明が理解の助けになるかもです~。
一緒ではないですね〜
「大文字アルファベット以外の文字(小文字アルファベットなど)を含む行を表示する」は、
大文字アルファベットが含まれていたとしても小文字アルファベットや記号、数字を含む行を抽出してしまうので、解説にある通り「grep [options] PATTERN [FILE...]」とかが引っかかっちゃいます。
「大文字アルファベットを含まない行」は↑の行を抽出したくないので、ダメってことになります。
takenoko@hoge.com:転送先①,転送先②,・・・
別名=転送先に転送する元のメール?(上記の例でいうと”takenoko@hoge.com”)っていう認識で正しいでしょうか?
正しいと思います。
転送先①と転送先②の別名が、takenoko@hoge.com ってことですね。
ちなみに aliase っていうのが別名という意味です。
ここでいう別名は「転送先へ届けるための別名」と考えると理解しやすいかもです。
求めていらっしゃる情報かはわかりませんが、
User-Password と Cleartext-Password で検索するとこんな感じのが引っかかりました。
https://freeradius.org/radiusd/man/rlm_pap.txt
NOTES
It is important to understand the difference between the User-Password
and Cleartext-Password attributes. The Cleartext-Password attribute is
the "known good" password for the user. Simply supplying the Cleart-
ext-Password to the server will result in most authentication methods
working. The User-Password attribute is the password as typed in by
the user on their private machine. The two are not the same, and
should be treated very differently. That is, you should generally not
use the User-Password attribute anywhere in the RADIUS configuration.
関連して、個人のかたのブログですがこちらも参考までに。
https://kgbu.hateblo.jp/entry/20080616/1213599351
(こちらは別のご質問の := の件の参考になるかもしれません)
リダイレクト演算子の数え方ですかね。
「>」「<」「>>」「<<」全部 1つの演算子です。
"cat file >> hoge" は 演算子「>>」の1つだけ、
"cat < file >> hoge" は 演算子「<」「>>」を2つ使っている、
という考え方だと思います。
それから追記の件はこちらが参考になるかもです。
https://milestone-of-se.nesuke.com/sv-basic/linux-basic/wildcard-regular-expression/#toc3
「.」は正規表現の任意の一文字で、
問われているのはLinuxシェルで利用するメタキャラクタ(ワイルドカード)の方なので、
「?」で正解なんじゃないかなあと思います。
オフセットというのは、仰る通り「基準との差」で、
基準からいくつ離れているか という相対的な位置を表すのに利用しますね。
例でいうとWikipediaのこちらが参考になるかもしれません。
https://ja.wikipedia.org/wiki/オフセット_(コンピュータ)
abcdef を格納する文字の配列Aがある場合、文字 'c' を含む要素は、Aの先頭からの2のオフセットを持つと表すことができる。
こんにちはー
MIB というのはデータ構造の規格のことです。
ツリー構造になっていて、SNMPなどでネットワーク機器の情報を管理するのに利用されているみたいです。
イメージは以下の「MIB情報とは何か」を見てみるといいかもです。
https://www.itmedia.co.jp/enterprise/articles/0705/21/news015.html
tcpdump -m ではMIBモジュールを読み込んでネットワーク機器の定義を読み取ることができますよ、ということのようですね。
Wireshark の例ですが、もしかしたらこちらが参考になるかもしれません。
https://zoe6120.com/2019/04/04/680/
こんにちは~
nc -l 8000 の "8000" っていうのはポート番号ですね。
-l オプションは、解説の表の通り Listen モードで起動するということなので、
「私はポート番号 8000 でクライアントからの接続待ちしてますよ」
ってことなのです。
つまり 8000 は重要ではないし、固定でもないのです。
(ただポート番号の範囲(~65535)外の数字を入力すると、そんなポート番号はないよって怒られます。)
簡易サーバを立ち上げたい → nc -l だぜ
というのが理解できてるかの確認の設問ですかね~
こんにちはー
この問題の場合、具体的なIPアドレスは大事ではないので読み取れなくてOKだと思います。
覚えとかなきゃいけないのは、
(1)ルーティングテーブルからエントリを削除するときの書式
ip route del アドレス/サブネット [via ゲートウェイ dev デバイス名] []内は省略可能
と、
(2)デフォルトルートの場合は、アドレス/サブネットとして「default」を指定できる
の2つのポイントかなーと思います。
つまり、デフォルトルートの削除は
「ip route del default アドレス/サブネット [via ゲートウェイdev デバイス]」
になる!ということを理解できてることが大事で、IPアドレスはなんでもいいのです。