Linux構築用メモ

Linux構築用メモ

# メモについて
- CentOS構築用のメモになります。
- すべての環境に当てはまるわけではないので注意ください。
- IPアドレスさえよく分からないときに設定を苦労した記憶があるので、数年前の自分でも設定できるように書きたい

# CentOS構築時に実施すべき内容
本ページでのゴールは、CentOS7に”SSH接続”ができ、”インターネット”につながることです。
- インストール
- ホスト名の設定
- ネットワークの設定について
- FWの設定　など
- SSHの設定について

# 本環境について

|項目|内容|
|:--:|:--:|
|OS|CentOS7|
|IPレンジ|192.168.1.0/24
|デフォルトゲートウェイ|192.168.1.1
|DNS|8.8.8.8|

:::note
IPレンジってなんですか？
住所の範囲です。利用するネットワークの住所の範囲について、あらかじめ設計で決めておく必要があります。本当に何もない環境からのスタートの場合は、今ここで適当に決めてしまっても大丈夫です。
例；192.168.1.0/24

もし、既存ネットワークにルータやサーバがある場合は、例えばWindowsの場合はコマンドプロンプトにて、

$ipconfig

とうつことで、既存ネットワークのレンジを知ることができます。
※サブネットマスクに、255.255.255.0と記載があった場合は、/24です。
　細かく記載すると長くなるので、それ以外の場合はツールで計算してください。
　https://note.cman.jp/network/subnetmask.cgi
:::

:::note
デフォルトゲートウェイってなんですか？
ネットワークの出口です。（厳密には0.0.0.0/0あての通信になるので、詳細は調べてください）
ルータやスイッチのアドレスであることが多いですが、

もし、既存ネットワークにルータやサーバがある場合は、例えばWindowsの場合はコマンドプロンプトにて、

$ipconfig

とうつことで、デフォルトゲートウェイが何に設定されているかが分かります。



:::

:::note
DNSってなんですか？
データネームサーバです。
IPアドレス⇔URLを変換してくれるサーバみたいなもんです。
自分で構築してないよって人は、GoogleのDNSでいいとおもうので、8.8.8.8になります。

:::

:::note
仮想基盤上に設定するのですが？
環境によって違うので難しいですが、VMware workstationの場合は、ブリッジネットワークにしておけば、
クライアントのWindowsと同じセグメントに仮想サーバが作成されたってことにできます。
https://docs.vmware.com/jp/VMware-Workstation-Pro/16.0/com.vmware.ws.using.doc/GUID-BAFA66C3-81F0-4FCA-84C4-D9F7D258A60A.html

つまり、普段物理的に使っている家のルータがデフォゲにすることができますので、
上記noteの手順にてIPアドレスなどの確認ができます。

:::


# インストールについて
公式サイトから引っ張ってきてください。
https://www.centos.org/download/

①起動後の画面
<img width="300" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/340199/1ac49d64-9596-edca-0fb5-513916395cd9.png">

②日本語を選択して、続行を選択
<img width="300" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/340199/fc20bb2b-7bab-1fc2-d30b-28613d70cad0.png">


③インストール先を選択
<img width="300" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/340199/5a944480-aec6-f6b2-2c49-f60558ec07f4.png">

④特に何もなければ、脳死で完了を押せばよいです
<img width="300" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/340199/aecb22a4-8ae2-d54a-b7b2-45a54d71d4c4.png">

⑤インストール開始を押せるようなります。
<img width="300" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/340199/55eb4673-3230-52f7-3ded-1b8ca83f389c.png">

⑥ルートパスワードの設定をしてください。
　ユーザは別に作らんでもよいです。
　インストールが完了したら、再起動をします。
<img width="300" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/340199/c6f513e4-6dbd-1040-eb56-2fa7ed586104.png">

⑦再起動後ログインします。
<img width="300" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/340199/eff17b8c-8992-bdc4-cc4c-270ad9f6736d.png">

<img width="300" src="">

# サーバの設定
### ホスト名の設定
サーバのホスト名を変更します。
実施する目的としては、サーバに名前を付けます。必須事項ではございませんが、実施をおすすめします。
再起動後、変更されます。
```
$hostnamectl #ホスト名の確認
$hostnamectl set-hostname vm-u2kura # vm-u2kuraがホスト名
```



### ネットワークの設定について
GUIがない環境で実施するのは若干面倒ですが、設定しておかないとい外部から入れないので、設定を推奨します。
CentOS7からnmcliコマンドが使えるので、これを使って設定していきます。
今までファイルを直接いじってた人もいると思いますが、こっちのが楽だと思います。

①NICの確認
NICの状況を確認します。
```
$nmcli con show
```
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/340199/317c9fe6-5841-592a-49f4-a6363294f02a.png)

UUIDとNICの名前が表示されますが、グレー状態ですね。
起動していきましょう。
```
$nmcli con up eth0 #eth0は確認したNIC名
$nmcli con mod eth connection.autoconnect yes　#NICの起動を自動化
```
Connection succcessfullyなる文字が出れば、起動成功です。
もう一度、「$nmcli con show」をうつと緑になっています。
自動化しないと、毎回サーバ起動後にcon up のコマンドを打つ必要がでてきます。めんどいっすよね。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/340199/e7ef712b-3d0b-d68d-d5f3-17d41fb11f87.png)


:::note warn
警告
DHCPでアドレスが降ってこない場合は、NICが起動しないと思います。
その場合は、先にIPアドレスとDNSの設定を行ってから、NICを起動してください。
:::



### IPアドレスの設定
IPアドレスの設定をします。いわゆる住所の設定ですね。
DHCP環境の場合は、設定は不要です！！！！
```
$ip a #DHCPで降ってきているIPアドレスの確認。
```
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/340199/2b6e46bd-3cb5-9644-5bd8-be022278cfed.png)

```
$ip a #DHCPで降ってきているIPアドレスの確認。
```


```
$nmcli con mod eth0 ipv4.method manual #マニュアル化します
$nmcli con mod eth0 ipv4.addresses 192.168.1.100/24 #IPアドレスです。ぶっちゃけなんでもよい
$nmcli con up eth0 #NICの再起動
```

### デフォルトゲートウェイの設定
デフォルトゲートウェイの設定を行います。複雑な環境でもなければ、ルータのアドレスになると思います。

```
$nmcli con mod eth0 ipv4.gateway  192.168.1.1/24
$nmcli con up eth0 #NICの再起動
```

### DNSの設定
DNSの設定を行います。名前解決に必須なので、インターネットに出たい場合は設定が必須です。

```
$nmcli conn mod eth0 +ipv4.dns 8.8.8.8 #8.8.8.8にDNSを設定
$nmcli con up eth0 #NICの再起動
```


### FWの設定　など
Linuxにデフォルトで入っている、FWを消し去ります。
インターネットに直で公開するWEBサーバなどはやめた方がいいかもですが、公開しなければ止めておく方が便利です。
また、別途ＦＷが設けられているなら、そこまで気にせずに消し去ってよいと思います。
```
$systemctl stop firewalld.service #FWの削除
$systemctl disable firewalld.service #FWの自動希望無効化コマンド
```


### SSHの設定について
証明書を用いたログインを推奨しますが、面倒なのでID/PASSにて外部からSSH出来る方法を記載します。
設定については自己責任でお願いします。

```
$vi /etc/ssh/sshd_config
```
#PermitRootLogin yes
#PasswordAuthentication yes
をONのコマンドを外してください。

vim分からない人は、i を押すと入力モード。
etc をおして、 :wq!　で保存ができます。




静的ルートの設定が必要な場合はがんばって！！！
書くの疲れたので寝ます！！