人生初めての適応障害を患い、普通の生活が送れなくったところから、復活する経緯を綴ったブログです。Windowsどうも、Tです。2019にOpenSSHをインストールしましたが、何も設定しないとローカルユーザーでもドメインユーザーにも権限に関係なくSSHもSFTPも接続できる状態です。2019でOpenSSHサーバーを使ってみるどうも、Tです。21:21さすがに、それは困るのでマイクロソフトの情報をもとに、接続制限が行えるか確認します。固有の構成オプションについて説明します。設定なぜデフォルトのドメインユーザーで書き込みできるのか参考まとめやりたいことローカル・ドメイングループからのSSH接続制限SSH接続不可、SFTP接続のCHROOT化まずグループ単位でSSH接続を制限できるか確認します。SFTPだけ使う環境を想定して、SSH接続をできなくしてSFTP接続(WinSCPなどのクライアントソフトからの接続)のみを許可、かつ公開したフォルダ配下した触れないようにCHROOT化を行います。可能であれば、ドメインユーザー単位で制御したいなぁと思っておりました。下記のような記載もあったためドメインユーザー単位の制御も可能と考えてましたが、どうしてもドメインユーザー単位の制御ができなかったので諦めめてグループ単位の制御に変更しました。※ローカルユーザー単位の制御は行えました。固有の構成オプションについて説明します。パターンと競合するものが多数あります。形式との競合を回避しています。2019SSHのコンフィグファイルが上書き禁止になってしまうため、作業はローカルAdministratotrもしくはドメインのAdministratorで行います。今回は、ドメインのAdministratorを使っています。既定のSSH設定ファイルは、「%programdata%\ssh\sshd_config」になります。今回もこれを使います。SSH設定ファイルの追記箇所sshd_configは、テキストファイルで編集しますが、末尾にMatch構文が入っていました。Match構文のブロックは、宣言から最終行までをMatch構文として扱ってしまうため想定外の動作を極力なくすため、Mach構文の前に追加した設定を書いていきます。Allを入れるとMatch構文を終わらせることもできますが、Windows版のOpenSSHということもあり、個人的にどこまで正確に働くか不安があるため極力既存の設定項目をいじらないようにしました。Serverサービスを手動で再起動します。事前準備テストで使うグループとユーザーを作成します。下記のドメイングループとユーザーを作成しました。ドメイングループ:sftpusersドメインユーザー:sftpuserドメイングループには、他に所属しているグループはありません。Usersグループと作成したグループのみに所属している状態です。下記のローカルグループとユーザーを作成しました。これは、OpenSSHサーバーをインストールしたOS上のローカルグループとユーザーになります。ローカルグループ:localsftpusersローカルユーザー:localsftpuserローカルユーザーは、デフォルトのUsersグループと作成したローカルグループのみに所属しています。設定sshd_configに下記の設定を追記して、サービスを再起動します。これで、指定したグループに所属するユーザーからのみSSH接続を許可した意味になります。Denyの指定をしなくともAllowした以外のグループは拒否されます。設定値にダブルクォーテーションは必須ではありません。下記のようにグループ名に空白がある場合は、ダブルクォーテーションで囲う必要があります。Admins”作成したドメイングループに所属するユーザーでSSH接続すると正常に接続できます。作成したローカルグループに所属するユーザーでSSH接続すると正常に接続できます。管理者権限を持っていても、Allowしたグループ以外のユーザーはSSH接続をすることはできません。再度パスワードを聞かれるようになります。ユーザーとグループの両方のAllow設定AllowUsersとAllowGroupsがある場合、AllowUsersが先に処理されAlloGroupsは無視されます(Linuxでも同様です)。そのため、制限をかける場合は、AllowUsersを使うのかAllowGroupsを使うのか先に決めておきましょう。個人的には、後々ユーザーを追加してもSSH設定変更が必要のないAllowGroupsが運用上も楽かと考えています。固有の構成オプションについて説明します。ディレクティブは、次の順序で処理されます。AllowGroups。事前準備SFTP接続時のルートディレクトリとなるフォルダを作成します。設定SFTPの接続とCHROOTの設定を行います。マイクロソフトのマニュアルにも記載があります。固有の構成オプションについて説明します。セッションでのみサポートされます。セッションでは、このようなことはできません。セットアップすることもできます。sshd_configに下記の設定を追記して、サービスを再起動します。<接続時のルートディレクトリのパス>ドメインユーザーで接続します。ルートディレクトリ(ChrootDirectoryで指定したディレクトリ)以外は表示されません。ファイルコピーが行えました。SFTP側でファイルを新規作成することもできます。サーバー側とみるとCHROOTのディレクトリに作成されていることがわかります。ローカルユーザーで接続しても同様です。この状態でTeratermなどでSSH接続を行うと、認証は通りますがアプリのウインドウが即時閉じられます。only.」とSFTPのみ許可されるメッセージが表示され接続できません。デフォルトのドメインユーザーで書き込みできるのかCHROOTのフォルダにデフォルトの権限しかないドメインユーザーで書き込みできる理由を念のため・・・・。下記は、SSHサーバーに作成したテスト用のドメインユーザーでログインした状態ですが、ログインを行うとBUILTIN\Usersグループが割り当たります。Usersに所属しているためになります。先ほどのCHROOTように作ったフォルダのNTFSアクセス権を確認してみます。プリンシパルにBUILTIN\Usersが特殊で割り振られています。特殊の中を見るとこのフォルダとサブフォルダに対しては、ファイル・フォルダの作成の権限が付きます。OWNERはフルコントロールが付いているので削除、変更なども問題なくできます。この辺りは、Windowsを使っている通常の動作と変わりないようなので、フォルダ・ファイル操作を厳密に制御した場合は、フォルダやファイルに対してNTFSアクセス権を細かく指定していけば問題なくできそうですね。固有の構成オプションについて説明します。よる発信の場l-w-i.nethttps://linux.die.net/man/5/sshd_configlinux.die.netまとめこの辺り、あまり記載しているサイトがなかった・・・・まぁSFTPとか必要ならLinuxで作っちゃうか・・・・。個人的にLinuxない環境というのも多いので、Windows2019でSFTPが使えるようになったのは大きな意味があるなと感じます。管理人T関連記事Windowsファイルサーバーに別名で接続したい場合、CNAME登録すると問題が発生するのかどうも、Tです。Datacenterのインストール直後の役割と機能一覧どうも、Tです。Windowsの役割と機能一覧をいつも忘れてしまうので備忘録です。Updateの配信の最適化について考えてみるどうも、Tです。Updateの仕組みの1つのある配信の最適化についての備忘録です。暗号化オラクルの修復である可能性があります。検証環境作ってるときにちょこちょこ忘れるので備忘録です。RDP接続するときに下記のメッ...Windows10で現在利用しているドメインアカウントの所属グループやパスワード期限を確認するどうも、Tです。使わずよく忘れるので備忘録です。CS)に証明機関Web登録を追加する(CAと同居構成)どうも、Tです。CSをインストールしましたが、Webブラウザから証明書発行のリクエストを行えるようにWeb登録機能を追加...vsphere8上のWindows10をWindows11にアップグレードしてみたどうも、Tです。vSphere8環境上のWindows10をWindows11にアップグレードする必要があったため備忘録です。CS)でオレオレ認証局(エンタープライズCA)を構築するどうも、Tです。Server2008のライセンス認証が「0x80072F8F」で失敗するどうも、Tです。ライセンス認証で少しはまったので備忘録です。インターネット経由でライセンス認証をしようと思った...PowerShellの出力表示の「...」や改行をいい感じにしたいどうも、Tです。コメントをキャンセルメールアドレスが公開されることはありません。*サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。コメントデータの処理方法の詳細はこちらをご覧ください。挫折したITエンジニアの復活劇.。