LoginSignup
13
11

More than 5 years have passed since last update.

XserverにSSHでログインしてscpで管理する

Last updated at Posted at 2019-01-20

FTPやFTPSでファイルをアップロード/ダウンロードするのはセキュリティ面からよろしくないということで、SSHでserverにログインしてgitでデータの取得をしたいのでその手順です。

環境

  • サーバはレンタルサーバーの「Xserver」
  • Macのteminal

手順

Xserverの公式サイト「SSH設定」で記載されているようにSSHでserverにログインするには「公開鍵」を自分で生成するか、サーバー上で「公開鍵認証用鍵ペア」を生成するかのどちらかになります。

お客様にて生成の公開鍵を登録していただく方法と、サーバー上で公開鍵認証用鍵ペアを生成し秘密鍵をダウンロードしていただく方法がありますので、下記をご参照の上、生成または登録を行ってください。

SSH設定をONにする

  • Xserverのサーバーパネルにログイン
  • SSH設定でSSH設定をONにする

公開鍵認証用鍵ペアの生成

  1. XserverのSSH設定で公開鍵認証用鍵ペアの生成タブを選ぶ
  2. パスフレーズを入力する
  3. {サーバーID}.keyをダウンロード
  4. homeディレクトリの.sshにダウンロードしたkeyファイルを格納
  5. keyファイルのパーミッションを600に設定
  6. サーバーにログイン
パーミッションを600に設定
$ chmod 600 {サーバーID}.key
サーバーにログイン
$ ssh -i ~/.ssh/{サーバーID}.key -p 10022 {サーバーID}@{サーバー番号}.xserver.jp

公開鍵を登録

  1. terminalで秘密鍵と公開鍵を生成
  2. パスフレーズを設定
  3. homeディレクトリの.sshhoge_rsahoge_rsa.pubを格納
  4. hoge_rsahoge_rsa.pubのパーミッションを600にする
  5. XserverのSSH設定で公開鍵登録・設定タブを選ぶ
  6. hoge_rsa.pubの中身を貼付 サーバーにログイン
秘密鍵と公開鍵を生成
$ ssh-keygen -t rsa -f hoge_rsa
パーミッションを600に設定
$ chmod 600 hoge_rsa
サーバーにログイン
$ ssh -i ~/.ssh/hoge_rsa -p 10022 {サーバーID}@{サーバー番号}.xserver.jp

gitが使えれば

「Xserver」はレンタルサーバー(共有サーバー)なのでgitが入ってないのですが、gitが使えればSSHでログインしてgit cloneでremoteのデータを取得、git pullで本番サイトを更新などをすることができます。

scpでサーバー/ローカルのデータをコピー

サーバーのファイルをローカルにコピー

秘密鍵でserverにログイン
$ scp -i ~/.ssh/{秘密鍵名}_rsa -P 10022 {サーバーID}@{サーバー番号}.xserver.jp:{サーバーのpath}/test.txt {ローカルのpath}

ローカルのファイルをサーバーにコピー

秘密鍵でserverにログイン
$ scp -i ~/.ssh/{秘密鍵名}_rsa -P 10022 {ローカルのpath}/test.txt {サーバーID}@{サーバー番号}.xserver.jp:{サーバーのpath}

サーバーのディレクトリをローカルにコピー

-rはディレクトリをコピーするオプション
$ scp -r -i ~/.ssh/{秘密鍵名}_rsa -P 10022 {サーバーID}@{サーバー番号}.xserver.jp:{サーバーのpath}/test {ローカルのpath}

ローカルのディレクトリをサーバーにコピー

-rはディレクトリをコピーするオプション
$ scp -r -i ~/.ssh/{秘密鍵名}_rsa -P 10022 {ローカルのpath}/test {サーバーID}@{サーバー番号}.xserver.jp:{サーバーのpath}

参考サイト

13
11
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
13
11