KVMゲストOSがFreeBSDの場合のインストールとりあえず設定したい必要なこと

6 May 2024

KVMゲストOSがFreeBSDの場合のインストールとりあえず設定したい必要なこと

1.FreeBSDのインストール

1)isoファイルのダウンロード

ホストOSのブラウザから(このときは13.3が最新だった)、

http://ftp.freebsd.org/pub/FreeBSD/releases/amd64/amd64/ISO-IMAGES/13.3/

にアクセスし「FreeBSD-13.3-RELEASE-amd64-bootonly.iso」をダウンロードする

2)仮想マシンマネージャーを起動して、FreeBSDのisoを指定しインストールを行う(自分の場合)

メモリの容量→3G

CPU数の設定→1

ストレージの容量→300G

キーボードの設定→JP106を選択

ホスト名の設定→www

パーティションの設定→デフォルト選択

ネットワーク設定→Yes

固定IPアドレス設定を選択

「ネットワーク設定の確認」画面で確認後にOK

ディスク領域:Auto(UFS)

パーティション:GPT

タイムゾーンの設定→ 「Asia」→「Japan」

2.ユーザーグループの設定してsudo君を使えるようにする

1)一般ユーザを追加あるいは現時点のユーザーをwheelグループへ追加する→hogehoge(wheelグループに追加)

[mity@hogehoge /] # pw groupmod wheel -m hogehoge

sudo君の詳細は、 https://www.kozupon.com/ura-site/blog/project-neta6 で公開中

3.OpenSSHの設定

1)ダイレクトにrootログインを禁止する設定

[mity@hogehoge /] # vi /etc/ssh/sshd_config

Port xxxxx

Protocol 2

PermitRootLogin no

PasswordAuthentication yes

PermitEmptyPasswords no

4.NW設定(手動で固定IPを設定する)

[mity@hogehoge /] # vi /etc/rc.conf

hostname="www"

domainname="example.com"

ifconfig_vtnet0="inet 192.168.0.201 netmask 255.255.255.0"

defaultrouter="192.168.0.1"

sshd_enable="YES"

dumpdev="AUTO"

ntpd_enable="YES"

ntpd_program="/usr/sbin/ntpd"

ntpd_config="/etc/ntp.conf"

apache24_enable="YES"

apache24_http_accept_enable="YES"

mysql_enable="YES"

named_enable="YES"

syslogd_flags="-4 -n -a :"

iplog_enable="YES"

[mity@hogehoge /] # ifconfig

vtnet0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500

    options=6c07bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,VLAN_HWTSO,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>

    ether 52:54:00:c2:90:4d

    inet 192.168.0.201 netmask 0xffffff00 broadcast 192.168.0.255

    media: Ethernet 10Gbase-T

    status: active

    nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>

    lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384

    options=680003<RXCSUM,TXCSUM,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>

    inet6 ::1 prefixlen 128

    inet6 fe80::1%lo0 prefixlen 64 scopeid 0x2

    inet 127.0.0.1 netmask 0xff000000

    groups: lo

    nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>

4.パッケージをすべて最新にする

※ソフトウェアのインストールには、パッケージ管理ツールpkgを使用

1)pkgのバージョン

[mity@hogehoge /] # pkg info pkg

pkg-1.15.10

Name     : pkg

Version    : 1.15.10

2)リモートリポジトリデータベースをアップデート

[mity@hogehoge /] # pkg update

3)インストールされているパッケージのバイナリアップデート

[mity@hogehoge /] # pkg upgrade

4)その他

[mity@hogehoge /] # pkg update -f

■ リポジトリのカタログのダウンロードを強制

[mity@hogehoge /] # pkg search

■ リモートデータベースをパッケージ検索

[mity@hogehoge /] # pkg info

■ インストールされているパッケージに関する情報を表示

[mity@hogehoge /] # pkg delete

■ パッケージのアンインストール

[mity@hogehoge /] # pkg clean

インストール時に発生するパッケージキャッシュの消去

5.シェルを変更する

1)現在のshell確認

cシェルだったらBシェルをインストールする(これは自分の場合cシェルが良ければそのままにしておく)

[mity@hogehoge /] # echo $SHELL /bin/csh

2)bashインストール

[mity@hogehoge /] # pkg install bash

3)各ユーザのshellをbashに変更する

[mity@hogehoge /] # chsh -s /usr/local/bin/bash chsh: user information updated

[mity@hogehoge /] # chsh -s /usr/local/bin/bash hogehoge chsh: user information updated

[mity@hogehoge /] # chsh -s /usr/local/bin/bash yotaro chsh: user information updated

6.locate インストールとDB更新

1)インストール

[root@sub3 /]# pkg install plocate

Updating FreeBSD repository catalogue...

FreeBSD repository is up to date.

All repositories are up to date.

The following 1 package(s) will be affected (of 0 checked):

New packages to be INSTALLED:     plocate: 1.1.19_1

Number of packages to be installed: 1

