
Apache Guacamole と Active Directory 認証の比較
アパッチワカモレの素晴らしさについては、別の機会にすでに話しました, このプラットフォームは、RDPを介して環境に安全に接続するためのものです, SSH接続, VNCの… スモールビジネスに最適, ラボまたはトレーニング. 今日は、それをActive Directoryに統合し、特定のリソースをさまざまなユーザーに公開する方法を見ていきます!
私が言ったこと, で この 前の投稿, Apache Guacamoleのインストール方法はすでに見てきました, そして、リバースプロキシの背後でそれを保護する方法. この製品を使用して、RDPを使用してリモートデスクトップをインターネットに安全に公開します, VNCやSSHなどと同様に. これにより、ユーザーの組織へのリモート接続を安全に許可できるようになります, 私たちは、彼らが従来のポジションにうまくつながることを許可します, または、たとえば、デスクトップを提供するマシンのプールに対して, 一部のVDIサーバーやリモートデスクトップサーバーなど.
この投稿の考え方は、特定のActive Directoryユーザーが自分のユーザーに接続できるようにし、ローカルユーザーを使用しないようにすることです, それぞれに異なるパスワードが設定されています… そして、Apache GuacamoleがADに接続されると, 後でユーザーに公開する接続を作成できるようになります.
まず、LDAP認証の拡張機能をインストールします :
WGET HTTP://apache.mirror.iphh.net/guacamole/1.3.0/binary/guacamole-auth-ldap-1.3.0.tar.gz tar xvzf guacamole-auth-ldap-1.3.0.tar.gz sudo cp ./guacamole-auth-ldap-1.3.0/guacamole-auth-ldap-1.3.0.jar /etc/guacamole/extensions/
Apache Guacamole /etc/guacamole/guacamole.propertiesの設定ファイルを編集して、ActiveDirectoryへの接続設定を追加します.
guacd-ホスト名: localhost guacd-ポート: 4822 #ユーザーマッピング: /etc/ワカモレ/user-mapping.xml #auth-provider: net.sourceforge.guacamole.net.basic.BasicFileAuthenticationProvider 認証プロバイダ: net.sourceforge.guacamole.net.auth.ldap.LDAPAuthenticationProvider ldapホスト名: DIRECCIÓN_IP_CONTROLADOR_DE_DOMINIO LDAP ポート: 389 # または安全: 636 ldap ユーザー ベース DN: OU=ルート,DC=ドメイン,DC=local ldap-username-attribute: samAccountName ldap-config-base-dn: OU=ルート,DC=ドメイン,DC=ローカル ldap-暗号化方式: 何一つ # または安全: SSLについて, starttls ldap-search-bind-dn:cn=usuario_LDAP,OU=ルート,DC=ドメイン,DC=ローカル ldap-search-bind-password:パスワード
そして、Tomcatを再起動します:
sudo systemctl restart tomcat9
今、私たちは持っています 2 オプション, または、ADスキーマをタップして拡張し、ユーザーに属性を追加します, どういう意味ですか… または、Guacamole機器自体にMySQLを設定します, ユーザーとその割り当てがデータベースに格納される場所. 確かに後者は怖くないです… そこで、MariaDBをインストールしました:
sudo apt-get mariadb-server mariadb-clientをインストールする
/etc/mysql/mariadb.conf.d/50-server.cnf ファイルを編集して、タイムゾーンを MariaDB に設定します。
[mysqldの] ... default-time-zone='+01:00' ...
Guacamoleのデータベースとユーザーを作成する時が来ました, まず、MySQLに接続します:
sudo mysql -uroot
そして私が言ったこと, データベースを作成します, ユーザーと対応する権限を付与します:
データベースbd_guacamoleの作成; CREATE USER 'USUARIO_GUACAMOLE'@'localhost' IDENTIFIED BY 'CONTRASEÑA'; グラントセレクト,挿入する,更新,DELETE ON bd_guacamole.* to 'USUARIO_GUACAMOLE'@'localhost'; フラッシュ権限;
MySQL 認証を使用できるようにするには, まず、次の拡張機能をダウンロードします https://apache.org/dyn/closer.lua/guacamole/1.3.0/binary/guacamole-auth-jdbc-1.3.0.tar.gz?action=download ダウンロードしてインストールします:
Tar ZXFV guacamole-auth-jdbc-1.3.0.tar.gz sudo cp guacamole-auth-jdbc-1.3.0/mysql/guacamole-auth-jdbc-mysql-1.3.0.jar /etc/guacamole/extensions/
コネクタをダウンロードします https://dev.mysql.com/downloads/connector/j/ 私たちのUbuntuのために, 私の場合、 20.04 (https://dev.mysql.com/downloads/file/?id=504646) そして、私たちはそれをインストールします:
sudo dpkg -i mysql-connector-java_8.0.25-1ubuntu20.04_all.deb sudo ln -s /usr/share/java/mysql-connector-java-8.0.25.jar /etc/guacamole/lib/.
DBスキーマを作成します:
cat guacamole-auth-jdbc-1.3.0/mysql/schema/*.sql | sudo mysql -uroot bd_guacamole
最愛のワカモレ設定ファイル/ etc / guacamole / guacamole.propertiesを編集し、最後に追加します:
mysql-ホスト名: ローカルホストmysql-ポート:3306 mysqlデータベース: mysql-username bd_guacamole: mysql-password USUARIO_GUACAMOLE: パスワード
また、Tomcat と Guacd サービスを再起動して、以前の変更を再読み込みしました:
sudo systemctl restart tomcat9 guacd
guacamoleをguacadmin / guacadminとして入力し、パスワードを変更します, だがしかし, 目!
Active Directoryで作成する必要があります (DNベース内) guacadmin という名前のユーザー, また、ここと同じパスワードを持つことはできません. ログインしたのはMySQLのguacadminユーザーで、もう1つはLDAP用であるためです. LDAPユーザーとMySQLユーザーでログインできるようになるため
また、guacadminとADパスワードを使用してGuacamoleに再度ログインすると、DNベースのすべてのユーザーをから確認できます。 “構成” > “ユーザー”.
さて、次は私たちが望むさまざまな接続を作成することです, その後、それらを割り当てます, から “構成” > “コネ” > “新しい接続”
そのため、接続に名前を付けます, 私たちはプロトコルを選びます, リモートデスクトップのRDPである可能性があることを忘れないでください, SSH接続, Telnet (英語), VNCまたはKubernetes,
さらに下へ, パラメータ, 対象マシンのローカルIPアドレスを示します, ユーザー名とパスワードのフィールドを事前に入力できます, または、ユーザーが入力できるように空のままにします, または、ログインしたセッションのユーザーを取得し、これら2つの変数を使用して示すこともできます:
${GUAC_USERNAME}
${GUAC_PASSWORD}
そして何もない, 次に、各ユーザーの構成で、接続を個別に割り当てることができます.
各ユーザーが自分のアカウントでログインすると、, なぜなら、私たちがそれを割り当てるだけなら 1 接続, そのチームに対して自動的にログインします. そして、私たちがいくつかを割り当てた場合, ログインすると、彼は接続🙂するセッションを選択できます
次の投稿では、アクセスをさらに保護するために2要素認証を構成する方法について説明します. いつも通り, あなたが投稿を面白いと思うことを願っています, 抱擁!