Centos7上にセキュアなssh踏み台サーバーを構築する rbash

rbashを使用してCentOS7上にssh踏み台サーバーを作りたいと思います。
複数人が使用し、人数が増えることがある企業向けの普通の踏み台サーバーを想定しています。

rbashを採用することで
sshでログインしたユーザーはsshやscpなどの限定したコマンドしか使えないようにします。

概要

広告

rBashを作成する

まず、opt配下にrbashを作成します。
新規でsshユーザーを作成する際にbashのシンボリックリンクとしてrbashを使います。

これから追加するsshユーザー分だけuseraddなどのコマンドを打っていきます。
しかし、今後不定期に追加する処理を何度も打つなんてやってられません。

シェルスクリプトにしちゃいましょう。

sshユーザー追加時の処理を自動化

環境変数「USERNAME」を指定することで好きなssh名前のユーザーを追加できます。

使用できるコマンドを制限する

実際にどのコマンドを使えるようにするには、下記のpingの部分を書き換えて追記してください。

authorized_keysにip制限をかける

作成したsshユーザーがログインできるように
ip制限のある公開鍵を
このときのipは社内LANにすれば安全です。
公開鍵にfromを追加するだけでできます。
first_pub.keyとします

このようにfrom設定をした初期ログイン用の公開鍵を
作成したsshユーザーの.ssh/authorized_keysにコピーします。

管理ユーザーでスクリプトを実行すれば
簡単にsshユーザーを作れるようになります。

初期ssh秘密鍵を使用してアクセスしてください。
あとは、それぞれが踏み台アクセスする際に使用する公開鍵を設定すれば
セキュアなssh踏み台サーバーが完成します。

rBashについて

rhashについて詳しく知りたいからはredhatのページをどうぞ。
Linux5, Linux6ってあるけどLinux7でもほぼいけます。
https://access.redhat.com/solutions/65822