Edited at

Ubuntuにおける最低限のセキュリティ設定


ubuntuのデュアルブート方法


ubuntuインストール準備


  • ubuntu isoをダウンロード

  • USBをフォーマットし、書き込みツールで書き込み


Windowsの設定


  • Windowsのディスクの縮小(Dドライブでも可)

  • BIOSを開く

  • セキュアブートオフ

  • ブートの順番を変更

  • 保存して再起動


ubuntuをインストール


  • スワップ領域確保

  • 残りをディスク領域に

  • ディスクにブートローダーを設定


基本設定


パッケージリストの更新

$ sudo apt-get update


インストールされてるパッケージの更新

$ sudo apt-get upgrade


セキュリティアップデート

$ sudo apt upgrade -y


パッケージ自動アップデート

$ sudo apt-get install unattended-upgrades

$ sudo dpkg-reconfigure -plow unattended-upgrades
$ vim /etc/apt/apt.conf.d/50unattended-upgrades

// "${distro_id}:${distro_codename}-updates";

    ↓変更

"${distro_id}:${distro_codename}-updates";


GUIをオフにする

$ sudo systemctl set-default multi-user.target

#戻すには
$ sudo systemctl set-default graphical.target


同じネットワーク内でssh接続

sudo apt-get install openssh-server

service ssh status


ポート番号しおよびRSA認証


番号変更、パスワードログイン禁止

$ sudo nvim /etc/ssh/sshd_config

# Port 22

Port xxx

#PasswordAuthentication yes

PasswordAuthentication no


RSAキー生成

# 公開鍵(.pub)と秘密鍵を生成

$ cd ~
$ ssh-keygen -t rsa #{鍵名}を指定、パスは設定なしでOK(keyを使うため)
$ cat ~/{ファイル名}.pub >> .ssh/authorized_keys

#ローカルにて作業、暗号鍵をコピー
$ cd ~
$ vim {ファイル名} 
$ chmod 600 {鍵名}

# 接続先で削除
$ rm ~/{鍵名}


ssh再起動

$ service sshd restart


接続テスト

ローカルの場合

$ ifconfig
$ ssh -p {Port番号} -i {鍵名} {username}@{localIP}


ファイアーウォールと外部接続


管理フレームワークufwインストール

$ sudo apt-get install ufw


ポート設定

#sshのポート

$ sudo ufw allow {Port番号}
# http
$ sudo ufw allow {80}
# https
$ sudo ufw allow {443}
# Jupyter
$ sudo ufw allow {8888}


許可したポート以外全ての閉鎖

$ sudo ufw default deny


ufw の有効化

$ sudo ufw enable


グローバルIPで接続テスト

$ curl inet-ip.info

$ ssh -p {Port番号} -i {鍵名} {username}@{globalIP}


外部からjupyterで接続できるようにする方法


  • 直接ポートを開放する方法もあるが、それだとセキュリティ的に不安がある

  • そこで、RSA暗号を使えるsshで接続する形式ポートフォーワードをとる

  • ポートフォワードではリモート先からアクセスできるポートをローカルマシンのポートに割り当てることができる

  • ssh接続における「localhost:8888」はリモートマシンにおけるjupyterのアドレスに該当する

$ ssh -p {sshポート番号} -i {鍵名} -L {ローカルマシンで割り当てたいポート番号}:localhost:8888 {ユーザー名}@{リモートマシンのグローバルIP}

$ open http://localhost:{ローカルマシンで割り当てたいポート番号}


参考