こんにちは。
WBCが始まりましたね。
普段野球見ないけどこういうのだけ見るタイプの人間です。
お祭りだから許して。
さて、以前から自宅にWindowsのミニPCを常時起動させてNAS+バッチサーバ+Webサーバとして使っているのですが、WindowsUpdateに振り回されたり、OS自体が結構リソースを使っていることが気になっていたので、Linuxにお引越しをすることにしました。
最近はOS入りの省電力なPCが1万円台とか普通に買えてしまって良い時代だなと思います。
ちなみに詳しい解説ではなく、こんなことをしたというメモ程度なのでご了承を。
今回はOSのインストールと簡単な初期設定まで。
今回引っ越すもの
・NTFSフォーマットされた外付けHDDをNASとして利用しているもの
・MySQL
・.NET Framework(C#)で動いているバッチ処理(タスクスケジューラで定期実行)
・ASP.NET Core(C#)で動いているWeb画面(サービス化してスタートアップに登録)
・Apache HTTP Serverの静的ページ
ついでにできたらいいなと思っていること
・JavaやPythonやNode.jsなどを動かす環境
・cronじゃないジョブ管理システムの導入
・LAN外からのVPN接続(外出先からのNASアクセス等)
OSを入れ替える
PCはこれを買いました。
Windows11Proで8GB+256GBで1万円台。どうなってるんだ。すぐ壊れたりして。OSはUbuntuにしてみようかと思います。
インストール手順はこちらのページなどを参考にさせてもらいました。
color-code.net
ページの途中にある通り、Windows10以降だとOSからUSBブートにできるのでとりあえずセットアップ。
ついでに言うとメインのPCがまだWindows10なのでWindows11をちょっと触ってみようかなと思って。
でも普通にBIOSから起動したほうが手早いと思います。さようなら私の初めてのWindows11。
ざっくり
・Ubuntuをダウンロード
・起動用のUSBを作る
・USBから起動してインストール
ですね。
Ubuntuは結構UIがちゃんとしてるので、ポチポチしやすくてよい感じです。
デスクトップ画面とかもかっこいい。(でも多分ほとんどCUIしか使わなくなるんだろうな)
SSH接続できるようにする
ここからUbuntu上のターミナルで作業します。
UbuntuはDebian系なのでパッケージマネージャはaptですね。
$ sudo apt update $ sudo apt install openssh-server $ sudo systemctl status ssh ● ssh.service - OpenBSD Secure Shell server Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2023-03-09 23:47:54 JST; 14h ago Docs: man:sshd(8) man:sshd_config(5) Main PID: 818 (sshd) Tasks: 1 (limit: 9254) Memory: 6.3M CPU: 909ms CGroup: /system.slice/ssh.service mq818 "sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups" ~略~
ファイアウォールの設定
今のところLAN内で利用するだけなんですが、一応ファイアウォールを有効にしておきます。
SSHのポートだけは開けておかないと外から何もできないのでとりあえず追加。
ほんとはIP制限とかしたほうがいいかも。
$ sudo ufw status 状態: 非アクティブ $ sudo ufw allow 22 ルールを追加しました ルールを追加しました (v6) $ sudo ufw enable Command may disrupt existing ssh connections. Proceed with operation (y|n)? y ファイアウォールはアクティブかつシステムの起動時に有効化されます。 $ sudo ufw status 状態: アクティブ To Action From -- ------ ---- 22 ALLOW Anywhere 22 (v6) ALLOW Anywhere (v6)
(なんか微妙に英語と日本が混ざるのが気になる…)
はい、これでSSH接続できるようになったので、普段使っているPCからTeraTermとかでアクセス操作ができます。
ほんとはIP制限とかしたほうがいいかもしれないし、IPv6も気にしたほうがいいのかもしれない。
メモ
ちなみにhostnameコマンドでホスト名とかIPアドレスとかがわかるので、メモしておくとよいかも。
(その前にIPアドレス固定しておけという説もある)
$ hostname ubuntu-server $ hostname -i 127.0.1.1 $ hostname -I 192.168.11.17 172.18.0.1 ...(いっぱい出る)
そして忘れそうなのでufwコマンドメモ。
とりあえずこれだけ覚えればなんとかなる気がする。
# ファイアウォールの状態を確認 sudo ufw status # ファイアウォールの詳細状態を確認(削除の際はこの番号を見る) sudo ufw status numbered # 特定のポートを許可 sudo ufw allow 22 # TCP/UDPのみポートを許可 sudo ufw allow 22/tcp # IPを指定してポート許可 sudo ufw allow from 192.168.0.0/16 to any port 22 # アプリケーション指定でポート許可 sudo ufw allow OpenSSH # ルールの削除 sudo ufw delete 1
次回はNASとして使うためにSambaの設定をします。