LoginSignup
4
4

More than 5 years have passed since last update.

Proxmox VEでLXCのDebian 8をセットアップ

Last updated at Posted at 2016-05-17

LXCを作成(ホストから)

pct create 100 /var/lib/vz/template/cache/debian-8.0-standard_8.4-1_amd64.tar.gz \
  -ostype debian -hostname CT100 \
  -memory 1024 -swap 256 \
  -storage local -rootfs 1.5 \
  -net0 name=eth0,bridge=vmbr0,hwaddr=00:00:00:00:00:00,ip=192.168.1.2/24,gw=192.168.1.1,ip6=auto,type=veth

WebUIで作成するのが面倒になったときに使ってください。

SSH設定(ホストから)

pct start 100 #起動
pct enter 100 #LXCのコンソールに移動
mkdir -m 700 ~/.ssh #.sshディレクトリーを作成(rootユーザー)
nano ~/.ssh/authorized_keys #SSHデーモンに公開鍵を登録(rootユーザー)
chmod 600 ~/.ssh/authorized_keys #本人だけ読み書き可に

初期設定(SSH接続のrootユーザーから)

#SSHデーモンのパスワード認証を禁止
nano /etc/ssh/sshd_config
#>#PasswordAuthentication yes
#>↓
#>PasswordAuthentication no
#sed -i -r 's/^#? *(PasswordAuthentication) .*$/\1 no/' /etc/ssh/sshd_config
/etc/init.d/ssh restart #SSHデーモンを再起動して設定を反映

#パッケージを更新する
apt-get update && apt-get -y upgrade && apt-get -y dist-upgrade

#パッケージを更新する(IPv6が原因で遅いとき)
apt-get update -o Acquire::ForceIPv4=true &&
apt-get upgrade -y -o Acquire::ForceIPv4=true &&
apt-get dist-upgrade -y -o Acquire::ForceIPv4=true

管理用一般ユーザーを追加(SSH接続のrootユーザーから)

#suをadmグループのユーザーに制限
nano /etc/pam.d/su
#># auth       required   pam_wheel.so
#>↓
#>auth       required   pam_wheel.so group=adm
#sed -i -r 's/^# *(auth +required +pam_wheel\.so)$/\1 group=adm/' /etc/pam.d/su

#sudoをインストールする
apt-get -y install sudo

#sudoのパスワードを不要にする
nano /etc/sudoers
#>%sudo ALL=(ALL:ALL) ALL
#>↓
#>%sudo ALL=(ALL:ALL) NOPASSWD:ALL
#sed -i -r 's/^(%sudo[\t ]+ALL=\(ALL:ALL\)[\t ]+)(ALL)$/\1NOPASSWD:\2/' /etc/sudoers

#管理用一般ユーザーを追加
user='user' &&
uid=9999 &&
useradd -u $uid -m -s /bin/bash $user && #追加
gpasswd -a $user adm && #suを許可
gpasswd -a $user sudo #sudoを許可

passwd user #パスワードを設定(対話)
echo 'user:password' | chpasswd && history -c #パスワードを設定(非対話)


#管理用一般ユーザーのSSH設定
su user #管理用一般ユーザーでログイン
chmod 700 ~ #homeディレクトリーを本人だけ読み書き可に
mkdir -m 700 ~/.ssh #.sshディレクトリーを作成
nano ~/.ssh/authorized_keys #SSHデーモンに公開鍵を登録
chmod 600 ~/.ssh/authorized_keys #本人だけ読み書き可に

その他セットアップ(SSH接続の管理用一般ユーザーから)

日本語化・日本時間化

#日本語化
locale #現状を確認

sudo nano /etc/locale.gen
#># ja_JP.UTF-8 UTF-8
#>↓
#>ja_JP.UTF-8 UTF-8
#sudo sed -i -r 's/^#? *(ja_JP\.UTF-8 UTF-8)$/\1/' /etc/locale.gen
sudo locale-gen

sudo update-locale LANG=ja_JP.UTF-8
source /etc/default/locale

#日本時間化
cat /etc/timezone #現状を確認

sudo echo "Asia/Tokyo" > /etc/timezone
sudo dpkg-reconfigure --frontend noninteractive tzdata

セキュリティーアップデートを自動化する

