Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
出会って10分で伝えるSTNSとLinuxの 認証基盤
Search
Kazuhiko Yamashita
August 27, 2016
Technology
1
1.2k
出会って10分で伝えるSTNSとLinuxの 認証基盤
[KIXS Vol.000 インフラLTの祭典]にてLTしたSTNSについての資料です。
Kazuhiko Yamashita
August 27, 2016
Tweet
Share
More Decks by Kazuhiko Yamashita
See All by Kazuhiko Yamashita
Managing Database Migrations in Go Backend Systems
pyama86
0
110
新しい職場の CI が 20 分かかっていたらあなたならどうする?
pyama86
2
1.4k
事業を差別化する技術を生み出す技術
pyama86
4
1.8k
Re:Define 可用性を支える モニタリング、パフォーマンス最適化、そしてセキュリティ
pyama86
9
9.1k
AI時代におけるSRE、 あるいはエンジニアの生存戦略
pyama86
6
1.8k
Tuning GraphQL on Rails
pyama86
2
2.2k
ttlcacheのここがスゴい
pyama86
1
200
クラウドサービスの 利用コストを削減する技術 - 円安の真南風を感じて -
pyama86
3
670
実践ARMアーキテクチャ移行
pyama86
2
2.6k
Other Decks in Technology
See All in Technology
リセラー企業のテクサポ担当が考える、生成 AI 時代のトラブルシュート 2025
kazzpapa3
1
140
神回のメカニズムと再現方法/Mechanisms and Playbook for Kamikai scrumat2025
moriyuya
4
700
『OCI で学ぶクラウドネイティブ 実践 × 理論ガイド』 書籍概要
oracle4engineer
PRO
3
190
実装で解き明かす並行処理の歴史
zozotech
PRO
1
670
ACA でMAGI システムを社内で展開しようとした話
mappie_kochi
1
310
AI時代こそ求められる設計力- AWSクラウドデザインパターン3選で信頼性と拡張性を高める-
kenichirokimura
3
270
Escaping_the_Kraken_-_October_2025.pdf
mdalmijn
0
160
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
3
5.5k
セキュアな認可付きリモートMCPサーバーをAWSマネージドサービスでつくろう! / Let's build an OAuth protected remote MCP server based on AWS managed services
kaminashi
3
270
Trust as Infrastructure
bcantrill
1
370
空間を設計する力を考える / 20251004 Naoki Takahashi
shift_evolve
PRO
4
460
How to achieve interoperable digital identity across Asian countries
fujie
0
140
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
BBQ
matthewcrist
89
9.8k
Code Reviewing Like a Champion
maltzj
525
40k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6.1k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Facilitating Awesome Meetings
lara
56
6.6k
The Cult of Friendly URLs
andyhume
79
6.6k
The World Runs on Bad Software
bkeepers
PRO
71
11k
Mobile First: as difficult as doing things right
swwweet
224
10k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Transcript
QZBNB(.01&1"#0JOD ,*947PMΠϯϑϥ-5ͷࡇయ ग़ձͬͯͰ͑Δ 45/4ͱ-JOVYͷ ೝূج൫
IUUQTUFOTOBQPODPN γχΞɾΤϯδχΞ ࢁԼ!QZBNB ϗεςΟϯάࣄۀ෦ϜʔϜʔυϝΠϯνʔϜ
-JOVYೝূج൫ 1.
-JOVYೝূج൫ 44)ϩάΠϯ Ϣʔβʔ໊ άϧʔϓ໊ʁ ύεϫʔυʁ ެ։伴ʁ
-JOVYೝূج൫ w FUDQBTTXE FUDHSPVQ FUDTIBEPX BVUIPSJ[FE@LFZT w -%"1 w .Z42-
-JOVYೝূج൫ wFUDQBTTXE FUDHSPVQ FUDTIBEPX BVUIPSJ[FE@LFZT ˠVTFSBEE HSPVQBEE w-%"1 ˠ匠͕ඞཁ w.Z42-
ˠϢʔβʔཧʹͰ͔͗͢Δ
-JOVYೝূج൫ ͷঊ ౦ͷঊ ೆͷঊ ͷঊ ࣾͰαʔϏε͝ͱʹཚཱ͞Εͨ -%"1ΛঊͷྗΛ૯݁ूͨ͠ ಉظεΫϦϓτͰ -%"1ิܭըΛߦத -%"1ΞτϦϏϡʔτ͕Ճ͘͢͠൚༻ੑ͕ߴ͍ͷͰɺ
ӡ༻͔ΒᷓΕɺཚཱ͞Εͯ͠·͍͕ͪ
ͲΕ͠ΜͲ͍͚Ͳ Βͳ͖Ό͍͚ͳ͍
ଏͬΆ͍ͳ
IUUQTUOTKQ
45/4 w (PMBOH w 5PNMܗࣜͷઃఆϑΝΠϧ w +40/ΠϯλʔϑΣʔεͷαʔόɾΫϥΠΞϯτ w 8SBQQFSΛࣗ༝ʹมߋͰ͖Δ ϓϥΨϒϧ
45/4
ίϯηϓτ ໊લղܾɺެ։伴औಘɺΞΧϯτೝূͷΈΛఏڙ ͢Δɻଟ͘ΛΒͣɺγϯϓϧʹอͭ͜ͱͰཧɺ Έ߹ΘͤΛ༰қʹɻ https://github.com/STNS/STNS
-JOVYϢʔβʔάϧʔϓͷ໊લղܾ % ls -ltr -rw-r--r-- 1 pyama wheel 0 May
8 00:09 hatena_pepabo.txt % ls -ltr -rw-r--r-- 1 1000 1000 0 May 8 00:09 hatena_pepabo.txt id:1000 is pyama
w TVEPFST w TTIE@DPOpH "MMPX(SPVQT "MMPX6TFST w QBNೝূ -JOVYϢʔβʔάϧʔϓͷ໊લղܾ
ΞʔΩςΫνϟ STNS http(1104) ls libnss-stns libpam-stns query-wrapper key-wrapper /user/name/pyama {
name:pyama, id: 1000, dir:/home/pyama … } αʔόɾΫϥΠΞϯτؒhttpΛར༻ͨ͠ JSONܗࣜͷΠϯλʔϑΣʔε
ઃఆϑΝΠϧαʔό QPSU JODMVEFFUDTUOTDPOGE TBMU@FOBCMFUSVF TUSFUDIJOH@OVNCFS VTFSlCBTJD@VTFS QBTTXPSECBTJD@QBTTXPSE <VTFSTFYBNQMF> JE
HSPVQ@JE LFZT<TTISTB99999ʜ> <HSPVQTFYBNQMF> JE VTFST<FYBNQMF> <TVEPFSTFYBNQMF> QBTTXPSE GEDEBGFBBDBEBCGGCCCDEEDCGB
ઃఆϑΝΠϧΫϥΠΞϯτ api_end_point = ["http://<server-master>:1104", "http://<server-slave>:1104"] user = "basic_user" password =
"basic_password" wrapper_path = "/usr/local/bin/stns-query-wrapper" chain_ssh_wrapper = "/usr/libexec/openssh/ssh-ldap-wrapper" ssl_verify = true LDAPͱͷڞଘՄೳ
XSBQQFSίϚϯυ $ stns-query-wrapper /user/name/pyama { "metadata": { "api_version": 2, "result":
"success", "min_id": 2000 }, "items": { "pyama": { "id": 10301, "password": "", "hash_type": "", "group_id": 2000, "directory": "", "shell": "", "gecos": "", "keys": [ "ssh-rsa xxx" ], "link_users": null } }
ಋೖ w SQN EFCڞʹCJU CJU൛ͷఏڙ SFQPTUOTKQ DVSMGT4-IUUQTSFQPTUOTKQTDSJQUTZVNSFQPTIcTI ZVNJOTUBMMTUOTMJCOTTTUOTMJCQBNTUOT IUUQTHJUIVCDPN45/4TUOTDPPLCPPL
IUUQTHJUIVCDPN45/4QVQQFUTUOT w $IFG 1VQQFUͷΫοΫϒοΫɺϚχϑΣετΛఏڙ 1VQQFUϚχϑΣετ!IGN͕։ൃͯ͘͠Εͨ
ಋೖ Πϯετʔϧʙ44)ެ։伴ೝূ·Ͱඵ
Ϣʔβʔཧ(JUIVC'MPX (JUIVC&OUFSQSJTF͔ΒϢʔβʔσʔλΛ࡞͠ɺ1VMM3FRVFTU ࣗಈςετɾਓͷʹΑΔϨϏϡʔ σϓϩΠ
ӡ༻Πϝʔδ nginx stns nginx stns /HJOYͰ44-Λऴͭͭ͠ɺ$BQJTUSBOPͳͲͷσϓϩΠπʔϧͰ TUOTDPOGΛσϓϩΠ
ӡ༻Πϝʔδ nginx stns nginx stns αʔόͷTUOTDPOGΛฤू͠ɺ4$1STZODͰಉظ
45/4ϘΫ͕։ൃऀͩͬͨ͠΄͏͕͍͍ w ࡶԽͮ͠Β͍పఈͨ͠γϯϓϧ͞ w γϯϓϧ͕ނʹ֦ுੑ͕ߴ͍ w ಋೖͷख͕ؒগͳ͍ w ຊޠυΩϡϝϯτͷఏڙɺ։ൃऀ͕ຊ࣌ؒʹ͍Δ
45/4ͰϢʔβʔཧΛ ࢝ΊΑ͏
5IBOLZPV