Linux 自宅サーバ

【自宅サーバ】Debian11初期セットアップ時のメモ

自宅サーバで使うOSは基本的にDebianを使っており、初期インストールした時に都度やっている内容をまとめてみました。

設定内容や導入すべきパッケージは、サーバの用途・環境に応じて適切なものが変わります。
各種設定・導入したパッケージについて理解を深めた上でご自身の環境に合わせたベストな設定を行ってください。

今回対象となるLinux

冒頭でも記載した通り、自宅の環境ではDebianを使用しており現在はDebian11 bullseyeを利用しています。
(マイナーバージョンの変更ぐらいでは多分影響を受けないと思っています。。。多分。。。)

root@rproxy:/var/log/nginx# uname -a
Linux rproxy 5.10.0-8-amd64 #1 SMP Debian 5.10.46-5 (2021-09-23) x86_64 GNU/Linu
root@rproxy:/var/log/nginx# cat /etc/debian_version
11.0
root@rproxy:/var/log/nginx#

必要パッケージのインストールとアップグレード

何はともあれパッケージのアップデートとアップグレード。
その後、個人的に使っているパッケージをインストール。

root@ap02:~# apt update;apt upgrade
root@ap02:~# apt -y install sudo vim screen dnsutils htop ntpdate curl git rsyslog

IPv6無効化

ファイルの最後尾の行にnet.ipv6.conf.all.disable_ipv6 = 1を追記するようにリダイレクトしています。
もちろん、Vimなどお好きなエディタで編集して上書き保存してもらっても問題ないです。

その後、sysctl -pで設定内容を反映し、systemctl -aの結果をgrepコマンドで確認しています。(確認の結果IPv6が無効化されているのがわかります)

root@ap02:~# echo "net.ipv6.conf.all.disable_ipv6 = 1" >> /etc/sysctl.conf
root@ap02:~# sysctl -p
root@ap02:~# sysctl -a | grep disable_ipv6
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.eth0.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
root@ap02:~#  

SyslogをSYSLOGサーバへ転送

別記事で詳細に記載しますが、自宅サーバ上での動作ログについては別に立ててあるSYSLOGサーバ(172.16.20.2)に全転送する運用を行っているので、その設定を投入し、rsyslogを再起動。

設定を記載するファイルをproject603_client.confと独自のファイルに記載していますが、/etc/rsyslog.conf に記載するのが一般的かもしれません。

root@ap02:~# echo ". @@172.16.20.2" > /etc/rsyslog.d/project603_client.conf
root@ap02:~# systemctl restart rsyslog

Sudoにユーザーを追加

インストールした時に作成した一般ユーザーであるlocaladmでパスワード無しでsudoできるようにします。
こちらも、独自ファイル/etc/sudoers.d/localadmに記載していますが、visudoコマンドなどで編集するのが一般的かもしれません。

一般ユーザーでパスワード無しで管理者権限のコマンドが実行できるのでセキュリティ的には良くないと思っていますが個人の環境なので利便性優先で設定しています。

root@ap02:~#  echo "localadm ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/localadm

-Linux, 自宅サーバ
-, , ,