FTP と比較すると、SSH ベースの sftp サービスは、セキュリティが優れており (非プレーンテキストのアカウントとパスワードの送信)、権限管理が便利です (ユーザーのアクティブ ディレクトリを制限)。 1. sftpアカウントを開き、ユーザーがsftp経由でのみファイルを操作でき、サーバーにsshできないようにします。 2. sftpのChrootDirectory設定を使用して、ユーザーが指定されたディレクトリでのみアクティブになるように、ユーザーのアクティブディレクトリを制限します。 バージョンを確認する
新しいユーザーとユーザーグループを作成する
アクティブディレクトリ
基本的なssh設定
これで、SSHを使用してサーバーにリモートログインできるようになりました。 sftpの設定
サブシステム サブシステムは、ssh のサブモジュールを指します。ここで有効になっているのは sftp モジュールです。このサービスを提供するために、システムに組み込まれている internal-sftp を使用します。実際、これを構成した後、アカウント ssh を使用して、または ftp クライアント sftp を使用してログインできます。 ユーザーがsftpを使用してサーバーにログインできるようにしたいがsshは使用したくない、またユーザーのアクティブディレクトリを制限したい場合は、次の設定を続行します。
[ユーザー|グループ] userName|groupName に一致 Match [User|Group] sftp これは、ログインしているユーザーの権限制限設定です。 Match は、一致したユーザーまたはユーザー グループに対して有効になり、ssh の一般的な設定よりも高くなります。 ChrootDirectory ユーザーのアクティブ ディレクトリは %h でマークできます。%u はユーザー名を表します。Match によって一致したユーザーがログインすると、セッションのルート ディレクトリはこのディレクトリに切り替わります。ここでは 2 つの点に特に注意する必要があります。 1. chroot パス上のすべてのディレクトリは、最大権限が 0755 の root によって所有されている必要があります。これは注意して遵守する必要があります。したがって、非 root ユーザーとしてログインする場合は、ログインしたユーザーが操作する権限を持つ chroot の下に新しいディレクトリを作成する必要があります。 2. chroot が設定されると、ログイン時に、対応するユーザーのセッションのルート ディレクトリ "/" がこのディレクトリに切り替わります。ログインに sftp プロトコルではなく ssh を使用する場合は、次のようなプロンプトが表示される可能性があります。 /bin/bash: そのようなファイルまたはディレクトリはありません このプロンプトは非常に正確です。この時点でログインしているユーザーの場合、セッションのルート ディレクトリ "/" は、設定した chroot ディレクトリに切り替えられています。chroot がシステムの "/" ディレクトリでない限り、この時点では chroot/bin の下に bash コマンドはありません。これは、ユーザーを追加するときに設定される -s /bin/false パラメータに似ています。シェルの初期コマンドは /bin/false なので、当然リモート ssh ログインは利用できません。 ForceCommand ユーザーにセッションへのログインを強制するときに使用する初期コマンド。このオプションが上記のように設定されている場合、一致したユーザーは sftp プロトコルを使用してのみログインでき、ssh を使用してログインすることはできません。 設定が完了したら、sshdサービスを再起動します。 知らせ: 1. chroot によって発生する可能性のある問題。chroot はセッションのルート ディレクトリをこのディレクトリに切り替えるため、このセッションのパスが chroot/bin/bash になるため、ssh ログインでエラー メッセージ「/bin/bash: No such file or directory」が表示される場合があります。 2. ForceCommand はセッション開始時の初期コマンドです。例えば、internal-sftp を指定すると、This service allow sftp connections only と表示されます。これは、usermod -s /bin/false コマンドと同じです。ユーザーがセッションにログインすると、/bin/bash コマンドは呼び出されず、当然サーバーへの ssh ログインは実行できません。 要約する 上記は、編集者が紹介した Linux オペレーティングシステムでの ssh/sftp の構成と権限の設定方法です。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。編集者がすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。 以下もご興味があるかもしれません:
|
<<: MySQL に絵文字表現を挿入できない問題の解決方法
コードをコピーコードは次のとおりです。 <!DOCTYPE html PUBLIC "...
エラーメッセージ:エラー 1862 (HY000): パスワードの有効期限が切れています。ログインす...
1. まずmysqld.exeプロセスを停止します2. cmd を開き、mysql の bin ディ...
Mac で開発されたプロジェクトがあり、パッケージ npm i がインストールされており、すべて正常...
1. ユーザーを作成します。注文: 'password' によって識別される ...
CHAR 型と VARCHAR 型は似ていますが、主に格納場所、末尾のスペース、取得方法が異なります...
目次背景説明GETリクエストの作成事前リクエストスクリプトで署名を作成するスクリプトは環境変数に書き...
js のイベント ループJavaScript はシングルスレッドなので、同じイベントで実行できるメソ...
1. 新しいユーザーを作成します。 1. SQL ステートメントを実行して新しいものを作成します (...
入力サブシステムフレームワークLinux 入力サブシステムは、上から下に向かって、入力サブシステム ...
目次1. シナリオ2. 解決策3. 結論4. 参考文献1. シナリオ日常の開発およびテスト作業には ...
目次コンテナ階層サーブレットの検索を要求するプロセス仕組みTomcat のコンテナは Servlet...
SASS で定義された変数では、後で設定された値によって古い値が上書きされます。 $色: 赤; $色...
パフォーマンスの問題のあるSQL文を取得する方法1. ユーザーからのフィードバックを通じてパフォーマ...
Navicat を使用して IP 経由で直接接続すると、次のようなさまざまなエラーが報告されます: ...