ホーム » スタッフ » 斉藤徹 » Computer (ページ 3)

Computer」カテゴリーアーカイブ

2024年4月
 123456
78910111213
14151617181920
21222324252627
282930  

検索・リンク

Windows Terminal 1.8 公開

Windows Terminal 1.8 が正式公開となった。これで、

  • [Shift]+クリックで別ウィンドウで新しいターミナルを開くことができる。
  • [Alt]+クリックでは、タブ分割で新しいターミナルを開くことができる。

iPadのパスワードリセット

「貸出していた iPad が返却されたけど、パスワードが分からない…」との相談を受け、パスワードのリセット作業をお手伝い。

その方も、Web記事をみて試したけどダメだった様子。iPad 起動時に○○キーと○○キーを押しながら…との説明だけど、タブレットのケースのおかげで、押しづらい状況。まずはケースから取り出して、作業。それに、合わせ押すキーが機種によって違うので iPhone7, iPhone8, それ以降とかいろいろ試した。

途中、iMyFone lockwiper というソフト(有償)を使うと簡単と書いてあったので、ページを見ると「無料ダウンロード」と書いてあるし、お試し版が使えるかと試してみた。ただ、OSのイメージダウンロードとか時間かかるし、「イメージ解凍中」とか出てずっとまっても動かず、クリックしたら動き出す。ボタン「イメージ解凍開始」って表示にしろよ…。んで、長々と待っていざイメージ書き込み…とおもったら、この時点で「有償ソフトだから登録してね」の表示となる。そーゆー大切なことは最初に出せよ。時間の無駄だった。

自分自身の端末では、パスワード忘れでフルリセットしたことがないので、面倒だったとはいえいい経験だったかな。

「サイバー攻撃の手口と守り方」の準備

2/6(土)に「サイバー攻撃の手口と守り方~情報セキュリティ入門~」にて、CTFを中高生に体験してもらう準備のお手伝い中。

コマンドラインをたたいてもらう体験の部分は、クラウド上に準備した noVNC を使い、ブラウザさえあれば参加可能。問題は、以前 K-SEC 主催の CTF 問題から「いんすぱいぁ(≠ぱくった)」されて作った問題を少々。

基幹システムが停電で停止

1/29(Fri) 朝 08:30 から、学内ネットワークがつながらないとの連絡。

状況を確認すると、基幹システムの仮想マシンが落ちている様子。履歴からすると、夜中の02:30頃にUPSの警告が飛んでいる。

改めてシステムを起動するけど、基幹システムの全部が落ちているから、復帰にも時間がかかる。ようやく、9:35 になって DNS も起動し、無事復帰…と思われる。電源の状況は追って調査だけど、慌しかったし、ボチボチと確認だな。


macPortsからHomeBrewに

EVER/IPを卒研で使おうと福野さん,Krisさんと相談していたら、Macのunix環境は普通 HomeBrewでしょ…という話になって、今まで使っていたmacPortsをやめて HomeBrew に切り替え。

といっても、新しく入った M1 Macbook だったので、Universal アプリでインストールと、macPorts を入れたばかりだったけど。

sudo port install する macPorts と違い、通常ユーザ状態で brew install するのには違和感あったけど、ややこしいことするわけじゃなく、使い慣れたLinuxコマンドが使えればいいだけなので、特に拘らずに入れ替え。

爆音SW-HUBのFAN交換

以前、教室に設置するHUBとして業者さんが持ってきた Giga-SW-HUB だけど、冷却FANが余りにも爆音すぎて、交換となったのが長らく死蔵品になっていた。もったいないので静音FANに交換して、別に利用することにした。

コネクタ形状は同じだけど、電極順序が違っててハンダ付けしたけど、無事稼働。(FANなしで動かそうとも思ったけどFAN警告ランプがつくので何らかのFANは必要) 排気能力はガタ落ちだけど、自室で使う分にはそんなに流量ないし、発熱で早めに劣化で壊れても、死蔵品になっているよりはマシだろう。

{CAPTION}

{CAPTION}

MacPorts Big Sur 版コンパイル中

macOS の Big Sur を入れたけど、MacPorts が動かなくなっていた。丁度、CTFや構文解析の実験の最中で、いちいち自宅サーバなどに入って説明してたところ。1月ほど前には、まだ Big Sur 版が出てなかったけど、あらためて確認したら公開されていたので、早々に入れ直し。

