OpenSSH をRPMでインストールする
ネットワークを介して別のコンピュータにログインしたり、遠隔地のマシンでコマンドを実行したり、他のマシンへファイルを移動したりするためプログラムが SSH である。
SSH を使って安全にコンピュータを操作する方法を説明する。
telnet と違い、接続するための認証をPKIを使って確実なものにしたり、伝送路を暗号化することができるので、SSH を使いたい。
サーバへの ssh のインストール
- RPMパッケージを入手します。
OpenSSH 移植版 リリース Linux-Solaris-その他用
2002/10/14現在最新版は、
openssh-3.5p1-1
- インストール
ダウンロードしたファイルのあるディレクトリで、
- 設定
/etc/ssh/sshd_config を編集します。
Protocol 2
PermitRootLogin no
PasswordAuthentication no
RhostsRSAAuthentication no
AllowUsers hoge
|
・Protocol バージョン2 による接続のみに制限するならば、Protocol 2 と記述します。
・PasswordAuthentication no にしなければ、RSA秘密鍵 identityは必須にはなりません。この場合でもパスワードは平文では流れません。
ただしPasswordAuthentication を利用する場合は、中間介入 (man-in-the-middle) 攻撃、dns 詐称攻撃、トロイの木馬版 sshd への入れ換え攻撃などを受けた場合に、気づかずに password を入力してしまうと、攻撃者にpassword を盗み取られてしまう可能性があります。
OpenSSHではクライアント側の設定でStrictHostKeyCheckingがno以外の場合にknown_hostsファイルにある接続先ホストの公開鍵と送られてきた公開鍵が異なると、接続を行いません。
noの場合でも、Password認証、エージェント,X,TCPの転送が無効になります。
・PermitRootLogin no でrootでのログインを禁止します。
・AllowUsers で指定したユーザ(ここではhoge)のみに接続許可します。
- 起動してみます。
# /etc/rc.d/init.d/sshd start
|
- 自動起動の設定をします。SSHのランレベルを設定します。
# chkconfig --add sshd
# chkconfig --list sshd
sshd 0:off 1:off 2:off 3:on 4:on 5:on 6:off
|
- sshクライアントから接続できることを確認したらtelnetを止めてしまいます。
/etc/inet.d の該当行をコメントアウトします。
#telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd
|
- inetdの再起動
# /etc/rc.d/init.d/inetd restart
|
- 試しに接続してみます。
# telnet localhost
Trying 127.0.0.1...
telnet: Unable to connect to remote host: Connection refused
|
- 番外 エラー情報
opensshのrpmを RHL6.2J に入れる時に、
メジャー番号 <=3 のパッケージのみこのバージョンの RPM はサポートされています
エラー: openssh-2.3.0p1-14.i386.rpm cannot be installed
が発生する場合がある。
その場合は、rpmパッケージを更新する。
rpm-3.0.5-9.6x
- OpenSSH をRPMでインストールする
- クライアント設定編(TTSSH編)
- クライアント設定編(PuTTY編)
- クライアント設定編(WinSCPを使う)
- SSH 情報源
ssh で安全なリモート接続を
|
|