sudo apt-get install -y unattended-upgrades apt-listchanges
sudo nano /etc/apt/apt.conf.d/50unattended-upgrades
#>//Unattended-Upgrade::Mail "root";
#>↓
#>Unattended-Upgrade::Mail "root";
#sudo sed -i -r 's!^//(Unattended-Upgrade::Mail "root";)$!\1!' /etc/apt/apt.conf.d/50unattended-upgrades
sudo dpkg-reconfigure -plow unattended-upgrades

Sambaをインストール

sudo apt-get -y install samba

sudo nano /etc/samba/smb.conf
#globalセクションの冒頭に書き足す
#   unix charset = UTF-8
#   dos charset = CP932
#   load printers = no
#   disable spoolss = yes
#   acl allow execute always = yes
#
#homesセクションのread onlyをnoにする
#   read only = no

sudo /etc/init.d/samba restart #Sambaを再起動し設定を反映

#Samba関連でユーザーを管理
sudo pdbedit -a -u user #Sambaにユーザーを登録
sudo pdbedit -L #Sambaのユーザーを列挙
sudo pdbedit -a -u user #Sambaからユーザーを削除

#WindowsからSambaにアクセス
rundll32.exe keymgr.dll,KRShowKeyMgr #テスト時に資格情報を削除したいとき

その他管理(SSH接続の管理用一般ユーザーから)

SSHデーモンの公開鍵を差し替え

#rootユーザー
sudo nano ~/.ssh/authorized_keys

sudo chmod 600 ~/.ssh/authorized_keys #本人だけ読み書き可に

#一般ユーザー
sudo su user
nano ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys #本人だけ読み書き可に
exit

#IPアドレスを確認
ip a

公開鍵と秘密鍵を作成

#rootユーザー
sudo ssh-keygen -N '' -t rsa -f ~/.ssh/id_rsa &&
sudo ssh-keygen -N '' -t ecdsa -f ~/.ssh/id_ecdsa &&
sudo ssh-keygen -N '' -t ed25519 -f ~/.ssh/id_ed25519 &&
history -c

#一般ユーザー
ssh-keygen -N '' -t rsa -f ~/.ssh/id_rsa &&
ssh-keygen -N '' -t ecdsa -f ~/.ssh/id_ecdsa &&
ssh-keygen -N '' -t ed25519 -f ~/.ssh/id_ed25519 &&
history -c

ユーザーを管理

#ユーザーを追加
sudo useradd -u 9999 -m -s /bin/bash user
sudo su user #ユーザーでログイン
chmod 700 ~ #homeディレクトリーを本人だけ読み書き可に
mkdir ~/.ssh #.sshディレクトリーを作成
chmod 700 ~/.ssh #本人だけ読み書き可に
nano ~/.ssh/authorized_keys #SSHデーモンに公開鍵を登録
chmod 600 ~/.ssh/authorized_keys #本人だけ読み書き可に
exit #ログアウト

#ユーザーを削除
sudo userdel -r user

#パスワードを設定
sudo passwd user #対話
echo 'user:password' | sudo chpasswd #非対話

#シェルを変更
cat /etc/shells #使用可能なシェルを確認
sudo usermod -s /bin/bash user #変更

#グループの追加と削除
sudo groupadd -g 9999 group #追加
sudo groupdel group #削除

#グループにユーザーを追加と削除
sudo gpasswd -a user group #追加
sudo gpasswd -d user group #削除

#ユーザーとグループを確認
cat /etc/passwd #ユーザーを列挙
cat /etc/group #グループを列挙
id user #ユーザーの情報を表示

パッケージを更新する

sudo apt-get update && sudo apt-get -y upgrade && sudo apt-get -y dist-upgrade && sudo apt-get -y autoremove && sudo apt-get -y autoclean

#IPv6が原因で遅いとき
sudo apt-get update -o Acquire::ForceIPv4=true &&
sudo apt-get upgrade -y -o Acquire::ForceIPv4=true &&
sudo apt-get dist-upgrade -y -o Acquire::ForceIPv4=true &&
sudo apt-get autoremove -y -o Acquire::ForceIPv4=true &&
sudo apt-get autoclean -y -o Acquire::ForceIPv4=true
4
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4