{"id":56,"date":"2025-06-15T20:58:25","date_gmt":"2025-06-15T11:58:25","guid":{"rendered":"https:\/\/www.junsaba.pgw.jp:443\/?p=56"},"modified":"2025-06-15T20:58:25","modified_gmt":"2025-06-15T11:58:25","slug":"vmware-unified-gateway%e3%81%a7radius%e3%81%a8totp%e3%82%92%e7%94%a8%e3%81%84%e3%81%9f%ef%bc%92%e6%ae%b5%e9%9a%8e%e8%aa%8d%e8%a8%bc%e3%81%ae%e6%a7%8b%e7%af%89%e6%96%b9%e6%b3%95","status":"publish","type":"post","link":"https:\/\/www.junsaba.pgw.jp:443\/?p=56","title":{"rendered":"VMware Unified Gateway\u3067Radius\u3068TOTP\u3092\u7528\u3044\u305f\uff12\u6bb5\u968e\u8a8d\u8a3c\u306e\u69cb\u7bc9\u65b9\u6cd5"},"content":{"rendered":"\n<p>\u8a8d\u8a3c\u60c5\u5831\u306fWindows Server\u306e\u8cc7\u683c\u60c5\u5831\u3092\u7528\u3044\u3066\u884c\u3044\u307e\u3059<\/p>\n\n\n\n<p>\u307e\u305a\u306ffreeradius\u306edocker\u30a4\u30e1\u30fc\u30b8\u3092\u8abf\u6574\u3057\u307e\u3059<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>mkdir privacyidea\ncd privacyidea\nmkdir -p data log freeradius-pi-module data\/raddb\ncd freeradius-pi-module\nvi Dockerfile\n<strong>FROM khalibre\/freeradius-pi-module:latest\nRUN sed -i -e 's@URL = https:\/\/localhost\/validate\/check@URL = http:\/\/privacyidea\/validate\/check@' \/etc\/freeradius\/rlm-perl.ini<\/strong>\ndocker build . -t freeradius-pi-module:v1.0\ncd ..\nvi data\/raddb\/client.conf\n<strong>client localhost {\n ipaddr = 127.0.0.1\n proto = *\n secret = password\n require_message_authenticator = no\n limit { \n  max_connections = 16\n  lifetime = 0\n  idle_timeout = 30\n}\n\nclient localhost_ipv6 {\n ipv6addr = ::1\n secret = password\n}\n\nclient host.example.com {\n ipaddr = 192.168.0.0\/24\n secret = password\n shortname = test-uag\n}<\/strong>\n\nvi docker-compose.yaml\n<strong>services:\n  postgresql:\n    image: 'docker.io\/bitnami\/postgresql:14'\n    ports:\n      - '25432:5432'\n    environment:\n      - POSTGRESQL_DATABASE=privacyidea\n      - POSTGRESQL_USERNAME=privacyidea\n      - POSTGRESQL_PASSWORD=privacyidea\n    volumes:\n      - privacyidea-db:\/var\/lib\/postgresql\/data\n  privacyidea:\n    image: 'docker.io\/khalibre\/privacyidea:v3.9-patch1'\n    ports:\n      - '21080:80'\n    environment:\n      - DB_VENDOR=postgresql\n      - DB_NAME=privacyidea\n      - DB_HOST=postgresql\n      - DB_USER=privacyidea\n      - DB_PASSWORD=privacyidea\n      - SECRET_KEY=suppersecretkey\n      - PI_PEPPER=secretworduseforadminencrypt\n      - PI_PAGE_TITLE=pivacyIDEA\n    depends_on:\n      - postgresql\n  freeradius:\n    image: 'freeradius-pi-module:v1.0'\n    ports:\n      - \"1812-1813:1812-1813\/udp\"\n    volumes:\n      - '\/root\/uag-twofactor\/privacyidea\/log:\/var\/log\/freeradius:rw'\n      - '\/root\/uag-twofactor\/privacyidea\/data\/raddb:\/data\/raddb:rw'\nvolumes:\n  privacyidea-db:<\/strong>\n\ndocker compose up -d\n\naccess http:\/\/&#91;ip]:21080\nusername: admin password: privacyidea<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>\u8a8d\u8a3c\u60c5\u5831\u306fWindows Se [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-56","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/www.junsaba.pgw.jp:443\/index.php?rest_route=\/wp\/v2\/posts\/56","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.junsaba.pgw.jp:443\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.junsaba.pgw.jp:443\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.junsaba.pgw.jp:443\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.junsaba.pgw.jp:443\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=56"}],"version-history":[{"count":5,"href":"https:\/\/www.junsaba.pgw.jp:443\/index.php?rest_route=\/wp\/v2\/posts\/56\/revisions"}],"predecessor-version":[{"id":62,"href":"https:\/\/www.junsaba.pgw.jp:443\/index.php?rest_route=\/wp\/v2\/posts\/56\/revisions\/62"}],"wp:attachment":[{"href":"https:\/\/www.junsaba.pgw.jp:443\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=56"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.junsaba.pgw.jp:443\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=56"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.junsaba.pgw.jp:443\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=56"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}