5
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Raspberry Pi3でUbuntu Server

Posted at

OSのダウンロード&インストール

Ubuntu Serverのダウンロード

Raspberry Pi用のUbuntu ServerイメージをUbuntuのサイトからダウンロードします。
今回は、Raspberry Pi3用のUbuntu 18.04.4 LTS 64bitをダウンロードしました。

Ubuntu ServerをSDカードに書き込む

Rufusを使用して、SDカードにOSイメージを書き込みます。
スクリーンショット (102).png

起動確認

OSを書き込んだSDカードをRaspberry Piに差し込んで起動するか確認します。Raspberry Piにディスプレイとキーボードを接続し、しばらく待ちます。Ubuntu loginと出ると、成功です。

初期設定

パスワードの変更

ユーザー名とパスワードにubuntuと入力すると、パスワードをすぐに変更してくださいと表示されるので、現在のパスワード(ubuntu)を入力した後、変更したいパスワードを入力してください。

ユーザーの追加&削除 ※お好みに応じて

ユーザーの追加

sudo adduser ユーザー名

Enter new UNIX passwordと表示されるので、設定したいパスワードを入力します。
その後、Full Nameなどが出てきますが、入力することがなければ、空白のままエンターで構いません。最後に、情報は正しいですかと表示されるので、yを入力します。
スクリーンショット (104).png

管理者権限の追加

sudoコマンドを使用するために、sudoグループに追加します。

sudo gpasswd -a ユーザー名 sudo 

ユーザーの変更

su ユーザー名

デフォルトユーザーの削除

ユーザーを削除するために、再起動させます。

sudo reboot

ユーザーの削除

sudo userdel -r ubuntu

SSHの設定

公開鍵の追加

authorized_keysに公開鍵を追加します。
※エラーが出た場合は、パーミッションを700にします。

sudo vim ./.ssh/authorized_keys

秘密鍵を使ってログインできることを確認します。

ssh -i 秘密鍵 -l ユーザー名 IPアドレス

root&パスワードログインの無効化

/etc/ssh/sshd_configを編集する前に、バックアップを作成します。

cd /etc/ssh
sudo cp sshd_config sshd_config-backup

エディタで編集します。

sudo vim sshd_config
/etc/ssh/sshd_config
32 PermitRootLogin prohibit-password
37 PubkeyAuthentication yes
56 PasswordAuthentication no

PermitRootLoginのところは、prohibit-passwordnoにします。prohibit-passwordは、鍵認証の場合は、rootでログインできます。noにすると、鍵認証でもSSHでrootにログインできなくなります。

SSHDの再起動

sudo systemctl restart sshd

秘密鍵を使わずにSSH接続をしようとすると、Permission deniedと表示されることを確認します。

スクリーンショット (105).png

IPアドレスの固定

nmtuiとcockpitでは、有線接続のIPアドレス固定が出来なかったので、50-cloud-init.yamを使用してIPアドレスを固定します。

/etc/netplan/50-cloud-init.yaml
  6 network:
  7     ethernets:
  8         eth0:
  9             addresses: [固定したいIPアドレス]
 10             gateway4: デフォルトゲートウェイ(ルーターのIPアドレス)
 11             dhcp4: false
 12             optional: true
 13             nameservers:
 14                 addresses: [DNSサーバーのアドレス]
 15     version: 2

スクリーンショット (115).png

設定を有効化させます。

sudo netplan apply

SSHから締め出され、上記で指定した固定IPでSSHできれば成功です。

ファイアーウォールの設定

SSH、HTTP、HTTPSを使用するために、22、80、443番ポートを開放します。
NodeJSやFlaskを使用する場合は、3000、5000ポートなどを開放させます。

sudo ufw allow 22
sudo ufw allow 80
sudo ufw allow 443

上記で許可したポート以外全て閉じるようにします。

sudo ufw default deny

ファイアウォールを有効化させます。

sudo ufw enable

SSHが中断する可能性がありますが、続けますかと表示されるので、yを入力します。

最後に、指定したポートが開放されているか確認します。

sudo ufw status

Webサーバー(Nginx)のインストール

sudo apt-get install -y nginx

ブラウザに上記で固定したIPアドレスを入力し、Nginxのデフォルトページが表示されることを確認します。
スクリーンショット (116).png

5
5
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
5
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?