122 KiB to be downloaded.

Proceed with this action? [y/N]: y

[1/1] Fetching plocate-1.1.19_1.pkg: 100% 122 KiB 125.2kB/s 00:01

Checking integrity... done (0 conflicting)

[1/1] Installing plocate-1.1.19_1...

===> Creating groups.

Creating group 'plocate' with gid '860'.

[1/1] Extracting plocate-1.1.19_1: 100%

2)locateDB更新

[mity@hogehoge /] # /usr/libexec/locate.updatedb

WARNING

Executing updatedb as root. This WILL reveal all filenames

on your machine to all login users, which is a security risk.

3)実際に検索してみる

[root@sub3 /]# locate crontab

/etc/crontab

/usr/bin/crontab

/usr/ports/deskutils/goesimage/files/crontab.in

/usr/ports/devel/py-crontab

/usr/ports/devel/py-crontab/Makefile

/usr/ports/devel/py-crontab/distinfo

/usr/ports/devel/py-crontab/pkg-descr

/usr/ports/mail/courier/files/crontab.in

/usr/ports/security/acme.sh/files/acme-crontab.in

/usr/ports/sysutils/anacron/files/anacrontab.sample

/usr/ports/sysutils/fcron/files/fcrontab-operator

/usr/ports/sysutils/fcron/files/fcrontab-root

/usr/ports/sysutils/fcron/files/patch-doc_en_man_fcrontab.1

/usr/ports/sysutils/py-python-crontab

/usr/ports/sysutils/py-python-crontab/Makefile

/usr/ports/sysutils/py-python-crontab/distinfo

/usr/ports/sysutils/py-python-crontab/pkg-descr

/usr/share/man/man1/crontab.1.gz

/usr/share/man/man5/crontab.5.gz

/var/db/etcupdate/current/etc/crontab

7.ホスト名と名前解決

[root@sub3 /]# vi /etc/hosts

:1            localhost localhost.my.domain

127.0.0.1        localhost localhost.my.domain

192.168.0.1       router router@example.com

192.168.0.200     deb   deb@example.com

192.168.0.202     sub   sub@example.com

[root@sub3 /]# vi /etc/resolv.conf search       example.com

nameserver    192.168.0.1

nameserver    192.168.0.103

8.パッケージダウンローダーインストール

[root@sub3 /]# pkg install wget

9.TcpWrapperの設定

※FreeBSDは、hosts.deny は廃止されました。

詳細は下記、参考サイト

https://www.freebsd.org/doc/ja_JP.eucJP/books/handbook/tcpwrappers.html

1)hosts.allowのバックアップ保存

[root@sub3 /]# cp hosts.allow hosts.allow.20240506backup

[root@sub3 /]# vi /etc/hosts.allow

ALL : 127.0.0.1 : allow

ALL : 192.168.0. :allow

sshd : 192.168.0. :allow

sshd : localhost : allow

sshd : 202.231.70.76 :allow

ALL : ALL : deny

ALL : PARANOID : RFC931 20 : deny

ALL : localhost 127.0.0.1 : allow

ALL : [::1] : allow

10.NTPの設定

※FreeBSDではデフォルトで /usr/sbin/ntpd がインストール済み。

1)設定ファイル修正

[root@sub3 /]# vi /etc/ntp.conf

下記追加

server 210.173.160.27 iburst # ntp1.jst.mfeed.ad.jp

server 210.173.160.57 iburst # ntp2.jst.mfeed.ad.jp

server 210.173.160.87 iburst # ntp3.jst.mfeed.ad.jp

restrict 192.168.0.0 mask 255.255.255.0 noquery nomodify nopeer notrap

restrict source limited kod nomodify notrap noquery

2)起動設定追加

[root@sub3 /]# vi /etc/rc.conf

ntpd_enable="YES"

ntpd_program="/usr/sbin/ntpd"

ntpd_config="/etc/ntp.conf"

3)起動する

[root@sub3 /]# /etc/rc.d/ntpd start

Starting ntpd.

4)ntpqコマンドで確認

[root@sub3 /]# ntpq -p

  remote    refid   st t when poll reach  delay  offset  jitter

==============================================================================

0.freebsd.pool. .POOL.      16 p  - 64 0 0.000 +0.000 0.001

*ntp1.jst.mfeed. 133.243.236.17 2 u  1 64 1 25.174 +9.064 2.863

ntp2.jst.mfeed. 133.243.236.18 2 u  2 64 1 34.045 +6.494 7.530

ntp3.jst.mfeed. 133.243.236.19 2 u  1 64 1 21.078 +8.032 4.258

any.time.nl 133.243.238.243 2 u  1 64 1 123.204 -42.934 7.121

138.3.216.120 133.243.238.244 2 u 2 64 1 24.683 +6.477 8.191

103.202.216.35 210.173.160.57 3 u  1 64 1 26.146 +3.897 5.447

time.cloudflare 10.23.8.4     3 u  1 64 1 60.393 -4.381 4.725