Enviar búsqueda
Cargar
sshdのお話
•
Descargar como ODP, PDF
•
44 recomendaciones
•
9,414 vistas
(^-^) togakushi
Seguir
Tecnología
Denunciar
Compartir
Denunciar
Compartir
1 de 69
Descargar ahora
Recomendados
SSH力をつけよう
SSH力をつけよう
(^-^) togakushi
SSH力をつかおう
SSH力をつかおう
(^-^) togakushi
OpenSSHの認証に証明書を使う
OpenSSHの認証に証明書を使う
Hironobu Saitoh
Dockerイメージの理解とコンテナのライフサイクル
Dockerイメージの理解とコンテナのライフサイクル
Masahito Zembutsu
Docker入門 - 基礎編 いまから始めるDocker管理
Docker入門 - 基礎編 いまから始めるDocker管理
Masahito Zembutsu
わたくし、やっぱりCDKを使いたいですわ〜CDK import編〜.pdf
わたくし、やっぱりCDKを使いたいですわ〜CDK import編〜.pdf
ssuser868e2d
コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」
Masahito Zembutsu
Docker道場「Dockerの基本概念」0825インフラ勉強会資料
Docker道場「Dockerの基本概念」0825インフラ勉強会資料
Masahito Zembutsu
Recomendados
SSH力をつけよう
SSH力をつけよう
(^-^) togakushi
SSH力をつかおう
SSH力をつかおう
(^-^) togakushi
OpenSSHの認証に証明書を使う
OpenSSHの認証に証明書を使う
Hironobu Saitoh
Dockerイメージの理解とコンテナのライフサイクル
Dockerイメージの理解とコンテナのライフサイクル
Masahito Zembutsu
Docker入門 - 基礎編 いまから始めるDocker管理
Docker入門 - 基礎編 いまから始めるDocker管理
Masahito Zembutsu
わたくし、やっぱりCDKを使いたいですわ〜CDK import編〜.pdf
わたくし、やっぱりCDKを使いたいですわ〜CDK import編〜.pdf
ssuser868e2d
コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」
Masahito Zembutsu
Docker道場「Dockerの基本概念」0825インフラ勉強会資料
Docker道場「Dockerの基本概念」0825インフラ勉強会資料
Masahito Zembutsu
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
NTT DATA Technology & Innovation
ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門
VirtualTech Japan Inc.
PHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 と
do_aki
今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門
Masahito Zembutsu
DockerとPodmanの比較
DockerとPodmanの比較
Akihiro Suda
ssh_configのススメ
ssh_configのススメ
Hisaharu Ishii
細かすぎて伝わらないかもしれない Azure Container Networking Deep Dive
細かすぎて伝わらないかもしれない Azure Container Networking Deep Dive
Toru Makabe
バイトコードって言葉をよく目にするけど一体何なんだろう?(JJUG CCC 2022 Spring 発表資料)
バイトコードって言葉をよく目にするけど一体何なんだろう?(JJUG CCC 2022 Spring 発表資料)
NTT DATA Technology & Innovation
Docker超入門
Docker超入門
VirtualTech Japan Inc.
PacemakerのMaster/Slave構成の基本と事例紹介(DRBD、PostgreSQLレプリケーション) @Open Source Confer...
PacemakerのMaster/Slave構成の基本と事例紹介(DRBD、PostgreSQLレプリケーション) @Open Source Confer...
Tatsuya Watanabe
ruby-ffiについてざっくり解説
ruby-ffiについてざっくり解説
ota42y
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
Jun-ichi Sakamoto
PFSなTLS通信を復号する
PFSなTLS通信を復号する
稔 小林
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
Yoshio Hanawa
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
Shota Shinogi
tcpdumpとtcpreplayとtcprewriteと他。
tcpdumpとtcpreplayとtcprewriteと他。
(^-^) togakushi
Unified JVM Logging
Unified JVM Logging
Yuji Kubota
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
NTT DATA Technology & Innovation
Nginx lua
Nginx lua
Moriyoshi Koizumi
PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門
泰 増田
Janog33.5
Janog33.5
(^-^) togakushi
OpenSSH User EnumerationTime-Based Attack と Python-paramiko
OpenSSH User EnumerationTime-Based Attack と Python-paramiko
(^-^) togakushi
Más contenido relacionado
La actualidad más candente
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
NTT DATA Technology & Innovation
ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門
VirtualTech Japan Inc.
PHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 と
do_aki
今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門
Masahito Zembutsu
DockerとPodmanの比較
DockerとPodmanの比較
Akihiro Suda
ssh_configのススメ
ssh_configのススメ
Hisaharu Ishii
細かすぎて伝わらないかもしれない Azure Container Networking Deep Dive
細かすぎて伝わらないかもしれない Azure Container Networking Deep Dive
Toru Makabe
バイトコードって言葉をよく目にするけど一体何なんだろう?(JJUG CCC 2022 Spring 発表資料)
バイトコードって言葉をよく目にするけど一体何なんだろう?(JJUG CCC 2022 Spring 発表資料)
NTT DATA Technology & Innovation
Docker超入門
Docker超入門
VirtualTech Japan Inc.
PacemakerのMaster/Slave構成の基本と事例紹介(DRBD、PostgreSQLレプリケーション) @Open Source Confer...
PacemakerのMaster/Slave構成の基本と事例紹介(DRBD、PostgreSQLレプリケーション) @Open Source Confer...
Tatsuya Watanabe
ruby-ffiについてざっくり解説
ruby-ffiについてざっくり解説
ota42y
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
Jun-ichi Sakamoto
PFSなTLS通信を復号する
PFSなTLS通信を復号する
稔 小林
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
Yoshio Hanawa
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
Shota Shinogi
tcpdumpとtcpreplayとtcprewriteと他。
tcpdumpとtcpreplayとtcprewriteと他。
(^-^) togakushi
Unified JVM Logging
Unified JVM Logging
Yuji Kubota
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
NTT DATA Technology & Innovation
Nginx lua
Nginx lua
Moriyoshi Koizumi
PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門
泰 増田
La actualidad más candente
(20)
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門
PHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 と
今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門
DockerとPodmanの比較
DockerとPodmanの比較
ssh_configのススメ
ssh_configのススメ
細かすぎて伝わらないかもしれない Azure Container Networking Deep Dive
細かすぎて伝わらないかもしれない Azure Container Networking Deep Dive
バイトコードって言葉をよく目にするけど一体何なんだろう?(JJUG CCC 2022 Spring 発表資料)
バイトコードって言葉をよく目にするけど一体何なんだろう?(JJUG CCC 2022 Spring 発表資料)
Docker超入門
Docker超入門
PacemakerのMaster/Slave構成の基本と事例紹介(DRBD、PostgreSQLレプリケーション) @Open Source Confer...
PacemakerのMaster/Slave構成の基本と事例紹介(DRBD、PostgreSQLレプリケーション) @Open Source Confer...
ruby-ffiについてざっくり解説
ruby-ffiについてざっくり解説
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
PFSなTLS通信を復号する
PFSなTLS通信を復号する
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
tcpdumpとtcpreplayとtcprewriteと他。
tcpdumpとtcpreplayとtcprewriteと他。
Unified JVM Logging
Unified JVM Logging
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Nginx lua
Nginx lua
PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門
Similar a sshdのお話
Janog33.5
Janog33.5
(^-^) togakushi
OpenSSH User EnumerationTime-Based Attack と Python-paramiko
OpenSSH User EnumerationTime-Based Attack と Python-paramiko
(^-^) togakushi
マルチプラットホームになった PowerShell 6 でクロスプラットホームする
マルチプラットホームになった PowerShell 6 でクロスプラットホームする
Syuichi Murashima
マルチプラットホームになった PowerShell 6 でクロスプラットホームする
マルチプラットホームになった PowerShell 6 でクロスプラットホームする
Syuichi Murashima
はじめてのWebサーバ構築 さくらvps
はじめてのWebサーバ構築 さくらvps
Atsuhiro Takiguchi
サンドボックス化によるセキュアなプログラミング
サンドボックス化によるセキュアなプログラミング
Yikei Lu
mod_auth_ticket - Bringing Single-Sign-On to lighttpd
mod_auth_ticket - Bringing Single-Sign-On to lighttpd
Taisuke Yamada
Oss dev-04
Oss dev-04
Kohei KaiGai
Osc10do linux nextstep
Osc10do linux nextstep
smokey monkey
STNSサーバーを書いてみた
STNSサーバーを書いてみた
Yoshinori Teraoka
SSH Tips & Tricks
SSH Tips & Tricks
Nobutoshi Ogata
qemuのriscv64にDebianを入れてみた
qemuのriscv64にDebianを入れてみた
Kazuhiro Nishiyama
Azure DevOps で実現する Unity アプリのハイパフォーマンス CI/CD
Azure DevOps で実現する Unity アプリのハイパフォーマンス CI/CD
yaegashi
SSHパケットの復号ツールを作ろう_v1(Decrypt SSH .pcap File)
SSHパケットの復号ツールを作ろう_v1(Decrypt SSH .pcap File)
Tetsuya Hasegawa
おしべめしべ
おしべめしべ
puriketu99 --
効率アップのためのコマンドとツール
効率アップのためのコマンドとツール
Yosuke INOUE
CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1
Kotaro Noyama
環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介
Etsuji Nakai
Osc201703 tokyo-clonezilla-v1.2 j
Osc201703 tokyo-clonezilla-v1.2 j
Akira Yoshiyama
Raspberry Pi 2 誤自宅サーバー移行日記
Raspberry Pi 2 誤自宅サーバー移行日記
96smcln
Similar a sshdのお話
(20)
Janog33.5
Janog33.5
OpenSSH User EnumerationTime-Based Attack と Python-paramiko
OpenSSH User EnumerationTime-Based Attack と Python-paramiko
マルチプラットホームになった PowerShell 6 でクロスプラットホームする
マルチプラットホームになった PowerShell 6 でクロスプラットホームする
マルチプラットホームになった PowerShell 6 でクロスプラットホームする
マルチプラットホームになった PowerShell 6 でクロスプラットホームする
はじめてのWebサーバ構築 さくらvps
はじめてのWebサーバ構築 さくらvps
サンドボックス化によるセキュアなプログラミング
サンドボックス化によるセキュアなプログラミング
mod_auth_ticket - Bringing Single-Sign-On to lighttpd
mod_auth_ticket - Bringing Single-Sign-On to lighttpd
Oss dev-04
Oss dev-04
Osc10do linux nextstep
Osc10do linux nextstep
STNSサーバーを書いてみた
STNSサーバーを書いてみた
SSH Tips & Tricks
SSH Tips & Tricks
qemuのriscv64にDebianを入れてみた
qemuのriscv64にDebianを入れてみた
Azure DevOps で実現する Unity アプリのハイパフォーマンス CI/CD
Azure DevOps で実現する Unity アプリのハイパフォーマンス CI/CD
SSHパケットの復号ツールを作ろう_v1(Decrypt SSH .pcap File)
SSHパケットの復号ツールを作ろう_v1(Decrypt SSH .pcap File)
おしべめしべ
おしべめしべ
効率アップのためのコマンドとツール
効率アップのためのコマンドとツール
CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1
環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介
Osc201703 tokyo-clonezilla-v1.2 j
Osc201703 tokyo-clonezilla-v1.2 j
Raspberry Pi 2 誤自宅サーバー移行日記
Raspberry Pi 2 誤自宅サーバー移行日記
Más de (^-^) togakushi
ささみ麻雀部の紹介
ささみ麻雀部の紹介
(^-^) togakushi
ファイナル・ファンタジー2のデータを解析してみる
ファイナル・ファンタジー2のデータを解析してみる
(^-^) togakushi
手順書の話 Ver.0.3.0
手順書の話 Ver.0.3.0
(^-^) togakushi
仕事の捉え方の話 #ssmjp
仕事の捉え方の話 #ssmjp
(^-^) togakushi
現場で役に立たないsudoの使い方
現場で役に立たないsudoの使い方
(^-^) togakushi
KVM+cgroup
KVM+cgroup
(^-^) togakushi
jenkinsで遊ぶ
jenkinsで遊ぶ
(^-^) togakushi
Pakena #9
Pakena #9
(^-^) togakushi
Sfstudy #2
Sfstudy #2
(^-^) togakushi
ひとりsphinx
ひとりsphinx
(^-^) togakushi
Más de (^-^) togakushi
(10)
ささみ麻雀部の紹介
ささみ麻雀部の紹介
ファイナル・ファンタジー2のデータを解析してみる
ファイナル・ファンタジー2のデータを解析してみる
手順書の話 Ver.0.3.0
手順書の話 Ver.0.3.0
仕事の捉え方の話 #ssmjp
仕事の捉え方の話 #ssmjp
現場で役に立たないsudoの使い方
現場で役に立たないsudoの使い方
KVM+cgroup
KVM+cgroup
jenkinsで遊ぶ
jenkinsで遊ぶ
Pakena #9
Pakena #9
Sfstudy #2
Sfstudy #2
ひとりsphinx
ひとりsphinx
Último
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Hiroshi Tomioka
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Toru Tamaki
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
atsushi061452
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Toru Tamaki
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
Último
(11)
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
sshdのお話
1.
2013/04/23 #ssmjp @togakushi 2013/06/02
MaxStartups 追記 (P.52) sshd のお話
2.
アジェンダ ● はじめに ● 前回までのあらすじ ●
設定ファイルの書式 ● 設定事例集 ● 小ネタ 2 / 69
3.
はじめに ● 特に記述がない限り、全てプロトコル 2
が対 象 – OpenSSH-5.4 からプロトコル 1 はデフォルトで無 効 ● 動作確認は Linux のみ( OpenSSH の移植 版) ● 暗号化とか認証とか詳しくないので、間違っ てたら教えて欲しい!! 3 / 69
4.
OpenSSH リリース状況 バージョン リリース日
バージョン リリース日 OpenSSH-4.1p1 2005/05/26 OpenSSH-5.2p1 2009/02/02 OpenSSH-4.2p1 2005/09/01 OpenSSH-5.3p1 2009/10/01 OpenSSH-4.3p2 2006/02/11 OpenSSH-5.4p1 2010/03/08 OpenSSH-4.4p1 2006/09/27 OpenSSH-5.5p1 2010/04/16 OpenSSH-4.5p1 2006/11/07 OpenSSH-5.6p1 2010/08/23 OpenSSH-4.6p1 2007/03/08 OpenSSH-5.7p1 2011/01/24 OpenSSH-4.7p1 2007/09/05 OpenSSH-5.8p2 2011/05/03 OpenSSH-4.8p1 ない OpenSSH-5.9p1 2011/09/06 OpenSSH-4.9p1 2008/03/31 OpenSSH-6.0p1 2012/04/22 OpenSSH-5.0p1 2008/04/03 OpenSSH-6.1p1 2012/08/29 OpenSSH-5.1p1 2008/07/21 OpenSSH-6.2p1 2013/03/22 4 / 69
5.
前回までのあらすじ ● SSH クライアント –
http://www.slideshare.net/tohakushi/ssh-13118950 ● 周辺ツール – http://www.slideshare.net/tohakushi/ssh-15554045 ● ~/.ssh/config – https://docs.google.com/presentation/d/1TGaiAIKUAC2Y_hgN ● 多段 – https://docs.google.com/presentation/d/1Zdg6qe0eA_353zyLz 5 / 69
6.
設定ファイルの書式 6 / 69
7.
サーバで編集する主なファイル ● /etc/ssh/sshd_config – sshd
が読み込む設定ファイル ● /etc/ssh/sshrc – ユーザがログインした時に最初に実行する内容 ● /etc/motd – 今日のお知らせ ● その他 – 認証用の設定ファイル ( 鍵とかいろいろ ) – ホームディレクトリのユーザ個別のファイル 7 / 69
8.
書式 ● 設定項目と設定値は空白で区切る ● 空白を含む設定値はダブルクォート囲むこと ができる ●
設定値を複数持つ場合は空白で区切る ● 「 # 」から始まる行と空行はコメント扱い ● 設定項目の大文字小文字の区別はない – 設定値は区別される 例:設定項目 設定値 TCPKeepAlive yes 8 / 69
9.
数字とか記号とか ● 数字は時間やポート番号などを指定 – 秒
(s 、単位なし )/ 分 (m)/ 時 (h)/ 日 (d)/ 週 (w) ● 「 % 英字」は特定の文字列に置き換わる – %u :認証しようとしているユーザ名 – %h :そのユーザのホームディレクトリ 9 / 69
10.
パターン ● IP アドレスやドメインの一部を指定 –
0 個以上の非空白文字: * – 1 個の非空白文字: ? – 除外: ! – カンマで連結可能 ● 例 – 192.168.1.? → 192.168.1.1 〜 9 – *.co.jp → 任意の .co.jp ドメイン 10 / 69
11.
ファイルのパス ● 絶対パスで指定 – AuthorizedKeysFile
と AuthorizedPrincipalsFile の み例外 – 絶対パス or 認証しようとしているユーザのホー ムディレクトリからの相対パス 11 / 69
12.
設定事例集 12 / 69
13.
最小構成コンフィグ ● 動作に必要な要件を満たせば OK –
特権分離で使用するユーザ (sshd) ● このユーザは「 /var/empty 」に書き込みができる必要 がある – サーバの秘密鍵 (1 種類以上、デフォルトは /etc/ssh/ssh_host_{dsa,rsa,ecdsa}_key と /etc/ssh/ssh_host_key) # sshd_config UsePrivilegeSeparation no HostKey /path/to/key 13 / 69
14.
使いドコロ ● 動作確認など – 役に立ちそうな
sshd のコマンドラインオプショ ン オプション 説明 -d( 最大 3 つ ) デバッグモード 1 回の接続のみで終了する -f 設定ファイルを指定 -t テストモード 設定の構文エラーのみチェックして終了する -D デーモン化しない ( フォアグランドで動かす ) -e エラーを syslog ではなく、標準エラー出力に出す -T 拡張テストモード 適応される全設定項目を表示して終了する 14 / 69
15.
UsePrivilegeSeparation ● 特権分離を使うか指定 – 認証済みの
sshd を root 以外のユーザ権限で動か す (OpenSSH-3.4 からデフォルト有効 ) – sandbox が指定されていると認証前の sshd も制 限する (OpenSSH-5.9 で追加 ) 15 / 69
16.
MaxAuthTries ● 1 回の接続で何回まで認証を試みれるか –
全ての認証メソッドを通してのトータル回数 – デフォルト 6 回 表示されるエラー 2: Too many authentication failures for <username> 16 / 69
17.
Too many authentication
failures の回避 ● エラーになる原因がわかっていれば回避でき るかも? ● クライアント側で使用する認証メソッド指定 して接続 – ssh -oPreferredAuthentications=password, ... 17 / 69
18.
ChallengeResponseAuthentication ● /etc/login.conf に記述されてる全ての認証形式 が使える(
BSD のはなし?) ● Linux では keyboard-interactive が有効になる – PAM を使ってパスワード認証する 18 / 69
19.
PubkeyAuthentication ● 公開鍵認証を有効にする 19 /
69
20.
AuthorizedKeysCommand ● ユーザの公開鍵を検索するプログラムを指定 する (OpenSSH-6.2
で追加 ) – プログラムを実行するユーザは AuthorizedKeysCommandUser で指定 ( 必須 ) ● 引数に認証しようとしているユーザ名が渡さ れる 20 / 69
21.
使いドコロ ● 公開鍵を LDAP
や DB に探しに行く – AuthorizedKeysCommand で見つからない場合は AuthorizedKeysFile を探す – ローカルファイルシステムの公開鍵を無視したい 場合は「 AuthorizedKeysFile none 」を指定 21 / 69
22.
AuthenticationMethods ● 指定した複数の認証メソッド全ての認証に成 功することを要求する (OpenSSH-6.2
で追加 ) – カンマで区切って並べたものが要求される認証メ ソッド – スペースで区切って複数パターンを指定できる ● プロトコル 1 では使えない ( エラーで起動し ない ) 22 / 69
23.
使いドコロ ● 公開鍵認証した後に、パスワード認証を要求 する – AuthenticationMethods
publickey,password publickey,keyboard-interactive – 公開鍵認証に成功しないとパスワードは要求され ない 23 / 69
24.
PermitRootLogin ● root ユーザが直接ログイン可能か指定 設定値
意味 yes 許可する no 許可しない without-password パスワード認証では許可しない forced-commands-only 強制コマンドが指定されている場合だけ許可 ( 公開鍵に command="..." が設定されてるときのみ ) 24 / 69
25.
ForceCommand ● クライアントが指定したコマンドを無視 (OpenSSH-4.4 で追加
) – 指定したコマンドを強制的に実行 – .ssh/rc( 存在すれば ) を実行 25 / 69
26.
使いドコロ ● 簡易 VPN
を使うときに root でログインする必 要があるので、 PermitRootLogin や Match と 組み合わせてインターフェースの設定だけす る ● Internal-sftp を指定して sftp しかできないよう にする – Match や ChrootDirectory と組み合わせると最強 26 / 69
27.
Match ● 指定した全ての条件を満たした時に、設定値を上書き する (OpenSSH-4.4
で追加 ) – ユーザ名 / グループ名 / ホスト名 / アドレス / ローカルアド レス / ローカルポート – 全ての項目は上書きできないので注意 ( マニュアル参照 ) – 上書きできる項目、条件 ( 書式 ) はバージョンによって増 えている ● 接続元やユーザ名によって異なる設定を使うことが可 能になる 27 / 69
28.
使いドコロ (1) ● 外からの接続は公開鍵、中からの接続はパス ワード認証も許可したい PubkeyAuthentication
yes PasswordAuthentication no Match Address 192.168.1.0/24 PasswordAuthentication yes 28 / 69
29.
使いドコロ (2) ● sftp
しかできないユーザを作る – 「 sftponly 」グループに属するユーザは sftp 以外 のセッションが開始できない Subsystem sftp internal-sftp Match Group sftponly X11Forwarding no AllowTcpForwarding no ForceCommand internal-sftp 29 / 69
30.
ChrootDirectory ● 認証完了後、ユーザの環境を chroot
で閉じ込 める (OpenSSH-4.8 で追加 ) – ログインさせるならそれなりの準備を – 設定値に指定するディレクトリパスは上位層を含 め、所有者は root のみで他のユーザが書き込みで きてはイケナイ 30 / 69
31.
使いドコロ (1) ● ログインしたユーザを制限された環境に閉じ 込める ●
必要なもの – ログインシェル ( とそれが動く環境 ) – デバイス (null, zero,urandom, tty) – 動かしたいコマンド ( とそれが動く環境 ) 31 / 69
32.
最低限必要なもの ● プログラムが使うライブラリは ldd
で調べる – 認証は chroot 前に済まされる ( 使用するログイン シェルは chroot 前に決定する ) # find /opt/chroot -printf '%M %u %g %pn' drwxr-xr-x root root /opt/chroot/lib64 -rwxr-xr-x root root /opt/chroot/lib64/ld-linux-x86-64.so.2 -rwxr-xr-x root root /opt/chroot/lib64/libdl.so.2 -rwxr-xr-x root root /opt/chroot/lib64/libtinfo.so.5 -rwxr-xr-x root root /opt/chroot/lib64/libc.so.6 drwxr-xr-x root root /opt/chroot/bin -rwxr-xr-x root root /opt/chroot/bin/bash drwxr-xr-x root root /opt/chroot/dev crw-rw-rw- root root /opt/chroot/dev/tty crw-rw-rw- root root /opt/chroot/dev/null cr--r--r-- root root /opt/chroot/dev/urandom 32 / 69
33.
使いドコロ (2) ● sftponly
ユーザをさらに制限する ● chroot 環境にはユーザが使うディレクトリだ け用意する Subsystem sftp internal-sftp Match Group sftponly ChrootDirectory /sftp-top X11Forwarding no AllowTcpForwarding no ForceCommand internal-sftp 33 / 69
34.
AllowTcpForwarding ● TCP ポートフォワードの制限 –
「させる」か「させない」かの二択 ● OpenSSH-6.2 から「 remote 」と「 local 」が 追加 34 / 69
35.
使いドコロ ● 踏み台での TCP
ポートフォワードを制限した り 35 / 69
36.
PermitOpen ● TCP ポートフォワードで利用できるポートを 制限
(OpenSSH-4.4 で追加 ) – any :すべてのポートで許可 – none :すべてのポートで拒否 – 複数指定するときは空白で区切る PermitOpen host:port PermitOpen IPv4_addr:port PermitOpen [IPv6_addr]:port 36 / 69
37.
使いドコロ ● 目的のサーバの目的のポートのみへの転送だ けに絞る ● ぶっちゃけ、、、 –
ユーザがログインできるなら stone や nc などプロ グラムを動かして転送を重ねれば目的のポートに たどり着く ( 転送先のホストが制限されてなけれ ば ) – 本気で制限したいなら SELinux などで 37 / 69
38.
Ciphers ● 使用する暗号化プロトコルの順序の指定 ● デフォルト値 –
aes128-ctr,aes192-ctr,aes256- ctr,arcfour256,arcfour128,aes128- gcm@openssh.com,aes256- gcm@openssh.com,aes128-cbc,3des- cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256- cbc,arcfour 38 / 69
39.
使いドコロ ● 脆弱性の見つかった暗号プロトコルを外す ● cbc
plaintext disclosure – 2 の -14 ~ -18 乗の確率で 14 ~ 32bit の平文を回 復できる可能性 – 「 CPNI-957037 」( SSH 通信において一部デー タが漏洩する可能性) ● OpenSSH-5.2 から CBC の優先順位が下げら れた 39 / 69
40.
Banner ● ユーザ認証する前に表示するテキスト ● scp
や sftp で接続したときでも表示される 40 / 69
41.
PrintLastLog ● ログインした時に最後にログインした日付 (lastlog) を表示する –
~/.hushlogin があると表示されない 41 / 69
42.
PrintMotd ● ログインした時に /etc/motd(
今日のお知らせ ) の内容を表示する – ~/.hushlogin があると表示しない 42 / 69
43.
使いドコロ ● 殺伐としたコンソールに突如黒魔道士が!! ● curl https://gist.github.com/shin1x1/5230392/raw/b27b4 >
/etc/motd 43 / 69
44.
UsePAM ● ChallengeResponseAuthentication で
PAM の 使用を許可する ● PasswordAuthentication で PAM を使う 44 / 69
45.
使いドコロ ● ワンタイムパスワード – pam_otpw
を入れて設定 – PAM →でワンタイムパスワードが有効になる ssh でも使う ● PAM でできることならなんでもできる 45 / 69
46.
certificate authentication ● 証明書認証
(OpenSSH-5.4 で追加 ) – ユーザ ( またはホスト ) の公開鍵を CA 局の秘密鍵 で署名 – 署名された公開鍵 ( 証明書 ) と秘密鍵をセットで 使う – 証明書には有効期限を設けれる 46 / 69
47.
簡略図 ユーザ 秘密鍵 ユーザ 公開鍵 CA 局 公開鍵 CA 局 公開鍵 CA
局 秘密鍵 CA 局の秘密鍵で署名された ユーザ公開鍵の証明書 ホスト秘密鍵/公開鍵 コピー 秘密鍵と証明書の セットで認証 クライアント サーバ 証明局 47 / 69
48.
設定方法 (1/3) ● CA
局で署名用の鍵を作成 – ssh-keygen -f ca-key ● サーバに CA 局の公開鍵を登録 – AuthorizedKeysFile で指定 – cert-authority オプションを追加 ● ユーザの公開鍵を CA 局の秘密鍵で署名 – ssh-keygen -s ca-key -I keyid -V +30d id_rsa.pub – 「 -V 」で有効期限を指定 ( 省略時無期限 ) 48 / 69
49.
設定方法 (2/3) ● 署名された鍵をユーザへ –
id_rsa-cert.pub が生成される ● ユーザはペアの秘密鍵でアクセス – ssh -i id_rsa remotehost – 末尾に -cert.pub の付いている証明書が利用されるので 秘密鍵と同じディレクトリに配置 – OpenSSH-5.4 以降の ssh の動作 – ssh-agent で秘密鍵を登録する時に証明書も同時に登録 される 49 / 69
50.
設定方法 (3/3) ● 公開鍵の失効リスト –
廃止された公開鍵のリスト – 登録された公開鍵を使用した認証は失敗する – ssh-keygen -k filename < 鍵 > – RevokedKeys で設定 – 一度登録したら取り消せない – 公開鍵が手元になくてもフィンガープリントや証 明書のシリアルで登録可能 50 / 69
51.
証明書の中身 % ssh-keygen -L
-f id_rsa-cert.pub id_rsa-cert.pub: Type: ssh-rsa-cert-v01@openssh.com user ... Public key: RSA-CERT 13:33:cc:d8:31:83:... Signing CA: RSA ac:a6:ba:61:5a:fc:ff:92:... Key ID: "keyid" Serial: 0 Valid: from 2013-04-22T00:44:00 to 2014-04-22T00:45:11 Principals: (none) Critical Options: (none) Extensions: permit-X11-forwarding permit-agent-forwarding permit-port-forwarding permit-pty permit-user-rc 51 / 69
52.
MaxStartups ● 認証を受け付ける sshd
の数を 3 つのパラメー タで指定 – < 起動数 > : < 切断確率 > : < 最大起動数 > – 起動数を超える接続は、 2 つ目のパラメータで指 定した確率で失敗し、最大で 3 つ目のパラメータ まで増え、それ以降は必ず接続に失敗する。 – デフォルト値: 10:100:10 (OpenSSH-6.1 まで ) – : 10:30:100 (OpenSSH-6.2 から ) 52 / 69
53.
CVE-2010-5107 ● MaxStartups のデフォルト値が適切ではない から認証
DoS ができますよって指摘 ● telnet や対話式になる認証 ( パスワードやパス フレーズの入力 ) を完了させずに連続で接続 すると簡単に引き起こせる ● LoginGraceTime が過ぎるまで新しい接続がで きない 53 / 69
54.
その他 ● アクセスコントロール – DenyUsers/AllowUsers/DenyGroups
/AllowGroups ● パーミッションのチェック ( 厳格なモード ) – StrictModes ● バージョン番号追加文字列 – VersionAddendum まだまだある 54 / 69
55.
小ネタ 55 / 69
56.
RHEL/CentOS リリース状況 (2013/04 現在
) OS 含まれているOpenSSH RHEL CentOS リリース日 パッチ数 リリース日 パッチ数 5.0 openssh-4.3p2-16.el5.src.rpm 2007/03/14 34 2007/04/12 34 5.1 openssh-4.3p2-24.el5.src.rpm 2007/11/07 38 2007/12/02 38 5.2 openssh-4.3p2-26.el5.src.rpm 2008/05/21 39 2008/06/24 39 5.3 openssh-4.3p2-29.el5.src.rpm 2009/01/20 45 2009/03/31 45 5.4 openssh-4.3p2-36.el5.src.rpm 2009/09/02 49 2009/10/21 49 5.5 openssh-4.3p2-41.el5.src.rpm 2010/03/30 51 2010/05/14 51 5.6 openssh-4.3p2-72.el5.src.rpm 2011/01/12 56 2011/04/08 56 5.7 openssh-4.3p2-72.el5_6.3.src.rpm 2011/07/21 57 2011/09/13 57 5.8 openssh-4.3p2-82.el5.src.rpm 2012/02/21 63 2012/03/07 63 5.9 openssh-4.3p2-82.el5.src.rpm 2013/01/08 63 2013/01/16 63 6.0 openssh-5.3p1-20.el6.src.rpm 2010/11/10 31 2010/07/09 31 6.1 openssh-5.3p1-52.el6.src.rpm 2011/05/19 42 2011/12/09 42 6.2 openssh-5.3p1-70.el6.src.rpm 2011/12/06 45 2011/12/20 45 6.3 openssh-5.3p1-81.el6.src.rpm 2012/06/20 51 2012/07/09 51 6.4 openssh-5.3p1-84.1.el6.src.rpm 2013/02/21 53 2013/03/09 53 56 / 69
57.
5 にバックポートされてるもの ● openssh-4.3p2-chroot.patch(5.4
〜 ) ● openssh-4.3p2-forced.patch(5.4 〜 ) ● openssh-4.3p2-biguid.patch(5.7 〜 ) とかいろいろ 57 / 69
58.
6 にバックポートされてるもの ● openssh-5.3p1-sftp_umask.patch(6.1
〜 ) ● openssh-5.3p1-biguid.patch(6.1 〜 ) ● openssh-5.3p1-linux-oomkiller.patch(6.3 〜 ) ● openssh-5.3p1-netcat-mode.patch(6.4 〜 ) とかいろいろ 58 / 69
59.
Out Of Memory
killer ● 起動時に oom_adj を -17 にセット (OpenSSH- 5.4 以降 /* kernels <= 2.6.35 */) ● 起動時に oom_score_adj を -1000 にセット (OpenSSH-5.7 以降 /* kernels >= 2.6.36 */) openssh-server/src> grep -r oom_score_adj * openssh-5.7p1/openbsd-compat/port-linux.c: {"/proc/self/oom_score_adj", -1000}, /* kernels >= 2.6.36 */ openssh-5.8p1/openbsd-compat/port-linux.c: {"/proc/self/oom_score_adj", -1000}, /* kernels >= 2.6.36 */ openssh-5.9p1/openbsd-compat/port-linux.c: {"/proc/self/oom_score_adj", -1000}, /* kernels >= 2.6.36 */ openssh-6.0p1/openbsd-compat/port-linux.c: {"/proc/self/oom_score_adj", -1000}, /* kernels >= 2.6.36 */ openssh-6.1p1/openbsd-compat/port-linux.c: {"/proc/self/oom_score_adj", -1000}, /* kernels >= 2.6.36 */ openssh-6.2p1/openbsd-compat/port-linux.c: {"/proc/self/oom_score_adj", -1000}, /* kernels >= 2.6.36 */ 59 / 69
60.
RHEL/CentOS では ● RHEL6.3
でバックポート rpm/rhel/6.3/openssh-5.3p1-linux-oomkiller.patch: + {"/proc/self/oom_score_adj", -1000}, /* kernels >= 2.6.36 */ ... + {"/proc/self/oom_adj", -17}, /* kernels <= 2.6.35 */ ... rpm/rhel/6.4/openssh-5.3p1-linux-oomkiller.patch: + {"/proc/self/oom_score_adj", -1000}, /* kernels >= 2.6.36 */ … + {"/proc/self/oom_adj", -17}, /* kernels <= 2.6.35 */ ... ( openssh-5.3p1-81.el6.src.rpm 調べ) 60 / 69
61.
RedHat の独自パッチ? ● openssh-5.3p1-ldap.patch(6.1
〜 ) – openssh-ldap.x86_64 : A LDAP support for open source SSH server daemon – 簡単なドキュメントと鍵検索用のプログラムとス キーマが付属 ● AuthorizedKeysCommand と AuthorizedKeysCommandRunAs で設定 61 / 69
62.
ユーザ権限で sshd を動かす ●
制約事項 – PAM が使えない – 1024 より小さいポート番号が使えない ● 準備 – 鍵とコンフィグはユーザ権限で読める場所に 62 / 69
63.
楕円曲線暗号 (ECC) ● OpenSSH-5.7
から楕円 DSA(ECDSA) をサポ ート – OpenSSL のライブラリに依存 – RHEL6/CentOS6 標準の OpenSSL は今のところ 非対応 ● 短い鍵長で今までと同じ強度 – 負荷が下がる – RSA:3072bit ECC:256bit≒ 63 / 69
64.
mosh っぽい何か ● roaming.h(OpenSSH-6.2) –
OpenSSH-5.3 の頃からある void request_roaming(void); int get_snd_buf_size(void); int get_recv_buf_size(void); void add_recv_bytes(u_int64_t); int wait_for_roaming_reconnect(void); void roaming_reply(int, u_int32_t, void *); void set_out_buffer_size(size_t); ssize_t roaming_write(int, const void *, size_t, int *); ssize_t roaming_read(int, void *, size_t, int *); size_t roaming_atomicio(ssize_t (*)(int, void *, size_t), int, void *, size_t); u_int64_t get_recv_bytes(void); u_int64_t get_sent_bytes(void); void roam_set_bytes(u_int64_t, u_int64_t); void resend_bytes(int, u_int64_t *); void calculate_new_key(u_int64_t *, u_int64_t, u_int64_t); int resume_kex(void); 64 / 69
65.
実装がなかった! ● roaming_serv.c(OpenSSH-6.2) 24 /* 25
* Wait for the roaming client to reconnect. Returns 0 if a connect ocurred. 26 */ 27 int 28 wait_for_roaming_reconnect(void) 29 { 30 return 1; 31 } 65 / 69
66.
実装がなかった! ● roaming_serv.c(OpenSSH-6.2) 24 /* 25
* Wait for the roaming client to reconnect. Returns 0 if a connect ocurred. 26 */ 27 int 28 wait_for_roaming_reconnect(void) 29 { 30 return 1; 31 } 66 / 69
67.
まとめ ● いろんな認証方式や暗号方式があるよ – ひとつに絞ると問題が見つかったときに全滅する ●
ユーザに便利に使ってもらう設定もあれば制 限する設定もあるよ ● 万能じゃないので過信するな 67 / 69
68.
参考資料 ● OpenSSH.org – http://www.openssh.org/ja/ ●
OpenSSH 日本語マニュアルページ – http://www.unixuser.org/~euske/doc/openssh/jman/ ● OpenSSH 情報 – http://www.unixuser.org/~haruyama/security/openssh/ ● 入門 OpenSSH – http://www.unixuser.org/~euske/doc/openssh/book/index.html 68 / 69
69.
Connection closed 69 /
69
Descargar ahora