読者です 読者をやめる 読者になる 読者になる

Anagura's.....

たまに書く

OS11.1

OS 講義 作業メモ

うわっ六ヶ月ぶりの更新だった!!

という訳でみんな大好きなOSの講義が始まったのでレポです. まずは1.3を終わらせた後にKVMに変換してhogehogeっていうところ.とりあえずやってみたので覚えている範囲でのlogです. あってるかどうかは解らないので参考程度が嬉しい.ちなみにminimuminstallなのでその辺からずれてる?かも. それと覚えてないところ(やったけど書いてない)があるかもしれないので…うん…間違ってても怒らないでね…

とりあえずどうにかしてvdiのイメージファイルをos.cr.あいいーに送っとこう。

まずVMイメージを変換.

$qemu-img convert -O qcow2 Fedora24.vdi /media/iscsi/hoge/foo/01.qcow2

次にvirshを呼び出してディレクトリとか作らないと行けないので

$ie-virsh define 01

するとディレクトリが生成される.mkdirすると権限がないとか言われるしsudoは使えないのね.

さっき変換したやつを /media/fcs/students/e15/e1557**/01.img あたりに持ってく. 多分defineしないとこのディレクトリ自体が存在していないはず.パスは調べて

その後

$ie-virsh  define students/e15/e155730/01.xml

だと思う.この辺の順序はうろ覚えなので確認して.出来なかったら一度undefineしてやり直すのも良い? 参考リンク1

忘れていた.起動しないと

$ie-virsh start 01

ただここでvirsh console 01しても引けないし,sshも出来ない. とりあえずipアドレスは振っときたいよねっていうことで

$virsh dumpxml students/e15/114514/01| grep “mac address”

するとMAC Addressが手に入るのでそれを使ってip申請. 一度ip申請出来ればローカルからssh出来るよ!やったね!

でやりやすくした後にconsole引きたいのでVM

$sudo vi /etc/default/grub

をして(えっ?VMsshの仕方が解らない? 学内ならどこでもいいから$ssh anagura@10.10.なんちゃらすると良いんじゃない?)

6行目あたりを

GRUB_*略*.lv=fedora_(defaultの数字:401とか?)/swap  console=ttyS0,115200n8"

になるように rhgb quietを消去+行末にconsole以降を付け加える. それで再読み込み

$sudo grub2-mkconfig -o /boot/grub2/grub.cfg

するとconsoleが引ける.やったね!

でここからはセキュリティ監査を受けるようの下準備

まずは

$adduser hogehoge(作りたいアカウント)

で監査用のユーザーを作る.ただパスワードが無いので root

$passwd hogehoge(設定したいアカウント)

でパスワードを作成.これがrootに上がれるパスになるっぽい 後は鍵をDLして

$rsync -avz  hogehgoe.pub(送りたいfile) hogehoge(送り先)@ipアドレス:~/

とでもすれば送れるはず. また、とりあえずsudo使えるようにrootで入って

$ visudo 
user ALL=ALL ALL(ここは適当)

してもらった後はいつもの処理だけどhogehogeアカウントで入り直して

$mkdir .ssh
$chmod 700 .ssh
$mv hogehgoe.pub authorized_keys
$chmod 600 authorized_keys &&mv authorized_keys .ssh 

当たりすれば良いはず.

次にsshでrootにログインを拒否りたいので

$sudo vi etc/ssh/sshd_config

して中の

 PermitRootLogin no 

に変更 ちなみにsudoしないとファイルの中身見れないので注意

ついでにpasswordで入られるのもやっかいなので

PasswordAuthentication no
ChallengeResponseAuthentication no

しとこうね.あっコメントアウトは外すなり別行で作るなりしよう

つぎにfirewallの設定だけど,とりあえず

$sudo firewall-cmd --list-all

で今の動いている奴らの確認をする.ただ動いてるって行ってても動いてない(矛盾)の時があるので

$sudo systemctl status http(ターゲット名)

とかして確認しとこう.ちなみにこのへんはsudoじゃないと見れない出来ないドラゲナイ.つらい.suしてrootになっとくのも手か.

webpageなんで必要なのはdhcp,http sshぐらい.mdnsはdnsっぽいけど別にいらない.

消し方は

$sudo  firewall-cmd --remove-service=https --permanent

すれは出来るはず. ダメそうだったらゾーンが関係しているかも--zoneしてなんか指定すれば良い

そしてこれを再読み込み

$firewall-cmd --reload

ただdefault設定が影響するので詳しくはぐぐってくれ(丸投げ) この辺とか見れば良さそう

で次は

$sudo visudo

して

 Defaults    passprompt = "[sudo] <%U@%h> Enter %u's password:" 

をsudo許可した部分の後に(Alow user?)らへんにいれる.

次に不必要なユーザーをログイン出来なくする.

$sudo vi /etc/passwd

するとユーザー一覧が手に入るのでその中で shutdown:x:6:0:shutdown:/sbin:/sbin/nologin 的にいらなそうなの(halt)とかを/sbin/nologinにシェルを変えとく.

次にリモートユーザーがsshだけ出来る.しかも学内から限定にしたいので まず

$sudo vi /etc/hosts.allow

して行末に

sshd:133.13.
sshd:10.
ALL:127.0.0.1

とかしてみるといいと思う.ちなみに上ふたつは学内のアレ.

で,他ユーザーをブロックするので

$sudo vi /etc/hosts.deny

して

ALL:ALL

を付け加える.

ほいでdnfのautoupdateは これとかここでも参考にしてくれ.

ここまですれば多分OKかな. 無事アドレスゲットしてwordpressが開けないのはDBの影響なので ここの通りに直すと良い.名前はwordpress。記事が開けないのはURLに日本語が有るから. wordpress開けたら管理画面からアドレスの設定とかパーマリンク設定で日本語が入らないようにとかもしとこう