#6.5 SSHの設定・SCPの使い方::VMWare×CentOS5 Windowsでカンタン開発環境
で、なんで今更?という話なんですが。telnetのインストール・設定の中で、
SSHでもいいのですが、私は普段Poderosaを使っていて、PoderosaでSSHの鍵を使うにはPoderosaで鍵生成をしなきゃいけなかったりで面倒なので、telnetにしちゃいます。
#06 telnetのインストール・設定::VMWare×CentOS5 Windowsでカンタン開発環境 - 肉とご飯と甘いもの @ sotarok
とかホザいてしまったのですが、よくよく考えたら、「だったら鍵なしパスワードSSHでいいじゃん」と思ったので…。
SSHのインストール
は、たぶん最初からされているはずです。インストールされているかどうかは、下記コマンドで確認できます。
[sotaro@five ~]$ rpm -qa | grep ssh openssh-4.3p2-16.el5 openssh-clients-4.3p2-16.el5 openssh-server-4.3p2-16.el5
SSHの設定
設定は、
- Protocol 2だけ許可。
- パスワードログイン許可
- Rootログイン禁止
というポリシーでいきます。
まぁ目次でも言ってますが、あくまで仮想サーバでカンタンに開発環境をそろえることを目的としていますので、公開サーバではパスワードログインは許可せず、必ず鍵認証をすることをオススメします。というか、してください。 *1
ということで、前置きはさておき、
[root@five ~]# vi /etc/ssh/sshd_config Protocol 2 PermitRootLogin no PermitEmptyPasswords no PasswordAuthentication yes
というカンジに編集して保存してください。
そしたら、sshdを起動し、自動起動をONにしておきます。
[root@five ~]# /etc/init.d/sshd start [root@five ~]# chkconfig sshd on
なぜROOTログインを禁止にするか
これは意外と答えられない方が多いらしいです。そしてあまり書かれてはいないのですが、その理由はただひとつ、
どのユーザがROOTになり、作業をしたのか
を明確にするためです。会社だとこれが責任問題になりますし。。
ちなみに誰がいつROOTユーザになったのかというのは、/var/log/secure に記録されています。
って、それこそ仮想サーバ上で自分しか使わないんだからいいんじゃね?とか言うお話もありますが、ここは、サーバ運用のときのクセをつけるつもりでひとつ覚えておいてください(えらそうに…w)
(追記)この辺とかもご参考にどうぞ
Linuxから別のLinuxへssh
一応ご紹介。
[sotaro@five ~]$ ssh sotaro@192.168.xx.xx
のように、「ユーザ名@ホスト」で。
最初だけ、このホストに接続するの初めてだけど?みたいにうにゃうにゃ聞かれますので、yesです。
リモートからファイルをコピーしてきたりする
scpという、ssh+cpコマンド てなことができます。
[sotaro@five ~]$ scp ./memo.txt sotaro@192.168.11.50:~/memo2.txt sotaro@192.168.11.50's password: (パスワードを入力) memo.txt 100% 10 0.0KB/s 00:00
といった具合です。
コマンド引数は、cpと同じように、
scp コピー元ファイル コピー先ファイル
となります。もちろん、
[sotaro@five ~]$ scp sotaro@192.168.11.50:~/memo2.txt ./memo3.txt
とすれば、むこうからこっちにファイルをもってこれたりします。
ユーザ名@ホスト:ファイル名(パス)
です。
ちなみに、WinSCPという便利なツールもあり、これを使えば、FTPクライアント・サーバを使わなくても、FTPを使うような感覚で、ローカルからサーバへファイルのアップロード・ダウンロードが可能ですので、こちらもオススメしておきますです。FTPは通常暗号化されませんので、コチラのほうが少し安全と言えるでしょう。
telnetどうする?
SSHがあるならもう用はありません。さようならしてください。
*1:たった1日サーバを外部に公開し、ルータのポート22をあけるだけでユーザ名やパスワードをランダムに変えた攻撃が大量にログにたまります。