Webデザイナーなら知っておくべき サーバ知識相談室

第2回 ファイル転送はFTPじゃなくてSFTP? SSHで安全にサーバへ入ろう

この記事を読むのに必要な時間:およそ 5 分

Webデザイナーになったばかりの皆さん,サーバに「入った」ことはありますか?

前回はサーバとかクラウドサーバってどんなもの?と題して,サーバそのものの理解を深めました。今回はそのサーバに「入る」方法について学んでいきます。

制作した画像やCSS,HTMLファイルをサーバにアップして納品することは,Webデザイナーの皆さんにとっても馴染みがあると思います。スムーズにサーバへ入って,さっくり仕事を終わらせましょう。

プロローグ:FFFTPでファイルをアップしたいのにサーバに入れない!

ここは企業のWebサイトの構築を専門としているA社の一室。プライドゆえ人には言いづらい悩みごとを抱えたWebデザイナーと,その駆け込み寺となっているインフラエンジニアがいました。

Webデザイナー「テストサイトをアップしたいのに,サーバに入れない!」

エンジニア「なに?顔真っ赤にしてどうしたの!?」

Webデザイナー「Webサイトの画像ができあがったから,いつもどおりFFFTPでアップしようと思って,FTPのアカウントとパスワード教えてくださいって言ったら,FTPは使えないって言われたんだよ…」

エンジニア「あー,なるほどね。もしかしてFTPじゃなくてSSHでって言われた?」

Webデザイナー「えす…なんだっけな? SFTP?って言われた,多分」

エンジニア「じゃあSFTPのアカウントとパスワードは教えてもらえたの?」

Webデザイナー「それが鍵をくれって言われてさ。鍵ってなに?意味が分かんない。サーバに入りたいんだから俺に鍵くれよ」

エンジニア「あー,鍵認証なんだね。そのサーバ」

Webデザイナー「いいからFTPのアカウントとパスワードくださいってもう一回言ったら,セキュリティ面でFTPは許可してないって返事が返ってきてさ。なんなの? 俺はファイルアップできないってこと?」

エンジニア「どうどうどう,落ち着いて。ええと,相手の人が何を言ってるのか,ちゃんとわかるように説明するよ」

Webデザイナー「小難しくしない?」

エンジニア「しないしない。それに一回ちゃんと理解すれば,もうサーバに入れなくてイライラすることもなくなるよ」

そう,この記事を読み終わる頃には,あなたもサーバにサクサク入れるようになっているはずです。

サーバに「入った」ことありますか?

皆さんはサーバに「入った」ことはありますか?

ターミナルで「ログインする」,ファイルをアップするためにサーバに「接続する」など,人によって言い方は違いますが,「入る」というのは,要は何か作業をするためにそのサーバに「ログインする」ことです。何か作業をするという言い方も曖昧ですが,たとえばサイトを更新するとか,画像を更新するとか,そういう作業だと思ってください。

Webデザイナーであれば,何かしらの形でサーバに入ったことがある方も少なくないのではないでしょうか。「えー,サーバに入ったことなんかないよ!」と言う人でも,次のような図に見覚えありませんか。

WinSCPでサーバに入っている画面

WinSCPでサーバに入っている画面

この図はWinSCPというソフトの画面です。サイトの制作や運用を担当している人が,サーバにWebページや画像のファイルをアップロードするときによく使っています。右がサーバに「入って」見ている画面で,左は自分が今使っているパソコンのフォルダの中身です。

そして次の図はPuTTYというソフトの画面です。こちらは主に技術者がサーバで諸々の設定をしたり,ログを確認したりするときに使われます。Webデザイナーの皆さんには,いわゆる「黒い画面」と言った方がお馴染みかもしれません。

PuTTYでサーバに入っている画面

PuTTYでサーバに入っている画面

どちらもサーバに「入って」,フォルダの中身を一覧で見ています。先に挙げたWinSCPの画面の右側と,このPuTTYの画面をよく見比べてみてください。並んでいるフォルダや画像,HTMLのファイルがすべて同じであることが分かると思います。

実はこれ,見え方は違いますが,同じサーバに「入って」同じフォルダを見ています。実際のWinSCPやPuTTYの画面を見たことで,サーバに「入る」という言葉のイメージが少しつきましたでしょうか。

ではサーバにはどうやって「入る」のでしょう? WinSCPやPuTTYといったソフトをインストールして立ち上げたら,自動でサーバに入れるのでしょうか?

入る方法は色々あるのですが,今回はサーバに「リモートで,SSHで,鍵認証で入る」方法について紹介していきます。

サーバには「ローカル」で入る? それとも「リモート」で入る?

WinSCPやPuTTYのことは一旦忘れてください。もっと大きい枠組みで「サーバに入る」ことを捉えてみましょう。サーバに入るには大きく分けて2つの方法があります。

1つ目は普段,みなさんがパソコンを使うときのように,サーバの目の前に座って,サーバ本体にキーボードやモニタをつないで直接使うというやり方です。サーバは一般的にデータセンターやオフィス内のサーバルームにあることが多いです。そのため,そこまで行って,キーボードとモニタをつないでサーバを使うのです。

このようにサーバと自分が物理的に同じ場所に居て,キーボードやモニタをつないで直接使える環境を「ローカル」と言います。

しかしこの1つ目の方法は現実的ではありません。サイト更新のたびにデータセンターまで出かけて行って,サーバにキーボードやモニタをつないでファイルをアップする,なんて無理ですよね。そこで2つ目の方法,「リモート」です。

実はサーバには,物理的に離れた場所からネットワーク越しに入ることができるのです。サイト更新のたびにデータセンターまで行く必要はありません。この2つ目の方法のように,サーバと自分が別々の場所にいて,ネットワーク越しに使える環境を「リモート」と言います。

離れた場所からテレビを操作できる道具を「リモートコントローラ」,略してリモコンと言いますよね。リモコンのリモートは,離れた場所からサーバに入れる「リモート」とまったく同じ意味です。

ローカルとリモートの違い

ローカルとリモートの違い

という訳で,サーバには基本的にリモートで入ります。ではリモートでどのように入るのでしょう?

著者プロフィール

堀越良子(ほりこしよしこ)

株式会社アイ・エム・ジェイのインフラエンジニア。ウェブインテグレーションの下支えとなるサーバホスティングサービスの構築と運用を担当している。

モバイルサイトのエンジニア,SIerとソーシャルゲームの広報を経て,2013年より現職。「分からない気持ち」に寄り添える技術者になれるように日々奮闘中。

コメント

  • お礼

    私は別にWebデザイナーとかを目指してる者ではありませんが、SFTPのことを知りたくて調べていたところたまたまこの記事を見つけ熟読させていただきました。
    基礎知識の全くない私でも大変わかりやすくてすごくありがたかったです。
    一言お礼が言いたくてメールしました。勉強になるのでブックマークしてほかの記事もおいおい読ませていただこうと思っています。

    Commented : #1  ただの通りすがりです (2014/08/16, 23:04)

コメントの記入