sshでリモートポートフォワーディングのセットアップを許可し、コマンドの実行を許可しない方法


8

SSHコマンドを設定して、ポート転送を許可し、コマンドを実行しないようにするにはどうすればよいですか。

sshログインで-Nを使用してコマンドの実行を停止できることは知っていますが、ssh構成ファイルを設定してそれを禁止できますか?

Linuxでのシェルのタイプとパスの制限はオプションですが、SSH構成自体で制限できますか?

回答:


6

見てman sshd、検索するAUTHORIZED_KEYS FILE FORMAT

あなたがしたいことは、公開/秘密鍵のペアを作成し、公開鍵~/.ssh/authorized_keysを通常どおりファイルに入れることです。次に、authorized_keysファイルを編集して文字列を追加します。

command = "/ bin / false"、no-agent-forwarding、no-pty、no-user-rc、no-X11-forwarding、permitopen = "127.0.0.1:80"

最終的には次のようになります。

command="/bin/false",no-agent-forwarding,no-pty,no-user-rc,no-X11-forwarding,permitopen="127.0.0.1:80" ssh-dss AAAAC3...51R==

引数を 'permitopen'に変更し、他の設定の一部を変更することもできますが、基本的にはそれでよいと思います。


permitopenは、ユーザー側から転送できるローカルポートを設定すると思います。リモートポート転送に影響しますか?そのキーにのみ適用されますか?
vfclists 2010年

authorized_keysファイルは、リモート(sshサーバー)側にあります。これは、承認されたキーを持つクライアントがサーバー経由で接続できるホストとポートの組み合わせを示します。ローカル(sshクライアント)側で使用するポートは無関係であり、おそらくサーバーとは通信しないため、省略されます。はい、それはそのキーにのみ適用されます(そのため、許可されているキーに対応する公開キーと同じ行にリストされています)
Slartibartfast

1
ここにタイプミスがありno-usr-rcますno-user-rc
xebeche 2012年

2
答えにはまだno-usr-rcのインスタンスがあります-見逃したのか、編集が処理されていないのかわかりませんか?
Dave Gregory

1
これが、6文字制限ルールが嫌いな理由です。私は30分を費やして、タイプミスのあるものをコピーしたとき、何が問題なのかを理解しようとしました。
zypA13510

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.