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
Stay Hacker 〜九州で生まれ、Perlに出会い、コミュニティで育つ〜
pyama86
2
5k
Managing Database Migrations in Go Backend Systems
pyama86
0
150
新しい職場の CI が 20 分かかっていたらあなたならどうする?
pyama86
2
1.5k
事業を差別化する技術を生み出す技術
pyama86
4
1.9k
Re:Define 可用性を支える モニタリング、パフォーマンス最適化、そしてセキュリティ
pyama86
9
9.9k
AI時代におけるSRE、 あるいはエンジニアの生存戦略
pyama86
6
1.9k
Tuning GraphQL on Rails
pyama86
2
2.4k
ttlcacheのここがスゴい
pyama86
1
220
クラウドサービスの 利用コストを削減する技術 - 円安の真南風を感じて -
pyama86
3
690
Other Decks in Technology
See All in Technology
re:Invent2025 セッションレポ ~Spec-driven development with Kiro~
nrinetcom
PRO
2
170
Everything As Code
yosuke_ai
0
490
スクラムマスターが スクラムチームに入って取り組む5つのこと - スクラムガイドには書いてないけど入った当初から取り組んでおきたい大切なこと -
scrummasudar
1
1.2k
2025-12-27 Claude CodeでPRレビュー対応を効率化する@機械学習社会実装勉強会第54回
nakamasato
4
1.4k
[Data & AI Summit '25 Fall] AIでデータ活用を進化させる!Google Cloudで作るデータ活用の未来
kirimaru
0
4.2k
コールドスタンバイ構成でCDは可能か
hiramax
0
130
ルネサンス開発者を育てる 1on1支援AIエージェント
yusukeshimizu
0
130
AIと融ける人間の冒険
pujisi
0
110
純粋なイミュータブルモデルを設計してからイベントソーシングと組み合わせるDeciderの実践方法の紹介 /Introducing Decider Pattern with Event Sourcing
tomohisa
1
480
Claude Codeを使った情報整理術
knishioka
19
12k
あの夜、私たちは「人間」に戻った。 ── 災害ユートピア、贈与、そしてアジャイルの再構築 / 20260108 Hiromitsu Akiba
shift_evolve
PRO
0
370
Oracle Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
3
260
Featured
See All Featured
WCS-LA-2024
lcolladotor
0
400
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.7k
The Limits of Empathy - UXLibs8
cassininazir
1
200
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
250
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
110
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
How to Ace a Technical Interview
jacobian
281
24k
Visualization
eitanlees
150
16k
Deep Space Network (abreviated)
tonyrice
0
33
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
37
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