最新の .pkg 版のインストーラで入れて、あとは、port selfupgrade ; port upgrade outdated で、ひたすら待つ。

Linux演習 – ファイル操作

Linux演習サーバへの接続

Unix(Linux)は、インターネットでのサーバとして広く活用されている。Linuxを試すには、Windows ならば WSL や Cygwin であったり、Mac でも使える仮想OSの VMware, VirrtualBox を使うこともでる。今回の演習では、全員が同じ環境で使うために、クラウド環境にサーバを準備した。クラウドのunixサーバを利用する場合には、リモートログインのための ssh が一般的である。

一方、教室のWiFi環境では、HTTP,HTTPS の通信しか使えないことから、ssh が通常利用できない。そこで、この演習では、特殊な使い方だが、HTTPS(443) ポートを使う。

Windows 10 ならば、cmd.exe , macOS ならば、ターミナルソフトを起動し、以下の操作を行う。

$ ssh -p 443 ゲストID@演習サーバ

ファイル操作の基本

まずは基本操作をしてみよう。ls コマンド(list) は、ディレクトリ内にあるファイルの一覧を表示する。cat コマンド(catalog)は、指定されたファイルの内容を表示する。

s53599xx@nitfcei:~$ ls
helloworld.c  Maildir  public_data  public_html

s53599xx@nitfcei:~$ ls -l
total 8
-rw-r--r-- 1 s53599xx students   76 Dec 21 14:30 helloworld.c
drwx------ 5 s53599xx students 4096 Dec 21 14:30 Maildir
(略)

s53599xx@nitfcei:~$ cat helloworld.c
#include <stdio.h>

int main() {
    printf( "Hello World\n" ) ;
    return 0 ;
}
s53599xx@nitfcei:~$

ファイルをコピーするには cp コマンド(copy)、不要なファイルを消すには rm コマンド(remove)を使う。

s53599xx@nitfcei:~$ cp helloworld.c test.c
s53599xx@nitfcei:~$ ls -l
total 8
-rw-r--r-- 1 s53599xx students   76 Dec 21 14:30 helloworld.c
drwx------ 5 s53599xx students 4096 Dec 21 14:30 Maildir
-rw-r--r-- 1 s53599xx students   76 Dec 21 14:40 test.c
(略)
s53599xx@nitfcei:~$ rm test.c
s53599xx@nitfcei:~$ ls -l
total 8
-rw-r--r-- 1 s53599xx students   76 Dec 21 14:30 helloworld.c
drwx------ 5 s53599xx students 4096 Dec 21 14:30 Maildir
s53599xx@nitfcei:~$

ファイル詳細表示の説明

ls -l で表示される詳細の内容は以下の通り。

属性 リンク数 所有者 グループ サイズ 日付 ファイル名
rw- r– r– 1 s53599xx students 76 Dec 21 14:30 helloworld.c
d rwx 5 s53599xx students 4096 Dec 21 14:30 Maildir
d -: 通常ファイル, d:ディレクトリ
rw- rwx 所有者が r:読み出し, w:書き込み, -: 権限なし
ファイルなら、x:実行可能
ディレクトリなら、x:ディレクトリに入れる
r – – – – – グループの rwx の属性 r– は 読み込みだけ許可
r – – – – – その他の rwx の属性  — は、読み書き禁止

基本的なファイル操作コマンド一覧

操作 Linux Windows
ディレクトリ一覧(list)
ディレクトリ詳細
ls 場所  ※
ls -l 場所
dir /w 場所  ※
dir 場所
※ 省略時はカレントディレクトリ
ファイル表示(catalog) cat 場所 type 場所
ファイルコピー(copy) cp コピー元 コピー先
cp コピー元 コピー先ディレクトリ
copy コピー元 コピー先
ファイル削除(remove) rm 場所 del 場所
ディレクトリ作成(make dir) mkdir 場所 md 場所
ディレクトリ削除(remove dir) rmdir 場所 rmdir 場所
カレントディレクトリ移動
(change directory)
cd 場所 cd 場所
ドライブの場合は
ドライブ名:
所有者を変更(change owner) chown 所有者 場所
グループを変更(change group) chgrp グループ 場所
属性を変更(change mode) chmod 属性 場所 ←属性の書き方

ワイルドカード文字

ls などのコマンドで、複数のファイルを対象とするとき、ワイルドカード文字が使える。

