21
22

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 5 years have passed since last update.

さくらのVPSでUbuntu16.04を建てた

Last updated at Posted at 2017-04-29

さくらのVPS
自分のノートPCが重すぎて、ブラウザで検索+開発が成り立たないので開発を外部でやろうという試み

はじめに

コマンドなどの細かい説明は省きます。
また、正直なところiptablesはよく分かっていません。

契約する

2週間はお試し期間で無料なので使いにくかったらやめることも出来る。

OSインストール

標準インストールでUbuntu16.04を選択
パスワードは適当に設定
(ここで、rootユーザパスワードを設定と書いてあるが、実際は ubuntu ユーザなので注意)
インストールが終わるまで待つ

ログイン

まずは標準ユーザにログイン

sshの設定などができていないはずなので、VNCコンソールからログイン

user: ubuntu
passwd: さっき設定したやつ

先ほども書いたが、ユーザはrootではなくubuntuなので注意
(自分は気が付かずに30分くらい引っかかった)

rootログイン

以下のコマンドでrootにログイン

$ sudo su -
パスワードはubuntuユーザのやつ

OSのアップデートをかける

ソフトウェアが古い場合があるので、以下のコマンドで更新しておく

# apt update
# apt upgrade -y

ついでの設定

sudoするときにいちいちパスワードを聞かれる
割と手間なので聞かれないように変える
visudo して変更

-%sudo ALL=(ALL:ALL) ALL
+%sudo ALL=(ALL:ALL) NOPASSWD: ALL

ちなみに visudo で起動するエディタは nano なので別のエディタに変えたい人は以下を参照
Ubuntuのvisudoエディタが変nanoになる

sshの設定

まずはsshサーバをインストール

# apt install openssh-server

22番は有名すぎるのでをとりあえず変えておく
/etc/ssh/sshd_config を編集

-Port 22
+Port xxxxx

sshサーバを再起動

# systemctl restart ssh

iptables(firewall)の設定

よく見かける方法だと、iptablesコマンドで設定した内容をiptables-persistentを使って保存しておくようだが、さくらのVPSの標準では/etc/iptables/iptables.ruleというファイルにiptablesの設定が記述されているみたい
この設定は/etc/network/if-pre-up.d/iptablesの記述内でiptables-restoreを使って取り込まれているっぽい
/etc/network/if-pre-up.d/*はネットワークの起動時に読み込まれるらしい(らしい)
なのでそのファイルを変更して設定を反映した
先ほど設定したsshのポートの部分だけ修正
/etc/iptables/iptables.rule

 *filter
 :INPUT ACCEPT [0:0]
 :FORWARD ACCEPT [0:0]
 :OUTPUT ACCEPT [0:0]
 -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
 -A INPUT -p icmp -j ACCEPT
 -A INPUT -i lo -j ACCEPT
--A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
+-A INPUT -m state --state NEW -m tcp -p tcp --dport xxxxx -j ACCEPT
 -A INPUT -j REJECT --reject-with icmp-host-prohibited
 -A FORWARD -j REJECT --reject-with icmp-host-prohibited
 COMMIT

更新したiptables.ruleを取り込み

# iptables-restore < /etc/iptables/iptables.rule

本当はufwを使って設定しようと思ったのだが、良くわからなかった...

sshで接続する

ローカルのターミナルなどからsshコマンドによってログインする
さくらのVPSコントロールパネルからipもしくはホスト名を取得しておく

$ ssh ubuntu@{$hostname}

ログインできれば成功

21
22
1

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
21
22

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?