jborean93.win_openssh

Ansible Role win_openssh

win_openssh Ansible Galaxy Role

WindowsホストにWin32-OpenSSHをインストールします。

注: このロールはWin32-OpenSSH v7.7.2.0p1-Betaでテストされています。新しいバージョンでも動作するはずですが、保証はできません。

デフォルトの設定では、このロールは以下のことを行います:

  • GitHubの最新リリースに基づいて、C:\Program Files\OpenSSHWin32-OpenSSHをインストールします。
  • sshdssh-agentサービスを設定し、自動起動に設定します。
  • domainおよびprivateネットワークプロファイルで、ポート22への受信トラフィックを許可するファイアウォールルールを作成します。
  • 公開鍵とパスワード認証を許可するようにsshd_configファイルを設定します。

以下の設定もロールの一部として構成できますが、一部のオプション変数を設定する必要があります:

  • GitHubまたは他のURLからダウンロードする特定のバージョンを指定
  • バイナリをインストールする場所を指定
  • SSHサーバーサービスの設定を管理
  • SSHサービスを自動起動にするかどうかを管理
  • 受信SSHトラフィックを許可するファイアウォールプロファイルを定義
  • ポートやその他の選択したsshd_configの値を指定
  • 現在のユーザーのプロフィールに公開鍵を追加

要件

  • Windows Server 2008 R2以降

変数

必須変数

なし。このロールはデフォルトのオプションで実行されます。

オプション変数

  • opt_openssh_architecture: Windowsアーキテクチャ、32または64のいずれかに設定する必要があります(デフォルト: 64)。
  • opt_openssh_firewall_profiles: 受信SSHトラフィックを許可するファイアウォールプロファイル(デフォルト: domain,private)。
  • opt_openssh_install_path: OpenSSHバイナリをインストールするディレクトリ(デフォルト: C:\Program Files\OpenSSH)。
  • opt_openssh_pubkeys: ユーザーのauthorized_keysファイルに追加するための文字列または文字列のリスト。デフォルトではキーは追加されません。opt_openssh_shared_admin_keyTrueの場合、これらのキーはAdminユーザーの認証には影響しません。
  • opt_openssh_setup_service: sshdサービスコンポーネントをインストールするか、クライアント実行ファイルのみにするか(デフォルト: True)。
  • opt_openssh_skip_start: sshdおよびssh-agentサービスを起動せず、自動起動に設定しない(デフォルト: False)。
  • opt_openssh_temp_path: ダウンロードしたzipファイルと抽出されたファイルを保存する一時ディレクトリ(デフォルト: C:\Windows\TEMP)。
  • opt_openssh_url: OpenSSH zipのダウンロード場所を設定。省略すると、GitHubリポジトリから取得します。
  • opt_openssh_version: GitHubからダウンロードする特定のバージョンを設定。この設定はopt_openssh_urlが設定されていない場合のみ有効です(デフォルト: latest)。
  • opt_openssh_zip_file: OpenSSHのzipリリースファイルへのパス。この設定が定義されている場合、opt_openssh_urlの代わりに使用され、opt_openssh_zip_remote_srcでパスがコントローラーにローカルかWindowsホストにローカルかを管理します。
  • opt_openssh_zip_remote_src: (デフォルト: False)

以下のsshd_config値もカスタマイズできます:

  • opt_openssh_port: SSHサービスがリッスンするポートをPortに合わせます(デフォルト: 22)。
  • opt_openssh_pubkey_auth: SSHサービスがSSHキーによる認証を許可するかどうか(デフォルト: True)。
  • opt_openssh_password_auth: SSHサービスがパスワードによる認証を許可するかどうか(デフォルト: True)。
  • opt_openssh_shared_admin_key: 管理者が__PROGRAMDATA__/ssh/administrators_authorized_keysにある共有認証キーを使用するためにTrueに設定します。Falseに設定すると、%USER_PROFILE%\.ssh\authorized_keysがすべてのユーザーに使用されます(デフォルト: False)。

シェルオプションをカスタマイズして、sshdサービスが新しいシェルを開始する方法を制御できます:

  • opt_openssh_default_shell: OpenSSHインストールで設定されたデフォルトのシェルを上書きします。SSHセッション開始時に実行したい実行可能ファイルの絶対パスを指定する必要があります。
  • opt_openssh_default_shell_command_option: シェルを呼び出すときに使用される引数を設定します。通常の状況では調整する必要はありません。
  • opt_openssh_default_shell_escape_args: シェルを呼び出すときの引数の自動エスケープをスキップします。
  • opt_openssh_powershell_subsystem: powershellのリモーティング用のサブシステムを設定します。8.3フォーマットのパスが必要です:C:\PROGRA~1\POWERS~1\7\pwsh.exe(デフォルト: undefined)。

出力変数

なし

ロール依存関係

なし

例プレイブック

- name: Win32-OpenSSHをデフォルトでインストールする
  hosts: windows
  gather_facts: no
  roles:
  - jborean93.win_openssh

- name: 特定のバージョンのWin32-OpenSSHをカスタムフォルダにインストールする
  hosts: windows
  gather_facts: no
  roles:
  - role: jborean93.win_openssh
    opt_openssh_install_path: C:\OpenSSH
    opt_openssh_version: v7.7.2.0p1-Beta

- name: Win32-OpenSSHのクライアントコンポーネントのみをインストールする
  hosts: windows
  gather_facts: no
  roles:
  - role: jborean93.win_openssh
    opt_openssh_setup_service: False

テスト

このロールをテストするには、testsフォルダに移動し、vagrant upを実行します。これにより、テストを実行するためのWindows Server 2019ホストが立ち上がります。ホストがすでにオンラインの場合、vagrant provisionを実行すると再度テストが実行されます。

バックログ

なし - 機能リクエストは歓迎します

プロジェクトについて

Install Win32-OpenSSH on a Windows host

インストール
ansible-galaxy install jborean93.win_openssh
ライセンス
mit
ダウンロード
388.1k
所有者