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
1k
出会って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
ペパボOpenTelemetry革命
pyama86
2
170
Site Reliability Engineering for GMO
pyama86
9
1.1k
PHPアプリケーションのスケーラビリティと 信頼性を革新する nginx+ngx_mrubyとGoの融合
pyama86
2
290
ペパボOpenTelemetry革命
pyama86
0
700
ChatGPTの活用を体現し、 組織に浸透する技術
pyama86
1
910
リリースフラグと プログレッシブデリバリーを活用した 安全なWEBアプリケーションデプロイ
pyama86
2
170
PHPerのためのOpenTelemetry入門
pyama86
1
220
生成AIで仕事を もっとおもしろくする事例と詳解
pyama86
0
140
Goで実装された高速な 仮想待合室サーバの実装と詳解
pyama86
15
7k
Other Decks in Technology
See All in Technology
Handling focus in 2024
tahia910
0
610
Grafana x PagerDuty Better Together
jacopen
1
330
Babylon.js JAPAN活動紹介 (2024/4)
limes2018
1
130
R3のコードから見る実践LINQ実装最適化・コンカレントプログラミング実例
neuecc
3
3.5k
Google Cloud Next '24 Recap(Cloud Run/k8s)
mokocm
0
370
「知的単純作業」を自動化する、地に足の着いた大規模言語モデル (LLM) の活用
nrryuya
8
6.4k
ルーターでプレゼンする
puhitaku
1
3.4k
Babylon.jsと色々なものを組み合わせる:ブラウザのAPIやガジェットや2D描画ライブラリなど / Babylon.js 勉強会 vol.3
you
PRO
0
190
令和最新版 Ruby プロファイラ "Pf2" のご紹介
osyoyu
0
170
止まらないLinuxシステムを構築する_高信頼性クラスタ入門
koedoyoshida
3
2.4k
How to Lead? Testimonial of a Lead Android Engineer
oleur
1
120
しくじり先生、PharmaXのLLMアプリケーション開発の失敗を語る
pharma_x_tech
0
130
Featured
See All Featured
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
228
16k
The Straight Up "How To Draw Better" Workshop
denniskardys
228
130k
Facilitating Awesome Meetings
lara
43
5.6k
YesSQL, Process and Tooling at Scale
rocio
165
13k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
34
8.9k
Raft: Consensus for Rubyists
vanstee
133
6.3k
It's Worth the Effort
3n
180
27k
Building Effective Engineering Teams - LeadDev
addyosmani
32
1.9k
StorybookのUI Testing Handbookを読んだ
zakiyama
13
4.6k
The Art of Programming - Codeland 2020
erikaheidi
43
12k
The Brand Is Dead. Long Live the Brand.
mthomps
49
29k
No one is an island. Learnings from fostering a developers community.
thoeni
16
2.1k
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