IP制限してあるので不正ログイン大丈夫なんだけど、IPって変えれるからね。
怖い怖い。
1./etc/ssh/sshd_configの編集
鍵交換方式によるssh接続
http://kazmax.zpp.jp/linux/lin_sshrsa.html
RSA公開鍵認証の有効化とパスワード認証の無効化 − Gentoo Linuxで自宅サーバ
http://gentoo.reichsarchiv.jp/item/17
を参考にして
#vi /etc/ssh/sshd_config
==============================
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeyFile .ssh/authorized_keys
==============================
公開鍵と秘密鍵、パスフレーズによる認証が可能になる。
==============================
PermitRootLogin no
==============================
rootで直接ログインできないようにする。
==============================
RhostsRSAAuthentication no
PasswordAuthentication yes
PermitEmptyPasswords no
==============================
rhostでの接続とパスワード認証の無効化
パスワード認証は、公開鍵での接続ができてから
無効にするのでひとまずyesにしてく。
もし、上記の設定が間違っていたらサーバーにログインできなくなるので。
==============================
ChallengeResponseAuthentication no
==============================
チャレンジレスポンス認証を明示的に無効化
有効化のままだと、PAM認証(実質てきにはパスワード認証)を行ってしまう
最期に、セキュリティの設定とは直接関係ないが、ログレベルを指定しておく。
==============================
SyslogFacility AUTH
LogLevel INFO
==============================
以上で、sshdの設定は終わり
設定テスト
/usr/sbin/sshd -t
問題がなければ再起動
/etc/init.d/sshd restart
次は、SSH接続ポートの変更
参考サイト↓
http://d.hatena.ne.jp/MonteCut/20111112/1321075650
使っていないポートを確認する
#netstat -antu
で、LISTENと、ESTABLISHEDになっているポートを確認
0から1023 : Well Known Portsとして決められている。
1024から49151 : Registered Portsと呼ばれ、様々なサービスが定義されているので使わない方が望ましい。
9152から65535 : Dynamic or/and Private Ports アプリケーションで勝手に使える
なので
9152から65535で任意のポートを選んで設定する
SSHの接続ポートを変更
#vi /etc/ssh/sshd_config
===============================
Port 2739 ←任意のポート
===============================
/etc/init.d/sshd restart
再起動
サービスも登録
vi /etc/services
===============================
#ssh 22/tcp SSH Remote Login Protocol
#ssh 22/udp SSH Remote Login Protocol
ssh ポート番号/tcp SSH Remote Login Protocol
ssh ポート番号/udp SSH Remote Login Protocol
===============================
SSHの行のポート番号を変更する
2.公開鍵の作成
Poderosaで鍵を作って、公開鍵をサーバーに置く
RSAの1024ビットで作成。
公開鍵をサーバーに置く
ssh公開鍵方式でログインしたいユーザーで操作すること
#mkdir -p ~/.ssh
#chmod 700 ~/.ssh
#vi ~/.ssh/authorized_keys
===============================
Poderosaで作った公開鍵の内容をコピペして保存
===============================
#chmod 600 ~/.ssh/authorized_keys
これでOK
3.Poderosaの設定
秘密鍵のパスワードをいちいち入力するのが面倒だから、接続のショートカットに書く
接続のショートカットを作って、その中の、「Poderosa.Protocols.SSHLoginParameter」タグの中に
passphrase="*****" を追加
====================================================================
< Poderosa.Protocols.SSHLoginParameter destination="*****"
..... passphrase="秘密鍵のパスフレーズ" />
====================================================================
windows7だと権限の関係でPoderosaの設定ファイルが保存されないので、
管理者権限でコマンドを起動し、以下のコマンドを実行する
cd /d "%ProgramFiles(x86)%\Poderosa"
echo. >options.conf
cacls options.conf /e /g Users:C
echo. >ssh_known_host
cacls ssh_known_hosts /e /g Users:C
その後、Poderosaのメニュー→ツール→ 詳細プリファレンスエディタで
org.poderosa.protocols.readSerializedPasswordをtrueにする。
参考サイト
http://labs.cybridge.jp/2010/11/poderosassh.html
接続するたびにパスフレーズを入力するのが面倒です
Poderosa のオプション設定が保存されない - iishunのはてなダイアリー
4.winSCPの設定
puttygen.exeを使います。
書くの疲れました。
参考サイト
http://blog.livedoor.jp/wingclean/archives/50371241.html
5.接続が出来たら
パスワード認証を不許可にする
#vi /etc/ssh/sshd_config
==============================
PasswordAuthentication no
==============================
リスタート
/etc/init.d/sshd restart
以上でOK
SSHdの設定一覧
http://www14.plala.or.jp/campus-note/vine_linux/server_ssh/sshd_config.html
→後日談 設定2日目で、不正アクセスが50〜10回と格段に減りました!
効果覿面です!
【関連する記事】
- 一括置換コマンド
- サーバーの設定のコード化
- 自宅開発になってから、開発サーバーのsshのログインが重くなった
- munin関係のスライド
- 社内で開発サーバーを構築する
- Apacheのログファイルディレクトリの権限
- phpのバージョンアップ php 45.1.6 → 5.2.17へ
- 俺のサーバがこんなに重いはずがない
- 指定したIPからしかSSHログインできないようにする
- セキュリティ設定の参考リンク
- iptablesの設定
- 初めて知ったlogwatch
- システム管理者らしくrootに来たメールを自分の携帯アドレスに転送設定する(po..
- ウィルス対策(Clam Antivirus) を入れる
- サーバーメンテナンスメモ
- DBD::mysqlがインストールできない
- CentOSのバージョンを調べる
- サーバーのスペックとか、いろいろハード面で
- sarコマンドの過去ログ
- Apacheをmunin