ECS LIVA ZにDebian 10 busterをインストール

# はじめに

「[ECS LIVA ZにDebian 9 stretchをインストール - Qiita](https://qiita.com/mktlab/items/e33e7421a53a879ca78d)」の続き

# WindowsでDebian USBメモリ作成

1. 「[Debian を入手する／CD/USB ISO イメージ／HTTP を使って CD/DVD イメージをダウンロードする／公式の安定版 (stable)リリース用 CD/DVD イメージ／CD／amd64](https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/)」から「debian-10.5.0-amd64-xfce-CD-1.iso」をダウンロード
1. RufusでUSBメモリに書き込み

* 参考
    * [WindowsでUbuntuのインストールUSBメディアを作成する – diagnose-fix.com](https://diagnose-fix.com/topic2-003/)

# インストール

1. USBメモリをLIVA Zに接続
1. LANケーブルをACアダプタに近い方のポート「enp1s0」に接続、遠い方は「enp3s0」
1. LIVA Zを起動
1. 手順通りにインストール
1. WebサーバとSSHサーバを追加
1. インストール中のスクリーンショットは「/var/log/installer/*.png」に保存される

* 参考
    * [system installation - Where does debian store screenshots from the install process? - Unix & Linux Stack Exchange](https://unix.stackexchange.com/questions/579548/where-does-debian-store-screenshots-from-the-install-process)

# visudo

1. sudoを使えるように設定

    ```console
$ su -
# visudo
# User privilege specification
root     ALL=(ALL:ALL) ALL
igarashi ALL=(ALL:ALL) ALL
```

* 参考
    * [sudoの権限を設定するvisudoコマンド【Linuxコマンド集】](https://eng-entrance.com/linux-command-visudo)

# FileZilla

1. 「アプリケーションメニュー／設定／Synaptic パッケージマネージャ」を起動
1. 「filezilla」をインストール
1. 「アプリケーションメニュー／インターネット／FileZilla」から起動できる
1. 「サイト マネージャー／文字コード／自動検出」→「UTF-8 を強制」にすると日本語が文字化けしなくなった

* 参考
    * [Ubuntuに定番FTPクライアントFileZillaをインストールする方法 | 思い立ったら弄る！](https://omoiji.com/ubuntu_ftp_client_filezilla/)
    * [Filezilla で日本語名ファイルが文字化けしてダウンロード出来ない | White Space](https://www.white-space.work/download-failed-at-filezilla/)

# NullMaier

1. hosts設定

    ```console
$ sudo nano /etc/hosts
127.0.0.1       localhost
127.0.1.1       debian.mkt.home debian
192.168.0.1     debian.mkt.home debian
...
```

1. 「アプリケーションメニュー／設定／Synaptic パッケージマネージャ」を起動
1. 「nullmailer」「mailutils」をインストール
    * システムのメール名
        * debian.mkt.home
    * スマートホスト
        * smtp.gmail.com smtp --auth-login --port=587 --starttls --user=your-name@gmail.com --pass=your-password

1. 追加設定＆動作確認

    ```console
$ sudo sh -c "echo $(hostname --fqdn) > /etc/nullmailer/defaultdomain"
$ sudo sh -c "echo 'target-email-address@your-domain.net' > /etc/nullmailer/adminaddr"
$ echo "error" | NULLMAILER_NAME="Testsytem check" mail -s "This is just a test with nullmailer" "target-email-address@your-domain.net"
```

* 参考
    * [nullmailer - Debian Wiki](https://wiki.debian.org/nullmailer)
    * [第6章 ネットワークアプリケーション](https://www.debian.org/doc/manuals/debian-reference/ch06.ja.html#_mail_transport_agent_mta)

# cron-apt

1. 「アプリケーションメニュー／設定／Synaptic パッケージマネージャ」を起動
1. 「cron-apt」をインストール
1. README

    ```console
$  gzip -dc /usr/share/doc/cron-apt/README.gz | less
```

1. config

    ```console
$ sudo nano /etc/cron-apt/config
MAILON="always"（動作確認したら"upgrade"に変更する）
SYSLOGON="always"（動作確認したら"upgrade"に変更する）
MAILTO="root"
```

1. 3-download

    ```console
$ sudo nano /etc/cron-apt/action.d/3-download
autoclean -y
#dist-upgrade -d -y -o APT::Get::Show-Upgraded=true
dist-upgrade -y -o APT::Get::Show-Upgraded=true
```

1. 動作確認

    ```console
$ sudo /usr/sbin/cron-apt 
```

* 参考
    * [Debian CRON-APTで自動アップデート[Green-pen miyagi]](http://www.green-pen.jp/cron_apt.html)
    * [gzファイルを解凍せずに調べる - Dimension Planet Adventure 最終章 最終話『栄光なる未来』](https://ksmzn.hatenablog.com/entry/2014/02/27/175743)
    * [Linux Debianサーバの自動更新方法](https://ichigopack.net/server/autoupdate.html#content_1_5)

# cron-aptを設定しない場合に普段やること

1. 「アプリケーションメニュー／設定／Synaptic パッケージマネージャ」を起動
1. 「状態」ボタンを押す
1. 「再読込」ボタンを押す
1. 「インストール済み（アップグレード可能）」を選択
1. 表示されたパッケージをCtrl + aで全選択
1. 右クリックメニューで「アップグレード指定」を選択
1. 「依存により要求された変更を追加しますか？」画面が表示されたら「マーク」ボタンを押す
1. 「適用」ボタンを押す
1. 「Apply」ボタンを押す
1. 「インストール済み（自動削除可能）」を選択
1. 表示されたパッケージをCtrl + aで全選択
1. 右クリックメニューで「完全削除指定」を選択
1. 「適用」ボタンを押す
1. 「Apply」ボタンを押す

* 参考
    * [Synaptic パッケージマネージャ](https://vinelinux.org/docs/vine6/desktop-guide/synaptic.html)
    * [不要になったパッケージを削除してくれる、autoremove - UNIX的なアレ](https://wadap.hatenablog.com/entry/20080109/1199891111)
    * [Ubuntu Synaptic その15 - パッケージ操作方法 - kledgeb](https://kledgeb.blogspot.com/2012/07/ubuntu-synaptic-15.html)

# SSHで鍵認証

1. WindowsのPowerShellで鍵作成

    ```console
ssh-keygen
Enter file in which to save the key (/Users/igarashi/.ssh/id_rsa): ←[ENTER]を入力
Enter passphrase (empty for no passphrase): ← パスフレーズを入力
Enter same passphrase again: ← パスフレーズを再入力
```

1. 公開鍵「.ssh/id_rsa.pub」をDebianにFTPなどで転送
1. 公開鍵を配置

    ```console
$ cat id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 0600 ~/.ssh/authorized_keys
```

1. パスワード認証を無効に

    ```console
$ sudo nano /etc/ssh/sshd_config
# To disable tunneled clear text passwords, change to no here!
#PasswordAuthentication yes
PasswordAuthentication no
```

1. サービス再起動

    ```console
$ sudo systemctl restart sshd.service 
```

1. WindowsのPowerShellでSSH接続

    ```console
PS C:\Users\igarashi\.ssh> ssh igarashi@debian
Enter passphrase for key 'C:\Users\igarashi/.ssh/id_rsa': ← パスフレーズを入力
```

1. WindowsのPowerShellでSSHトンネル作成

    ```console
PS C:\Users\igarashi> ssh -L 5901:127.0.0.1:5901 -C -N igarashi@debian
Enter passphrase for key 'C:\Users\igarashi/.ssh/id_rsa': ← パスフレーズを入力
```

* 参考
    * [SSHで鍵認証を使う方法](http://www.math.s.chiba-u.ac.jp/~sakurai/tmp/SSH.html)
    * [[CentOS]sshのパスワード認証方式を無効にする | ごった煮 - tips about programming and building a server](http://park1.wakwak.com/~ima/centos4_sshtips002.html)