annotate Paper/chapter/syskan-class.tex @ 23:8c6eb24536be default tip

update
author kiyama <e185758@ie.u-ryukyu.ac.jp>
date Fri, 16 Feb 2024 08:36:07 +0900
parents 7619de63c978
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
564982476950 一章を追加した
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents:
diff changeset
1 \chapter{演習科目での取り組み}
564982476950 一章を追加した
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents:
diff changeset
2
23
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
3 システム管理活動は2022年度から継続してシステム管理に参加する学生の確保や実践的なシステムの運用,構築に関するスキルを習得する事を目的として演習科目のテーマの1つ(以下よりサーバー班とする)になった.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
4 演習科目とは2024年度後期時点でエンジニアデザイン演習7組という科目名の授業で,「知能情報分野のより専門的な知識を習得することを目的とし、半年間を通じて、各テーマ(下記)から1つ選択し取り組む長期実験として実施される」とあり,様々なテーマの中から学生が一つ選択し履修する.\cite{syskan-class}
4
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
5 知能情報コースの三年次の学生を対象に前・後期で開講されており,1学年60名ほどでテーマ数が6つほどなので1テーマ当たり10名ほどの受講生がいる.
11
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
6 サーバー班では教育研究用情報システムの管理活動を体験する.
23
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
7 しかし現行システムは大規模で様々なサービスが稼働しており複雑である.そこでwebやネットワーク,セキュリティなどの管理活動ごとにグループを作成し,学生と指導員を割り振っての取り組みを行った.
4
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
8 以下にサーバー班全体での取り組みと各グループでの取り組みを示す.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
9
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
10 \section{サーバー班の取り組み}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
11 サーバー班で学生は基本的にzoomを使用した遠隔授業を通じて活動を行う.
23
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
12 説明や作業を行う際には教員,または学生の一人が画面共有を行い,それ以外の学生は必要に応じて作業ログを記載する形になっている.
4
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
13 作業ログやドキュメントは普段システム管理チームが使用しているプロジェクトに招待され,システム管理チームでのscrapboxの使い方の説明を受ける.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
14
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
15 授業の初回では,サーバー室の見学や管理しているシステムの説明,基幹サーバーへの接続設定や利用しているサービスへの招待などの設定を行う.
1
564982476950 一章を追加した
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents:
diff changeset
16
11
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
17 前期の授業では,システム管理活動でのオープンキャンパスへの出展があり,発表資料の作成,当日の発表を行った.
4
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
18 資料作成ではシステム管理チームの紹介,メリット,活動内容,管理しているシステムの構成図の作成などをまとめてポスターとして学科webに投稿した.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
19 当日の発表ではプロジェクタを用いてweb上のポスターを共有し参加者にシステム管理活動を説明した.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
20
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
21 後期の授業では,本コースの新入生を対象としたインストール大会の資料作成と当日の技術サポートを行った図\ref{fig:install}.本取り組みは新入生が入学後に学内活動を円滑に進める為に実施されている.これにはパソコンの初期セットアップや履修登録に必要な教務情報システムへのログイン,コース内の授業全般で使用するMattermostやZoom,プログラミング環境の構築などが含まれる.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
22 当日の技術サポートでは作業に躓いている新入生に対して個別で対応する.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
23
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
24 \begin{figure}[htpb]
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
25 \begin{center}
5
61ff8d827f08 考察追加
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 4
diff changeset
26 \includegraphics[clip,width=16.0cm]{fig/install-page.png}
61ff8d827f08 考察追加
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 4
diff changeset
27 \caption{インストール大会の資料.}
61ff8d827f08 考察追加
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 4
diff changeset
28 \label{fig:install-page}
4
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
29 \end{center}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
30 \end{figure}
1
564982476950 一章を追加した
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents:
diff changeset
31
564982476950 一章を追加した
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents:
diff changeset
32 \section{server班}
7
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
33 % サーバー班では基幹サーバー上の不具合の調査やその修正をおこなった.取り組みのいくつかを以下に示す.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
34 % \begin{quote}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
35 % \begin{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
36 % \item バックアップの修正\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
37 % \item KVMテンプレートイメージファイルの修正\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
38 % \end{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
39 % \end{quote}
1
564982476950 一章を追加した
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents:
diff changeset
40
7
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
41 % {\bf バックアップの修正}\\
6
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
42 学科システムでは障害が発生した際にデータを復旧できるようにrsnapshotを用いてバックアップを取っている.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
43 このバックアップは主にbraunからNAS上に対してとamaneからクラウドサーバーに対して取っている.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
44 NAS上にバックアップを取っているディレクトリとその役割を以下に示す.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
45 \begin{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
46 \item /etc
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
47 \begin{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
48 \item 設定ファイルが置かれているディレクトリ
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
49 \end{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
50 \item /mnt/cephfs
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
51 \begin{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
52 \item cephで同期しているディレクトリ
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
53 \item 学科webやKVMイメージなどが存在する
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
54 \end{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
55 \item /ie-ryukyu
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
56 \begin{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
57 \item braun上で稼働するコンテナの設定ファイルやマウントディレクトリが存在する
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
58 \end{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
59 \item /mnt/nvme0
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
60 \begin{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
61 \item 高速な読み書き可能なnvmeディスク
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
62 \item コンテナイメージやkvmイメージが存在する
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
63 \end{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
64 \item /usr/local
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
65 \begin{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
66 \item ローカルで管理するファイルが存在する
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
67 \end{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
68 \item ume:/mnt/ie-ryukyu/podman/mattermost/mattermost
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
69 \begin{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
70 \item クラウドサーバー上のMattermostの設定・マウントファイルが存在する
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
71 \end{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
72 \end{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
73 クラウドサーバーに対して取っているディレクトリとその役割を以下に示す.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
74 \begin{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
75 \item amane:/home
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
76 \begin{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
77 \item ユーザーのホームディレクトリが存在する
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
78 \end{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
79 \item amane:/ie-ryukyu/ie-web
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
80 \begin{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
81 \item 学科webページが存在する
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
82 \end{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
83 \item /mnt/ie-ryukyu/podman
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
84 \begin{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
85 \item クラウドサーバー上で稼働しているコンテナサービスの設定ファイルが存在する
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
86 \end{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
87 \item amane:/home/syskan/bkps/ldap-bkp
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
88 \begin{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
89 \item ldapのバックアップが存在する
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
90 \end{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
91 \end{itemize}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
92 % cephで管理されているディレクトリや学科web,生徒のホームディレクトリのバックアップをとっている.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
93 これまで様々な原因でバックアップが取れていないことがあった為,以前の修正から正常に動作しているかの確認を行った.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
94 braunからNASに取っているバックアップを確認した所,cronの設定ファイルにて\ref{braunrsnapshot}に示すようにバックアップが定期実行されていた.
11
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
95 このcronの設定ファイルから毎週土曜日の3:30にweeklyが設定されている事やrsnapshotの設定あフィルの場所が確認できた.rsnapshotの設定ファイルを確認すると以下のようにログファイルが/var/log/rsnapshot.logに,バックアップ先が/mnt/ts-nas/ie-ryukyu-bkpに取られていることが確認できた.\cite{rsnapshot.config}
6
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
96 \begin{lstlisting}[caption=cron.d,label=braunrsnapshot]
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
97 30 3 * * 6 root /usr/bin/rsnapshot -c /etc/rsnapshot-ie-ryukyu.conf weekly
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
98 \end{lstlisting}
1
564982476950 一章を追加した
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents:
diff changeset
99
6
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
100 \begin{lstlisting}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
101 config_version 1.2
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
102 snapshot_root /mnt/ts-nas/ie-ryukyu-bkp
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
103 cmd_cp /bin/cp
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
104 cmd_rm /bin/rm
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
105 cmd_rsync /usr/bin/rsync
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
106 cmd_ssh /usr/bin/ssh
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
107 cmd_logger /usr/bin/logger
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
108 retain weekly 4
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
109 retain monthly 12
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
110 verbose 4
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
111 loglevel 3
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
112 logfile /var/log/rsnapshot.log
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
113 lockfile /var/run/rsnapshot-ie-ryukyu.pid
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
114 ssh_args -p 1322
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
115 backup /etc localhost/
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
116 backup /mnt/cephfs localhost/
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
117 backup /ie-ryukyu localhost/
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
118 backup /mnt/nvme0 localhost/braun-nvme0
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
119 backup /usr/local localhost/
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
120 backup syskan@ume.ie.u-ryukyu.ac.jp:/mnt/ie-ryukyu/podman/mattermost/mattermost localhost/
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
121 \end{lstlisting}
11
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
122 これらの情報からバックアップファイルを確認するとweekly.0が作成されており,作成日時を確認すると先週作成されたことがわかった為,scrapboxにこれまでの作業と正常にバックアップがとられている事を記載した.\\
6
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
123 続いてクラウドサーバー上も同様に確認した所,cronでは週と月ごとにバックアップを取得する設定になっており,バックアップの保存先を確認すると最新のものでも作成日時が昨年の2022年9月で止まっていた.\ref{cloudbackup}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
124 \begin{lstlisting}[caption=クラウドサーバーのバックアップファイル一覧,label=cloudbackup]
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
125 drwxr-xr-x 6 root root 81 Mar 29 2022 monthly.11
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
126 drwxr-xr-x 6 root root 81 May 3 2022 monthly.10
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
127 drwxr-xr-x 6 root root 81 May 10 2022 monthly.9
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
128 drwxr-xr-x 6 root root 81 Jun 29 2022 monthly.8
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
129 drwxr-xr-x 6 root root 81 Aug 27 2022 monthly.7
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
130 drwxr-xr-x 6 root root 81 Sep 14 2022 daily.5
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
131 drwxr-xr-x 6 root root 81 Sep 15 2022 daily.4
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
132 drwxr-xr-x 6 root root 81 Sep 17 2022 daily.3
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
133 drwxr-xr-x 6 root root 81 Sep 19 2022 daily.2
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
134 drwxr-xr-x 6 root root 81 Sep 21 2022 daily.1
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
135 drwxr-xr-x 6 root root 81 Sep 22 2022 daily.0
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
136 \end{lstlisting}
11
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
137 また,ログファイルを確認すると「/mnt/ie-ryukyu/rsnapshot/daily.6 not present (yet), nothing to copy」とありdaily.6が存在しない事からweeklyが生成されていない為,手動でdaily.6のバックアップを作成する事でこの問題を解決した.
1
564982476950 一章を追加した
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents:
diff changeset
138
6
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
139 % {\bf KVMテンプレートイメージファイルの修正}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
140 % KVMを用いて計算機リソースの貸し出しを行う際に,四つある基幹サーバーで利用できるOSに差分があった.その為,OSのテンプレートファイルをceph上に置きそれぞれのサーバーで共有した上でie-virshから参照できるようにした.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
141
1
564982476950 一章を追加した
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents:
diff changeset
142
564982476950 一章を追加した
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents:
diff changeset
143 \section{security班}
23
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
144 セキュリティ班では学科システムへの脆弱性診断の構築を行った.システム更新前は脆弱性診断環境が設けられていたが,現在の学科システムにはそのような環境が存在しない.さらに,現在の基幹サービスがコンテナで配信されていることから,移行の容易さと管理のしやすさを考慮し,コンテナ環境での構築を行うこととした.基幹サーバーの中には,一台がグローバルIPを持つものがあり,学生が利用するVMについても,申請に応じてグローバルIPを付与することができる.そのため,サーバーのスキャンが可能なVulsを脆弱性診断ツールとして選択した.
1
564982476950 一章を追加した
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents:
diff changeset
145
11
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
146 基幹サーバー上のPodmanはコンテナ用のネットワークインターフェイスを作成し,コンテナにIPを紐づけるためにadmin権限が必要となる.
7
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
147 学科と同様の環境にする為,Ubuntu22.04のVMにPodman v4をインストールした環境で作業を行った.
11
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
148 Ubuntu22にPodmanをインストールする際にデフォルトのパッケージに登録されているPodmanはバージョン3系だった為,下記のようにPodman v4のリポジトリ情報をUbuntuのパッケージ管理ツールであるaptの管理下に追加した.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
149 その後,aptコマンドを使用してPodman v4のインストールを行った.
7
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
150 \begin{lstlisting}[caption=Podman v4リポジトリ情報追加,label=braunrsnapshot]
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
151 echo "deb https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/unstable/Debian_Testing/ /" | sudo tee /etc/apt/sources.list.d/devel:kubic:libcontainers:unstable.list
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
152 curl -L "https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/unstable/Debian_Testing/Release.key" | sudo apt-key add -
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
153 \end{lstlisting}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
154
11
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
155 Vulsの構築には公式ページ上のvulsctlを参考に行った\cite{vulsctl}.このプロジェクトにはshell commandやdocker用のスクリプトのみが存在した.その為,Podman用のスクリプトを作成しgitlabにて配布した.
7
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
156 vulsの構築では脆弱性データベースの取得とスキャン対象サーバーの接続情報,vlusサーバーの脆弱性データベースファイルへのパスを設定ファイルに記述を行った.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
157 図\ref{fig:vuls-tui}はamaneに対して脆弱性診断を行った時の様子である.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
158
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
159 \begin{figure}[htpb]
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
160 \begin{center}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
161 \includegraphics[clip,width=16.0cm]{fig/vuls-tui.png}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
162 \caption{vulsスキャン結果.}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
163 \label{fig:vuls-tui}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
164 \end{center}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
165 \end{figure}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
166
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
167 \section{考察}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
168 演習実験のサーバー班を受講した12名の学生にアンケートをとった.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
169 アンケートの内容は,受講前のシステム管理へのモチベーション,受講後のシステム管理への興味度合い,本テーマを受けての技術習得度,主体的に取り組んだか,授業形式の改善点,演習科目に対する自由意見の項目を挙げた.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
170 アンケートの項目とその結果を以下に示す.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
171
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
172 \begin{center}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
173 \begin{longtable}{|p{38em}|}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
174 \caption{演習科目でのアンケートの結果} \label{longtablesample} \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
175 \endhead
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
176 %begin{longtable}から\endheadまでが常に表頭に挿入される
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
177 %{1}は1列、{r}は右寄せの意
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
178 \hline \multicolumn{1}{|r|}{次のページへ続く。} \\ \hline
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
179 \endfoot
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
180 % lastfoot
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
181 % 表の一番最後に表示されます。
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
182 % 省略した場合はfootの内容が表示されます。
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
183 \hline \multicolumn{1}{|r|}{終了} \\ \hline
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
184 \endlastfoot
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
185
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
186 %/endheadの次の行から\endfootまでが常に表末に挿入される
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
187 設問1 演習科目のテーマの中でサーバー班を選択した理由を教えてください \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
188 \quad 1. セキュリティの講義を受けていたこともあり、興味があったから \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
189 \quad 2. ネットワークの運用やセキュリティについて学びたかった \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
190 \quad 4. セキュリティの講義を受けていたこともあり、興味があったから \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
191 \quad 5. ネットワークの運用やセキュリティについて学びたかった \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
192 \quad 6. サーバやセキュリティ関連の知識を得たかったため \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
193 \quad 7. 次は開発とかよりも基幹システムについて知りたいなと思ったから \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
194 \quad 8. OSの講義でシス管に興味を持ってサーバー班を選択しました \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
195 \quad 9. 実際に動いているシステムを色々見てみたかった \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
196 \quad 10. サーバーセキュリティについて興味があったから \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
197 \quad 11. インフラに興味があったから \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
198 \quad 12. kono先生の講義を受けたいと考えたため \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
199 \quad 13. 抽選漏れ \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
200 \\ \hline
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
201 設問2 本テーマに期待していたこと、やってみたかったことはありますか \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
202 \quad 1. セキュリティに関することを学ぶことを期待していました。\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
203 \quad2. 実際にネットワーク設備の設置をしてみたかった\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
204 \quad3. 他にもネットワークーサーバ系統の授業をいくつかとっていて、大元を学びたかったです。\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
205 \quad4.実機を使って何かやるのもいいと思う。(知識がなくて具体的な案が思い浮かばないけど)\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
206 \quad5.セキュリティ関連の知識の習得をしたかった\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
207 \quad6.脆弱性診断と学科システムについて\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
208 \quad7.コースシステムの運用など\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
209 \quad8.サーバー班やシス管の取り組み、作業の体験\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
210 \quad9.実際のケーブル設置やサーバーのセキュリティチェックなど\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
211 \quad10.工学部のネットワークがどのように構成されているのかを学びたかった。\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
212 \quad11.学科サーバに何かしらのシステムを組み込む。目標を決め、調査し、講義の中でインストールを行うなど。\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
213 \\ \hline
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
214 設問3 本テーマを通して管理活動に興味は湧きましたか?(興味を感じた理由、もしくは興味が湧かなかった理由を教えてください) \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
215 \quad 1. 管理活動に対しての興味は湧きましたが、実際どうかと言われるとあまりって感じです \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
216 \quad 2. 興味を感じたが確認する項目が多く大変そうに感じた。 \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
217 \quad 3. とても沸きました。サーバの重要性を改めて理解できましたし、他の授業と内容がつながって面白かったです。\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
218 \quad 4. 興味は湧かなかった。必要な知識、経験ではあるが自分がやりたいと思うものではなかった。\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
219 \quad 5. 工夫しながら利用しやすいものを作ろうとしていることが楽しそうだった。\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
220 \quad 6. 実際に自分が調査、観察することで現在のサーバーがどのような状態にあるのかを実感でき、興味が湧いた\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
221 \quad 7. 実際に使っている環境をいじれるのはすごい興味を持ちました。\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
222 \quad 8. 非常にハードルが高く、自分で学習時間を確保できなかったため、苦しく感じたため、管理活動に興味がわかなかった。\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
223 \\ \hline
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
224 設問4 本テーマを通してどのような技術習得に繋がりましたか? \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
225 \quad 1. vulsの構築にあたって、セキュリティに関する知識やコンテナに関する知識を少し得ることができた。\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
226 \quad 2. ファイヤーウォールの中身やブロードキャストストームの説明について学んだ。また、Mattermostの更新や管理について学べた。\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
227 \quad 3. サーバーの管理方法や脆弱性の検出\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
228 \quad 4. シェルコマンドの効率的な使い方や、学科でよく使われるシステムのsingularity, podmanの実用的な使い方\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
229 \quad 5. sshkeyの生成や登録、.ssh/configの設定方法、podmanの使用方法\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
230 \quad 6. 琉球大学のシステム管理についての技術だけでなく、他のサーバーについてのトラブルなどの対策や解決方法に関する技術取得に繋がりました。\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
231 \quad 7. 大学ページを手元で動かすことが多く、hugoのcontentとlayoutの対応や、themeなどについて知識習得につながった\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
232 \quad 8. サイトのファイル構成の構築\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
233 \\ \hline
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
234 設問5 本テーマで管理活動を行う際に工夫した点はありますか? \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
235 \quad 1. 私は主にVulsに関することを学んだため、サーバやWebサイトなどと言ったことはほぼやらなかったのですが、基本的にVulsに関しては自分がしたことをしっかりメモを取って、scrapboxにも残しておくということはしました\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
236 \quad 2. 言われたコマンドをただ打つだけでなく、どういう操作をしているかを調べながら実行した\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
237 \quad 3. わからないことは一度調べてみること\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
238 \quad 4. scrapboxなどを活用してとにかく記録に残すこと\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
239 \quad 5. 時間外にhugoやthemeについて調べたり、学科サーバー内のファイルなどをみて回った。\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
240
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
241 \\ \hline
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
242 設問6 モブプロ(zoomで画面共有して作業をおこなう)形式での授業について感想をお聞かせください \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
243 \quad 1. 私の場合は、自身が画面共有してる際にわからないことがあるとすぐに質問できるということがしやすかったです。\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
244 \quad 2. 画面は見やすかったが、作業のスピードが速く感じる時があった\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
245 \quad 3. 質問をするタイミングが難しかった。\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
246 \quad 4. zoomで操作している人と違う箇所でエラーが出た際にそれに対処するのが難しかった\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
247 \quad 5. 作業を見学している形だったので、どのようなコマンドを使用しているか、どのような作業をしているかなど、わからないことを手元で調べながら見ることができてよかった。\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
248 \quad 6. 画面共有者の進行度より自分の進行度が遅れると次の作業が分からず手が止まる。\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
249 \quad 7. オペレーター側が期待する動きのレベルがあまりわからなかったので、ドライバーをするのが怖かった。\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
250 \quad 8. 頻繁に共有をしたが、自分自身に知識が不足していたため、申し訳なく感じた。ただ、教授は私のような素人にもかなり初期段階の知識から指導していただきわかりやすかった。 \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
251 \\ \hline
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
252 設問7 本テーマを受講してみて改善して欲しい部分や難しかった点を教えてください \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
253 \quad 1. 「〇〇をしてみて」と言われた際、ほとんどがわからないことであったため、難しかった。\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
254 \quad 2. 今回、セキュリティ、サーバ(ネットワーク)、Webの3つのグループに分かれてやったのですが、1つに絞るのももちろんいいのですが、1〜2回ほどは他の(私の場合だとセキュリティ以外)分野も触れたかったです。\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
255 \quad 3. 作業中にエラー等で遅れが生じた場合の部屋が欲しい。(他の人が画面共有での作業の時)\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
256 \quad 4. 授業ごとにやることを決めるので大まかな内容を決めてた方が授業受けやすい\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
257 \quad 5. 授業の最初にこの授業では何をし、何がゴールなのかを示すことで授業ごとの満足感を上げられたのではないかと考える\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
258 \quad 6. 講義の中で難しいと感じた箇所について説明する時間をもう少し設けた方が良いと感じた。 \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
259 \\ \hline
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
260 設問8 演習科目(サーバー班)を受講しての感想や意見をお聞かせください \\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
261 \quad 1. サーバーの構成などの話はどうしても少し抽象的になることが多いので理解するのが難しかった\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
262 \quad 2. 使用するツールや環境の選定をする時の話が授業よりも実践的で楽しかった。\\
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
263 \\ \hline
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
264 \end{longtable}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
265 \end{center}
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
266
23
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
267 設問1,2ではシステム管理へのモチベーションを測った.これまでのシステム管理の取り組みでは有志の学生の集まりであった.今回は必修授業での取り組みだった為、システム管理活動に興味を持たない学生の割合が懸念点だった.しかし,選択した理由こそテーマの抽選漏れであれど,セキュリティ,ネットワークに関する知識習得を目的として受講している学生が大半であることがわかった.
7
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
268
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
269 設問3では受講後のシステム管理への興味度合いを聞いた.実際に稼働しているシステムを調査、管理することに興味をもつ学生がいる一方で内容についていく為の難易度が高く理解できずに興味が湧かなかったという学生が半数近くいた.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
270
23
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
271 設問4の技術習得について多くみられた感想は、授業内で扱った特定のサービスに関する知識習得だった.半期の授業での取り組みだった事やあくまでシステム管理の体験だった事から総合的な知識の獲得は難しいと思われる.一方でコースシステムだけでなく一般的なシステム管理の技術習得ができたという意見があり,総合的な知識を得られたことがわかる.この差として画面共有して作業する学生が固定化されていることが原因と考える.
7
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
272
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
273 設問5では、学生の自主性が確認できた.演習授業をモブプロ形式で進めた為,作業者以外の学生は実行しているコマンドを調査やsclapboxへのログの記述を行い積極的に行動していることがわかった.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
274
12
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 11
diff changeset
275 設問6は授業中に自主的に画面を共有して作業を行う学生が少なかったことから質問した.実際に作業者としての感想は少数であった.この要因として「オペレーター側が期待する動きのレベルがあまりわからなかったので、ドライバーをするのが怖かった。」とあるようにシステム管理に関する知識がない状態で画面共有しての作業の精神的な難易度の高さが上げられる.
7
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
276
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
277 設問7では取り組みの難易度が高いことに関するコメントが多数見られた.システム管理の作業は毎年同じ取り組みではなく,その時に発生した不具合やシステムの問題点からアプローチをかけていく.その為事前に資料を作り込むことが難しい.設問8では実践的な構築,管理の体験ができた事が挙げられた.
kiyama <e185758@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
278