任意の1文字
?
(例)
$ ls          # 全部のファイル
aaa.c  ab.c    abc.c   bcd.c   defgh.c  hij.cxx
$ ls a?.c   # aで始まる2文字のC言語ファイル
ab.c
$ ls ???.c  # 3文字のC言語のファイル
aaa.c   abc.c   bcd.c
任意の文字
*
(例)
$ ls a*.c   # aで始まるC言語ファイル
aaa.c ab.c abc.c
$ ls *.cxx  # 拡張子が.cxxのファイル(C++)
hij.cxx

相対PATHと絶対PATH

ファイルの場所を指定するには、2つの方法がある。

絶対PATHは、木構造の根(ルートディレクトリ / で表す) からの経路のディレクトリ名を”/”で区切って書き連ねる。ルートディレクトリからの場所であることを示すために、先頭を / で始める。住所を /福井県/越前市/宮谷町/斉藤家 と書くようなもの。

相対PATHは、現在注目しているディレクトリ(カレントディレクトリと呼ぶ)からの経路を書く。住所でいうと、/福井県/越前市 に注目している状態で、宮谷町/斉藤家 と書くようなもの。

ただし、/福井県/福井市 に注目している状態で、片町/山本家 は1つのファイルでも、/福井県/福井市/片町/山本家 とは別に /石川県/金沢市/片町/山本家 があるかもしれない。

上記の絵であれば、/home/tsaitoh/helloworld.c を、相対PATHで書く場合、s53599xx の一つ上にさかのぼって場所を指定することもできる。一つ上のディレクトリ(親ディレクトリ).. (ピリオド2つ)

この場合、” $ cat ../tsaitoh/helloworld.c ” の様な相対PATHでもアクセスできる。

カレントディレクトリ自身を表す場合は、. (ピリオド1つ)を使う。

/home/s53599xx/helloworld.c の場所は、” $ cat ./helloworld.c ” と書くこともできる。

CTF風に演習

ここで、ディレクトリの場所の書き方が理解できたかを練習してみよう。

/home0/Challenge/1-CTF.d の下にフォルダがいくつかあり、その中にさらにファイルがある。このファイルの中には、FLAG{なんとか} と書いた部分がある。この「なんとか」の部分を速く見つけ出して答えよう。

上記フォルダには、5つの問題 Task1 , Task2 , Task3 , Task4 , Task5 がある。

Task2 , Task3 では、以下のコマンドを使う。(ヒントはTaskフォルダの0ReadMeを読め)

操作 Linux
ページャで表示(空白で次のページ,qで停止) more ファイルの場所
元に戻れるページャ(less) less ファイルの場所
多機能ページャ(文字コード判別) lv ファイルの場所
漢字コード変換 nkf ファイルの場所
nkf -j ファイル JISコードで表示
nkf -s ファイル Shift-JISコードで表示(Windows)
nkf -e ファイル EUCコードで表示
nkf -w ファイル UTF-8 で表示(Mac,Linux)

Task4 , Task5 には、難易度をあげるためのトリックがしかけてある。(ヒント 0ReadMe)

授業内レポート

  1. 自分でみつけられたフラグを以下の様に答えよ。(できた所までで良い)
    Task1 = FLAG{なんとか}
    Task2 = …
  2. Task1 で答えを見つけるまでに実行したコマンドとその途中結果を簡単にまとめよ。
    できれば、実行したコマンドを、相対PATH形式、絶対PATH形式で答えよ。
    $ cd /home0/Challenge/1-CTF.d/Task1
    $ ls
    0ReadMe  brain  concussion  persons

history コマンドは、過去に実行したコマンドを表示してくれる。

Error Establishing a Database Connection

びびった。

この WordPress で、特に何もしていないのに、「データベース接続の確立エラー」(Error Establishing a Database Connection)
が表示された。コレが出ると、データベースファイルが壊れたとかの場合が多くて、復旧に手間取る可能性が高い。

今回は、サーバに login して、MySQL の Restart だけで復帰した。

お仕事Macの確認

さすがに、iMac(2013)は、macOS Big Sur はムリだな。まあ追加アップデートだけはかかるようだけど。

当然ながら入れてみた

macPorts の入れ直しが必要だけど、まだ正式なのは出ていない様子。

でも、特に大きな問題はないかな。

システム

最新の投稿(電子情報)

アーカイブ

カテゴリー