fdiskコマンドを使ってrootパーティションを拡張
初期構成
リソース
CPU | 1 core |
メモリ | 2048 MB |
HDD | 20 GB |
パーティション
/dev/sda1 | 1 GiB | boot |
/dev/sda2 | 19 GiB | LVM |
LVMのボリュームグループ名は、「Vol00」としている。
# fdisk -l ディスク /dev/sda: 20 GiB, 21474836480 バイト, 41943040 セクタ単位: セクタ (1 * 512 = 512 バイト) セクタサイズ (論理 / 物理): 512 バイト / 512 バイトI/O サイズ (最小 / 推奨): 512 バイト / 512 バイトディスクラベルのタイプ: dos ディスク識別子: 0x0486444d デバイス 起動 開始位置 終了位置 セクタ サイズ Id タイプ /dev/sda1 * 2048 2099199 2097152 1G 83 Linux /dev/sda2 2099200 41940991 39841792 19G 8e Linux LVM ディスク /dev/mapper/Vol00-root: 17 GiB, 18245222400 バイト, 35635200 セクタ単位: セクタ (1 * 512 = 512 バイト) セクタサイズ (論理 / 物理): 512 バイト / 512 バイトI/O サイズ (最小 / 推奨): 512 バイト / 512 バイト ディスク /dev/mapper/Vol00-swap: 2 GiB, 2147483648 バイト, 4194304 セクタ単位: セクタ (1 * 512 = 512 バイト) セクタサイズ (論理 / 物理): 512 バイト / 512 バイトI/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
最終構成
パーティション
/dev/sda1 | 1 GiB | boot |
/dev/sda2 | 19 GiB | LVM |
/dev/sda3(New) | 追加容量(10 GiB) | LVM |
LVM構成
/dev/sda2 | Vol00 | root | 17 GiB |
/dev/sda2 | Vol00 | swap | 2 GiB |
/dev/sda3(New) | Vol00 | root | 10 GiB |
拡張していく
Virtual Box上でvdiファイルを「20 GB」→「30 GB」へ変更
パーティションを追加
# fdisk /dev/sda fdisk (util-linux 2.32.1) へようこそ。ここで設定した内容は、書き込みコマンドを実行するまでメモリのみに保持されます。書き込みコマンドを使用する際は、注意して実行してください。 コマンド (m でヘルプ): n パーティションタイプ p 基本パーティション (2 プライマリ, 0 拡張, 2 空き) e 拡張領域 (論理パーティションが入ります) 選択 (既定値 p): p パーティション番号 (3,4, 既定値 3): 3 最初のセクタ (41940992-62914559, 既定値 41940992): 最終セクタ, +セクタ番号 または +サイズ{K,M,G,T,P} (41940992-62914559, 既定値 62914559): 新しいパーティション 3 をタイプ Linux、サイズ 10 GiB で作成しました。
追加したパーティションのタイプを「LVM」へ変更
コマンド (m でヘルプ): t パーティション番号 (1-3, 既定値 3): 3 16 進数コード (L で利用可能なコードを一覧表示します): L 0 空 24 NEC DOS 81 Minix / 古い Li bf Solaris 1 FAT12 27 隠し NTFS WinRE 82 Linux スワップ c1 DRDOS/sec (FAT- 2 XENIX root 39 Plan 9 83 Linux c4 DRDOS/sec (FAT- 3 XENIX usr 3c PartitionMagic 84 隠し OS/2 また c6 DRDOS/sec (FAT- 4 FAT16 <32M 40 Venix 80286 85 Linux 拡張領域 c7 Syrinx 5 拡張領域 41 PPC PReP Boot 86 NTFS ボリューム da 非 FS データ 6 FAT16 42 SFS 87 NTFS ボリューム db CP/M / CTOS / . 7 HPFS/NTFS/exFAT 4d QNX4.x 88 Linux プレーン de Dell ユーティリ 8 AIX 4e QNX4.x 第2パー 8e Linux LVM df BootIt 9 AIX 起動可能 4f QNX4.x 第3パー 93 Amoeba e1 DOS access a OS/2 ブートマネ 50 OnTrack DM 94 Amoeba BBT e3 DOS R/O b W95 FAT32 51 OnTrack DM6 Aux 9f BSD/OS e4 SpeedStor c W95 FAT32 (LBA) 52 CP/M a0 IBM Thinkpad ハ ea Rufus alignment e W95 FAT16 (LBA) 53 OnTrack DM6 Aux a5 FreeBSD eb BeOS fs f W95 拡張領域 (L 54 OnTrackDM6 a6 OpenBSD ee GPT 10 OPUS 55 EZ-Drive a7 NeXTSTEP ef EFI (FAT-12/16/ 11 隠し FAT12 56 Golden Bow a8 Darwin UFS f0 Linux/PA-RISC 12 Compaq 診断 5c Priam Edisk a9 NetBSD f1 SpeedStor 14 隠し FAT16 <32M 61 SpeedStor ab Darwin ブート f4 SpeedStor 16 隠し FAT16 63 GNU HURD または af HFS / HFS+ f2 DOS セカンダリ 17 隠し HPFS/NTFS 64 Novell Netware b7 BSDI fs fb VMware VMFS 18 AST SmartSleep 65 Novell Netware b8 BSDI スワップ fc VMware VMKCORE 1b 隠し W95 FAT32 70 DiskSecure Mult bb 隠し Boot Wizar fd Linux raid 自動 1c 隠し W95 FAT32 75 PC/IX bc Acronis FAT32 L fe LANstep 1e 隠し W95 FAT16 80 古い Minix be Solaris ブート ff BBT 16 進数コード (L で利用可能なコードを一覧表示します): 8e パーティションのタイプを 'Linux' から 'Linux LVM' に変更しました。 コマンド (m でヘルプ): w パーティション情報が変更されました。ディスクを同期しています。
パーティションの確認
# fdisk -l ディスク /dev/sda: 30 GiB, 32212254720 バイト, 62914560 セクタ単位: セクタ (1 * 512 = 512 バイト) セクタサイズ (論理 / 物理): 512 バイト / 512 バイトI/O サイズ (最小 / 推奨): 512 バイト / 512 バイトディスクラベルのタイプ: dos ディスク識別子: 0x0486444d デバイス 起動 開始位置 終了位置 セクタ サイズ Id タイプ/ dev/sda1 * 2048 2099199 2097152 1G 83 Linux /dev/sda2 2099200 41940991 39841792 19G 8e Linux LVM /dev/sda3 41940992 62914559 20973568 10G 8e Linux LVM ディスク /dev/mapper/Vol00-root: 17 GiB, 18245222400 バイト, 35635200 セクタ単位: セクタ (1 * 512 = 512 バイト) セクタサイズ (論理 / 物理): 512 バイト / 512 バイトI/O サイズ (最小 / 推奨): 512 バイト / 512 バイト ディスク /dev/mapper/Vol00-swap: 2 GiB, 2147483648 バイト, 4194304 セクタ単位: セクタ (1 * 512 = 512 バイト) セクタサイズ (論理 / 物理): 512 バイト / 512 バイトI/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
物理ボリュームの作成
# pvcreate /dev/sda3 Physical volume "/dev/sda3" successfully created.
物理ボリュームの確認
# pvdisplay --- Physical volume --- PV Name /dev/sda2 VG Name Vol00 PV Size <19.00 GiB / not usable 2.00 MiB Allocatable yes PE Size 4.00 MiB Total PE 4863 Free PE 1 Allocated PE 4862 PV UUID sU2vQa-SoUU-Cd7t-m7TR-ZpYW-6u2Y-8hB9eA "/dev/sda3" is a new physical volume of "10.00 GiB" --- NEW Physical volume --- PV Name /dev/sda3 VG Name PV Size 10.00 GiB Allocatable NO PE Size 0 Total PE 0 Free PE 0 Allocated PE 0 PV UUID RRcPqB-nlx2-iCEK-B6oX-VVRm-QqDY-AuqKi3
HDDの追加容量が「/dev/sda3」として追加されたことを確認できた。
ボリュームグループの拡張
# vgextend Vol00 /dev/sda3
Volume group "Vol00" successfully extended
物理ボリュームの確認
# vgdisplay --- Volume group --- VG Name Vol00 System ID Format lvm2 Metadata Areas 2 Metadata Sequence No 4 VG Access read/write VG Status resizable MAX LV 0 Cur LV 2 Open LV 2 Max PV 0 Cur PV 2 Act PV 2 VG Size <29.00 GiB PE Size 4.00 MiB Total PE 7423 Alloc PE / Size 4862 / 18.99 GiB Free PE / Size 2561 / 10.00 GiB VG UUID X7qL1F-MtQy-yFh9-KnMY-lD3q-vjFp-25eeXw
Free領域として「10GiB」が追加されたことが確認できた。
論理ボリュームの拡張
論理ボリュームのパスを確認
# lvdisplay --- Logical volume --- LV Path /dev/Vol00/root LV Name root VG Name Vol00 LV UUID V7rXfc-Ms9B-BA3Q-KIAb-fH9I-H8yd-Nd0Zd9 LV Write Access read/write LV Creation host, time localhost.localdomain, 2023-05-21 00:07:40 +0900 LV Status available # open 1 LV Size 16.99 GiB Current LE 4350 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 8192 Block device 253:0 --- Logical volume --- LV Path /dev/Vol00/swap LV Name swap VG Name Vol00 LV UUID eMyjAZ-I0R1-2573-7nNv-FX77-I3jW-bOitZt LV Write Access read/write LV Creation host, time localhost.localdomain, 2023-05-21 00:07:41 +0900 LV Status available # open 2 LV Size 2.00 GiB Current LE 512 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 8192 Block device 253:1
今回、拡張するのは「/dev/Vol00/root」
論理ボリュームを拡張
# lvextend -l +100%FREE /dev/Vol00/root Size of logical volume Vol00/root changed from 16.99 GiB (4350 extents) to <27.00 GiB (6911 extents). Logical volume Vol00/root successfully resized.
論理ボリュームの確認
# lvdisplay /dev/Vol00/root --- Logical volume --- LV Path /dev/Vol00/root LV Name root VG Name Vol00 LV UUID V7rXfc-Ms9B-BA3Q-KIAb-fH9I-H8yd-Nd0Zd9 LV Write Access read/write LV Creation host, time localhost.localdomain, 2023-05-21 00:07:40 +0900 LV Status available # open 1 LV Size <27.00 GiB Current LE 6911 Segments 3 Allocation inherit Read ahead sectors auto - currently set to 8192 Block device 253:0
ルートファイルシステムの拡張
今回、ルートファイルシステムは「xfs」なので「xfs_growfs」コマンドを使う。
# xfs_growfs /dev/Vol00/root meta-data=/dev/mapper/Vol00-root isize=512 agcount=4, agsize=1113600 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=1, sparse=1, rmapbt=0 = reflink=1 bigtime=0 inobtcount=0 data = bsize=4096 blocks=4454400, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0, ftype=1 log =internal log bsize=4096 blocks=2560, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 data blocks changed from 4454400 to 7076864
最終確認
# df -h ファイルシス サイズ 使用 残り 使用% マウント位置 devtmpfs 968M 0 968M 0% /dev tmpfs 987M 0 987M 0% /dev/shm tmpfs 987M 8.5M 978M 1% /run tmpfs 987M 0 987M 0% /sys/fs/cgroup /dev/mapper/Vol00-root 27G 2.0G 26G 8% / /dev/sda1 1014M 153M 862M 16% /boot tmpfs 198M 0 198M 0% /run/user/0
Arch Linux インストールしてみよう
Arch ISO のダウンロード
Arch Linux のインストール
キーボードの設定
# loadkeys jp106
パーティショニング
パーティション設定をするディスクを確認する
# lsblk
パーティションの構成
用途 | 容量 | file system | mount point |
---|---|---|---|
ESP | 512MiB | FAT32 | /boot |
スワップパーティション | 1GiB | SWAP | swap |
ルートパーティション | 残り全部 | ext4 | / |
[gdisk]コマンドにて「GPT」を操作
# gdisk /dev/sda GPT fdisk (gdisk) version 1.0.7 Partition table scan: MBR: not present BSD: not present APM: not present GPT: not present Creating new GPT entries in memory. Command (? for help): o This option deletes all partitions and creates a new protective MBR. Proceed? (Y/N): y Command (? for help): n Partition number : 1 First sector: (未入力でエンター) Last sector: +512M Hex code or GUID: ef00 (UEFIブート用なのでef00) Command (? for help): n Partition number: 2 First sector: (未入力でエンター) Last sector: +1G Hex code or GUID: 8200 (swap用なので8200) Command (? for help): n Partition number: 3 First sector: (未入力でエンター) Last sector: (未入力でエンター) Hex code or GUID: (未入力でエンター) Command (? for help): w Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING PARTITIONS!! Do you want to proceed?: y OKls; writing new GUID partition table (GPT) to /dev/sda. The operation has completed successfully.
パーティションの確認
# lsblk
ファイルシステムの作成
# mkfs.vfat -F32 /dev/sda1 # mkswap /dev/sda2 # mkfs.ext4 /dev/sda3
ファイルシステムのマウント
作成したファイルシステムを「/mnt」ディレクトリ配下にマウントする
※"ブートパーティション"をマウントする前に"ルートパーティション"をマウントする必要がある
# mount /dev/sda3 /mnt # mkdir /mnt/boot # mount /dev/sda1 /mnt/boot
パッケージをインストール
# pacstrap /mnt base base-devel linux linux-firmware grub dosfstools efibootmgr netctl networkmanager dialog xfsprogs vi vim
fstabを作成
# genfstab -U /mnt >> /mnt/etc/fstab
arch-chrootの実行
# arch-chroot /mnt /bin/bash
Locale設定
"/etc/locale.gen"ファイルの編集
# vim /etc/locale.gen ... en_US.UTF-8 UTF-8 (コメントアウトを解除) ... ja_JP.UTF-8 UTF-8 (コメントアウトを解除) ...
「locale」の生成
# locale-gen
環境変数を設定
# echo "LANG=en_US.UTF-8" > /etc/locale.conf # export LANG=en_US.UTF-8
タイムゾーンを設定
# ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime # hwclock --systohc --utc
ホスト名の編集
"/etc/hostname"ファイルへの書き込み
# echo "ホスト名を入力" > /etc/hostname
"/etc/hsots"ファイルの編集
# vim /etc/hosts 127.0.0.1 localhost.localdomain localhost "ホスト名" ::1 localhost.localdomain localhost "ホスト名"
rootユーザのパスワード設定
# passwd
再起動
# exit # shutdown -r now
IPアドレス設定
[NetworkManager]を起動、永続化させる
# systemctl start NetworkManager.service # systemctl enable NetworkManager.service
ユーザの追加
# useradd -m -G wheel -s /bin/bash test_user
Ubuntu Server で OpenVPNサーバを構築する
- はじめに
- パッケージのインストール
- OpenVPN Server
- OpenVPN Client
- OpenvpnサーバでIPフォワーディングの設定をする
- firewall の無効化
- クライアント用のOpenVPN構成ファイルを移動する
はじめに
今回構築する OpenVPNサーバ は、以前に下記リンクの備忘録を書いているため、説明等の詳細は割愛させていただきます。
tryota.hatenablog.com
パッケージのインストール
# apt install openvpn easy-rsa
OpenVPN Server
サーバ証明書の発行
サーバ証明書を発行するのに必要なものは、以下になる。
- 公開鍵ペア(public.key , private.key)
- 証明書署名要求(certificate signing request)
- DHパラメータ(pemファイル)
証明書発行用のディレクトリを作成する
ubuntu には、専用コマンド make-cadir があるので、これを使用してディレクトリを作成する。
# make-cadir /etc/openvpn/easy-rsa
カレントディレクトリを移動する
# cd /etc/openvpn/easy-rsa
作成したディレクトリの配下にファイルとディレクトリが作成されたことを確認する。
# ls easyrsa openssl-easyrsa.cnf vars x509-types
証明書作成用の環境変数を編集する
vars ファイルを編集する
# vim vars
varsファイルの以下の値を正しく編集する
set_var EASYRSA_REQ_COUNTRY "JP" set_var EASYRSA_REQ_PROVINCE "Hyogo" set_var EASYRSA_REQ_CITY "Akashi" set_var EASYRSA_REQ_ORG "OpenVPNServer" set_var EASYRSA_REQ_EMAIL "me@example.net" set_var EASYRSA_REQ_OU "My Organizational Unit"
認証局を作成する
CA(Certificate Authority)の作成をする。
./easyrsa build-ca
パスフレーズとCommonNameを問われるので、それとなく適当に入力
Enter New CA Key Passphrase:test Re-Enter New CA Key Passphrase:test Common Name (eg: your user, host, or server name) [Easy-RSA CA]:OpenvpnSV CA creation complete and you may now import and sign cert requests. Your new CA certificate file for publishing is at: /etc/openvpn/easy-rsa/pki/ca.crt
作成されたことを確認する。
pki フォルダ内に以下が作成されていればOK。
- ca.crt
- private/ca.key
サーバ秘密鍵と証明書署名要求を作成する
※「server」の部分は任意。秘密鍵と証明書署名要求ファイルの名前に使われる。
# ./easyrsa gen-req server Enter PEM pass phrase:test Verifying - Enter PEM pass phrase:test Common Name (eg: your user, host, or server name) [server]:opoenvpnSV Keypair and certificate request completed. Your files are: req: /etc/openvpn/easy-rsa/pki/reqs/server.req key: /etc/openvpn/easy-rsa/pki/private/server.key
作成されたことを確認する。
pki フォルダ内に以下が作成されていればOK。
- reqs/server.req
- private/server.key
サーバ証明書の作成
サーバ証明書に署名する際は、引数を先ほど作成した証明書署名要求「server.req」を指定する。(拡張子は不要)
# ./easyrsa sign-req server server Type the word 'yes' to continue, or any other input to abort. Confirm request details: yes Enter pass phrase for /etc/openvpn/easy-rsa/pki/private/ca.key:test Certificate created at: /etc/openvpn/easy-rsa/pki/issued/server.crt
作成されたことを確認する。
pki フォルダ内に以下が作成されていればOK。
- issued/server.crt
DHパラメータの生成
Diffie-Hellman 鍵交換は、暗号鍵を安全に転送するために使用される方法です。
# ./easyrsa gen-dh
作成されたことを確認する。
pki フォルダ内に以下が作成されていればOK。
- dh.pem
TLS-Authキーの生成
openvpnでは、セキュリティを向上させるために TLS-Authキー(ta.key)を実装している。
# openvpn --genkey --secret ta.key
作成されたことを確認する。
easy-rsa フォルダ内に以下が作成されていればOK。
- ta.key
OpenVPN Client
クライアント秘密鍵と証明書署名要求を作成する
# cd /etc/openvpn/easy-rsa # ./easyrsa gen-req client nopass Common Name (eg: your user, host, or server name) [client_test]:test Keypair and certificate request completed. Your files are: req: /etc/openvpn/easy-rsa/pki/reqs/client_test.req key: /etc/openvpn/easy-rsa/pki/private/client_test.key
作成されたことを確認する。
pki フォルダ内に以下が作成されていればOK。
- reqs/client_test.req
- private/client_test.key
クライアント証明書を作成する
クライアント証明書に署名する際は、引数を先ほど作成した証明書署名要求「client_test.req」を指定する。(拡張子は不要)
# ./easyrsa sign-req client client_test Type the word 'yes' to continue, or any other input to abort. Confirm request details: yes Enter pass phrase for /etc/openvpn/easy-rsa/pki/private/ca.key:test Certificate created at: /etc/openvpn/easy-rsa/pki/issued/client_test.crt
作成されたことを確認する。
pki フォルダ内に以下が作成されていればOK。
- issued/client_test.crt
OpenVPNクライアント用に必要なファイルを移動する
- ca.crt
- client_test.key
- client_test.crt
- ta.key
上記のファイルを「/etc/openvpn/client/」ディレクトリの配下にコピーする。
(ca.crt , ta.key はコピーしなくてもよい)
「/etc/openvpn/client/」ディレクトリが無ければ、作成する
OpenVPNクライアントの構成ファイルをコピーする
デフォルトのままだと、openvpnクライアントの構成ファイルは「/etc/openvpn」フォルダには存在しないため、openvpnパッケージに付属している構成ファイルのテンプレートをコピーしてくる必要がある。
# cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf /etc/openvpn/client/ # cd /etc/openvpn/client
OpenVPNクライアントの構成ファイルを編集する
# vim client.conf
以下の行を編集する
42 remote {openvpnサーバのホスト名(又はIPアドレス)} 1194
61 user nobody #[;]を外す
62 group nogroup #[;]を外す
認証局の証明書を追記
# ca.crt コメントアウトする <ca> -----BEGIN CERTIFICATE----- MII..... ......AD -----END CERTIFICATE----- </ca>
クライアント証明書を追記
# cert client.crt コメントアウトする <ca> -----BEGIN CERTIFICATE----- MII..... ......=F -----END CERTIFICATE----- </ca>
クライアント秘密鍵を追記
# key client.key コメントアウトする <key> -----BEGIN PRIVATE KEY----- MII..... ......YR -----END PRIVATE KEY----- </key>
tls-autキーを追記する
# tls-auth ta.key 1 コメントアウトする <tls-auth> -----BEGIN OpenVPN Static key V1----- 42.... ......GT -----END OpenVPN Static key V1----- </tls-auth>
OpenVPNクライアントの構成ファイルの拡張子を変更する
# mv client.conf client.ovpn
Ubuntu server DNSサーバの構築
- はじめに
- 要件
- VirtualBox
- DNSサーバ
- 構築
- サービスの再起動
- 追記(2021/04/19)
要件
VirtualBox
- OS:Ubuntu server 20.04
- CPU:1
- メモリ:1024MB
- HDD:10GB(可変サイズ)
- ネットワーク:ブリッジアダプタ
構築
今回は、DNSサーバの構築のためVirtualBox関連は省く。
BIND とは
BIND(Berkeley Internet Name Domain) とは、Unix / Linux系のサーバにおいてDNSサーバを構築するためのデファクトスタンダードになりつつあるDNSサーバソフトウェア。
現在のバージョンは、バージョン9(BIND9)。
インストール
apt install -y bind9 bind9utils
ディレクトリの移動
cd /etc/bind/
設定ファイルの編集
BIND9 が参照するファイルを定義する。
vim named.conf -------------以下、confファイル----------------- // This is the primary configuration file for the BIND DNS server named. // // Please read /usr/share/doc/bind9/README.Debian.gz for information on the // structure of BIND configuration files in Debian, *BEFORE* you customize // this configuration file. // // If you are just adding zones, please do that in /etc/bind/named.conf.local include "/etc/bind/named.conf.options"; include "/etc/bind/named.conf.local"; include "/etc/bind/named.conf.default-zones"; // ゾーンファイルを追加 include "/etc/bind/named.conf.zones";
オプションファイルの編集
問い合わせを許可するネットワーク、名前解決問い合わせのフォワード先、再起問い合わせの許可等の設定をする。
vim named.conf.options -------------以下、optionファイル----------------- // ACL(Access Contorol List)で、ネットワークの範囲を定義する。 acl internal-network { 192.168.1.0/24; }; options { directory "/var/cache/bind"; // If there is a firewall between you and nameservers you want // to talk to, you may need to fix the firewall to allow multiple // ports to talk. See http://www.kb.cert.org/vuls/id/800113 // If your ISP provided one or more IP addresses for stable // nameservers, you probably want to use them as forwarders. // Uncomment the following block, and insert the addresses replacing // the all-0's placeholder. // 名前解決ができなかった場合の転送先 forwarders { 8.8.8.8; }; // 問い合わせを受け付けるネットワークおよびホスト allow-query { localhost; internal-network; }; // 再起問い合わせを許可(キャッシュDNSサーバ(リゾルバ)として動作させる)。無効にする場合は、「none」。 recursion yes; //======================================================================== // If BIND logs error messages about the root key being expired, // you will need to update your keys. See https://www.isc.org/bind-keys //======================================================================== dnssec-validation auto; listen-on-v6 { any; }; };
ドメイン定義ファイルの編集
vim named.conf.zone -------------以下、ドメイン定義----------------- zone "infra-test.work" IN { // 「" "」で指定したものがドメインになる。 type master; file "/etc/bind/infra-test.work.lan"; }; zone "1.168.192.in-addr.arpa" IN { type master; file "/etc/bind/db.1.168.192"; };
ゾーンファイルの編集
vim infra-test.work.lan -------------以下、正引きのゾーンファイル----------------- $TTL 86400 @ IN SOA dns.infra-test.work. root.infra-test.work. ( 2021013001 ;Serial 3600 ;Refresh 1800 ;Retry 604800 ;Expire 865400 ;Minimum TTL ) IN NS dns.infra-test.work. dns IN A 192.168.1.254 www IN A 192.168.1.101 vim db.1.168.192 -------------以下、逆引きのゾーンファイル----------------- $TTL 86400 @ IN SOA dns.infra-test.work. root.infra-test.work. ( 2021013001 ;Serial 3600 ;Refresh 1800 ;Retry 604800 ;Expire 86400 ;Minimum TTL ) IN NS dns.infra-test.work. 254 IN PTR dns.infra-test.work. 101 IN PTR www.infra-test.work.
サービスの再起動
systemctl restart named systemctl enable named
Ubuntu Server 20.04 インストール
環境
メインOS:
Windows10 Home
ハイパーバイザー:
ホストOS型ハイパーバイザーソフトウェア VirtualBox バージョン 6.1.16
今回構築する環境設定
OS:
Ubuntu server 20.04
メモリサイズ:
1024MB (default)
仮想マシンのサイズ(仮想マシンが使用できるディスク容量):
10GB
作成するディスクのタイプ:
可変サイズ
ネットワークアダプタ:
ブリッジアダプタ
インストール
Ubuntu server のインストール
https://jp.ubuntu.com/download
CANONICAL の ubuntu ダウンロードサイトより Ubuntu Server を選択し、ダウンロードする。
VirtualBox に Ubuntu Server のインスタンスを作成
- 作成内容は「環境-今回構築する環境設定」の内容で構築する。
- ここに記載していないものについては、デフォルト設定のまま。
いざ、インストール!
言語設定
- Japanase が存在しないため、とりあえず English を選択。
アップデート
- アップデートせずに次へ。
キーボードのレイアウトを設定
- 2か所とも Japanase を選択。
ネットワーク設定
- VirtualBox を使用した場合、仮想マシンのインタフェースは「enp0s3」となっているはず。
- 設定するインタフェースを選択し、今回は「Edit IPv4」のみを設定。
- 「Automatic(DHCP) 」->「Manual」を選択。
- Subnet 仮想マシンを配置するネットワークを指定。
- Address 仮想マシンのIPアドレスを設定。
- Gateway デフォルトゲートウェイを設定。
- Name Server 名前解決の問い合わせ先DNSサーバを指定。
プロキシサーバの指定
- 特になし。
ミラーサーバの設定
- パッケージの取得先サーバの設定。
- 日本のミラーサーバ(default)で特に問題なし。
ストレージの設定
- 今回はただのテスト環境用のサーバのため、特に設定はしない。
ユーザの設定
- Your name PC名(コンピュータ名)
- Your server's name ホスト名
- Pick a username ユーザ
- Choose a password ユーザのパスワード
OpenSSH server のインストール
- インストール完了後、teraterm等から操作する場合はチェックを入れる。
(インストール完了後にも「openssh」をインストールすることができるため、どちらでもいい)
再起動
- インストール完了後に「reboot」を選択し、再起動する。
Ubuntu20.04でDNSの設定を変更する
ubuntu20.04 LTS server で DNSの問い合わせ先を変更する
今までは、CentOS7,8 を使用していたため「/etc/resolv.conf」を変更するものだと思っていたが、
Ubuntu 20.04 ではどうやら違うらしい。
Netplan とは
ubuntu では、ネットワークの設定(IP address , default gateway , nameserver ...etc)は、「Netplan」というネットワーク構成ユーティリティを使用することを推奨してるっぽい。
以下、Canonical公式ページ
netplan.io
CentOSでよくお世話になった、「NetworkManager」や「systemd-networkd」デーモンのフロントエンドで動作する構成ファイルみたいな感じ。
Netplan 使用方法
「Netplan」の構成ファイルは、「/etc/netplan」ディレクトリにあります。
Ubuntu 20.04 server では、デフォルトで「00-installer-config.yaml」ファイルが存在していた。
中身はこんな感じ。
ファイルの拡張子に「yaml」がついている通り、Netplanでは「yaml」形式で記述する。
# This is the network config written by 'subiquity' network: ethernets: enp0s3: addresses: - 192.168.1.101/24 gateway4: 192.168.1.1 nameservers: addresses: - 192.168.1.1 enp0s8: addresses: - 172.19.0.101/24 nameservers: addresses: - 172.19.0.254 version: 2
nameserver の変更
今回は、DNSサーバを別途ローカル内に構築し、それに対して問い合わせを行うように設定する。
network: ethernets: enp0s3: addresses: - 192.168.1.101/24 gateway4: 192.168.1.1 nameservers: addresses: [192.168.1.254,8.8.8.8,4.4.4.4] enp0s8: addresses: - 172.19.0.101/24 gateway4: 172.19.0.254 nameservers: addresses: - 172.19.0.254 version: 2
以上のように設定すればOK。
設定の反映
netplan apply
これで設定が反映され、シャットダウンしても設定は残るはず。
Kali Linux にIPアドレスの設定をする
はじめに
普段は CentOS を使用しているが、セキュリティ関連について勉強をしたかったため、
Kali Linux を使用してみることにした。
CentOS とは違う
分かっていたことだが、設定方法が全く違う。
※NetworkManager で設定する方法もあるかもしれないが、調べても出てこなかったので諦めた。
インストール
VirtualBoxのインストール
以下のサイトよりダウンロード
方法については、その他のサイトを参照ください。
www.virtualbox.org
Kali Linuxのインストール
以下のサイトよりダウンロード
www.kali.org
自分は一番上に記載されている
Kali Linux 64-Bit (Installer)
をインストールした。
一応、VirtualBox や VMware WorkStation 用のOVAファイルも用意されている。
環境の準備
IPアドレスの設定
上記で書いた「VirtulaBox上の設定」だけでは、Kali Linuxは認識してくれなかった。
Kali Linux での設定
Kali Linux では、インタフェースの設定は「interfaces」ファイルを書き換える必要がある。
$ sudo vim /etc/network/interfaces# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
#-------以下、追加--------
# NAT network interface
allow-hotplug eth0 #eth0 : VirtualBoxのアダプタ1
iface eth0 inet dhcp #IPアドレス自動設定
# Local network interface
allow-hotplug eth1 #eth1 : VirtualBoxのアダプタ2
iface eth1 inet static #IPアドレス静的指定
address 172.19.0.10
netmask 255.255.255.0
上記設定後、Kali Linux を再起動
$ reboot
再起動後に確認してみると、IPアドレスが設定されていた。
追記(2021/1/6)
interface の設定で
「allow-hotplug ...」で設定した後、
systemctl restart networking.service
で設定内容を反映させることは\も可能だが、その場合、ifup eth0
ifup eth1
のコマンドを実行し、interfaceをupさせる必要がある。