FAQ..

SSL, HTTP
그리고 Apache 각각이 요청(request) 처리하는 방식 간의 연관성으로 인하여 SSL 적용된 서버의 어떤 특정 보안 문제에 대한 해결 방법이 항상 명확하지는 않다. 장에서는 그러한 전형적인 상황에서 문제를 어떻게 해결할 것인가에 대하여 논의한다.

어떤 문제를 해결하는 가장 첫번째 방법은 일단 시도해 보는 것이긴 하지만 항상 이전에 내용을 이해하려고 노력해야 한다. 어떤 보안 솔루션의 사용에 있어서 제한(restriction) 연관성(coherence) 알지 못한 상태로 사용하는 것만큼 나쁜 것도 없다!

Cipher Suites and Enforced Strong Security

어떻게 하면 SSLv2만을 사용하는 서버를 생성할 있나? [L]

다음은 SSLv2 프로토콜과 cipher만을 사용하는 SSL 서버를 생성하는 방법이다:

httpd.conf

SSLProtocol -all +SSLv2

SSLCipherSuite SSLv2:+HIGH:+MEDIUM:+LOW:+EXP


어떻게
하면 강력한 암호화(strong encryption)만을 허용하는 SSL 서버를 생성할 있나? [L]

다음은 일곱 가지의 가장 강력한 암호화만을 허용하게 한다:

httpd.conf

SSLProtocol all

SSLCipherSuite HIGH:MEDIUM


어떻게
하면 SSL 서버로 하여금 강력한 암호화만을 허용하면서 수출용 브라우저로 하여금 강력한 암호화를 사용할 있게 업그레이드를 허용할 있을까? [L]

이러한 기능(facility) Server Gated Cryptography (SGC)라고 불려지며, mod_ssl 배포판의 README.GlobalID 문서에서 자세한 내용을 있다. 간단히 말하자면 다음과 같다:

Verisign 같은 수출용 브라우저에서 강력한 암호화를 가능하게 해주는 Verisign 같은 CA 증명서(certificate) 서명된 Global ID 서버 증명서를 서버가 가지고 있다. 브라우저는 수출용 암호(export cipher) 가지고 서버에 접속하면 서버는 자신의 Global ID 증명서를 보내고 브라우저는 증명서를 확인(verify) 어떠한 HTTP 통신이 일어나기 전에 cipher suite 갱신한다. 여기서 생기는 질문은 우리가 어떻게 갱신을 허용하여 strong encryption 강제(enforce) 있는가이다. 다르게 말하면 브라우저가 처음부터 strong encryption 가지고 접속하거나 혹은 strong encryption으로 갱신하여야 하는데 수출용 브라우저는 그러한 수출용 cipher 허용되지 않는다는 것이다.

다음에 트릭이 있다:

httpd.conf

# allow all ciphers for the initial handshake,

# so export browsers can upgrade via SGC facility

SSLCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL

<Directory /usr/local/apache/htdocs>

# but finally deny all browsers which haven't upgraded

SSLRequire %{SSL_CIPHER_USEKEYSIZE} >= 128

</Directory>


어떻게
하면 SSL 서버로 하여금 일반적인 모든 형식의 cipher 허용하면서 특정 URL로의 접근에 대해서만 strong cipher 요구하게 있나? [L]

분명히 strong variant 대한 cipher들을 제한하는 server-wide SSLCipherSuite 사용할 없다. 하지만 mod_ssl per-directory context에서의 cipher suite 재설정을 허용하며 자동으로 새로운 설정을 만족하기 위한 SSL 파라미터들의 재협상(renegotiation) 강요하게 해준다. 따라서 다음과 같이 설정해 주면 된다:

httpd.conf

# be liberal in general

SSLCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL

<Location /strong/area>

# but https://hostname/string/area/ and below requires strong ciphers

SSLCipherSuite HIGH:MEDIUM

</Location>

 

Client Authentication and Access Control

나의 모든 클라이언트들을 알고 있는 경우 어떻게 하면 증명서에 기반하여 클라이언트들을 인증할 있나? (How can I authenticate clients based on certificates when I know all my clients?) [L]

인트라넷과 같이 공동체 내의 모든 사용자를 알고 있는 경우 plain certificate authentication 사용할 있다. 해야 일은 단지 클라이언트들의 증명서를 자신의 CA 증명서인 ca.crt 서명한 증명서를 가지고서 클라이언트를 확인(verify)하는 뿐이다.

httpd.conf

# require a client certificate which has to be directly

# signed by our CA certificate in ca.crt

SSLVerifyClient require

SSLVerifyDepth 1

SSLCACertificateFile conf/ssl.crt/ca.crt


특정
URL 대해서만 증명서를 기반으로 클라이언트를 인증하면서 서버의 다른 부분들에 대해서는 임의의 클라이언트들의 접근을 허용하려면 어떻게 하나? (How can I authenticate my clients for a particular URL based on certificates but still allow arbitrary clients to access the remaining parts of the server?) [L]

이를 위해서는 mod_ssl 제공하는 디렉토리 기반 재설정 기능(per-directory reconfiguration feature) 사용한다:

httpd.conf

SSLVerifyClient none

SSLCACertificateFile conf/ssl.crt/ca.crt

<Location /secure/area>

SSLVerifyClient require

SSLVerifyDepth 1

</Location>


몇몇
URL들에 대해서는 증명서에 기반하여 특정 클라이언트들만을 인증하면서 서버의 나머지 부분들에 대해서는 임의의 클라이언트들로부터의 접근을 허용하고자 하는 경우 어떻게 해야 하나? (How can I authenticate only particular clients for a some URLs based on certificates but still allow arbitrary clients to access the remaining parts of the server?) [L]

중요한 것은 클라이언트 증명서의 다양한 구성요소(ingredient)들을 점검하는 것이다. 보통 이것은 Subject DN(Distinguished Name) 전체 혹은 일부분을 점검하는 것을 의미하며, 이를 위해서 두가지 방법, mod_auth 기반 방법과 SSLRequire 존재한다: 첫번' 방법은 클라이언트가 전체적으로 다른 형식, DN organisation 같은 공통 필드를 가지지 않는 경우 유용하다. 경우 모든 클라이언트들에 대한 패스워드 데이터베이스를 구축하여야 한다. 두번째 방법은 클라이언트들이 DN으로 인코딩되어지는 공통 구조(common hierarchy) 부분인 경우 유용하며, 경우 match 쉽다.

첫번째 방법:

/usr/local/apache/conf/httpd.conf

SSLVerifyClient none

<Directory /usr/local/apache/htdocs/secure/area>

SSLVerifyClient require

SSLVerifyDepth 5

SSLCACertificateFile conf/ssl.crt/ca.crt

SSLCACertificatePath conf/ssl.crt

SSLOptions +FakeBasicAuth

SSLRequireSSL

AuthType Basic

AuthUserFile /usr/local/apache/conf/httpd.passwd

require valid-user

</Directory>


/usr/local/apache/conf/httpd.passwd

/C=DE/L=Munich/O=Snake Oild, Ltd./OU=Staff/CN=Foo:xxj31ZMTZzkVA

/C=US/L=S.F./O=Snake Oild, Ltd./OU=CA/CN=Bar:xxj31ZMTZzkVA

/C=US/L=L.A./O=Snake Oild, Ltd./OU=Dev/CN=Quux:xxj31ZMTZzkVA

 
The second method:

SSLVerifyClient none

<Directory /usr/local/apache/htdocs/secure/area>

SSLVerifyClient require

SSLVerifyDepth 5

SSLCACertificateFile conf/ssl.crt/ca.crt

SSLCACertificatePath conf/ssl.crt

SSLOptions +FakeBasicAuth

SSLRequireSSL

SSLRequire %{SSL_CLIENT_S_DN_O} eq "Snake Oil, Ltd." and \
%{SSL_CLIENT_S_DN_OU} in {"Staff", "CA", "Dev"}

</Directory>




Posted by Golmong
:


출처 : 그루터기님 블로그


좀 더 전문적인 자전거 라이딩을 즐기시려면 정말 중요한 것이 내 몸에 맞는 피팅이죠.. 

저도 공부하는 차원에서 너무 복잡한 내용은 말고 기본적인 사항만 간단하게 정리해서 올려봅니다.

피팅 안된 수백만원짜리 자전거보다 내 몸에 맞는 저렴한 자전거가 훨씬 더 편한 법입니다.

  정확한 피팅으로 현재 자전거에 애정을 더욱 쏟으시고 지름신을 퇴치하여 가정경제에 도움이 되었으면 합니다.^.^

 

 

1. 필요한 신체 각 부위의 길이 측정 

 

1) 다리 안쪽 길이 인심(Inseam)

 

인심이란 발바닥부터 가랑이사이의 다리길이를 말하며 측정방법은 다음과 같습니다.

 

1) 신발을 벗고 양발을 약 20cm 정도 벌린상태에서 벽에 등을 대고 똑바로 섭니다.

2) 책을 가랑이 사이에 끼우고 자전거 안장에 올라탄 정도의 압력으로 몸 위쪽으로 밀어올립니다.

3) 책과 가랑이가 만나는 지점을 벽에 표시한 후 바닥에서 그 지점까지의 거리를 측정합니다.  

 

2) 상체 길이(Upper Body Length) 

 

의자에 앉은 상태에서 의자바닥과 어깨 중간까지의 수직거리입니다.

 

3) 전체 팔 길이(Total Arm Length)

 

벽에 기대어 펜을 쥐고 팔을 쭉 뻗은 상태에서 벽과 펜 사이의 수평거리입니다. 

 

 

2. 신체 수치에 따른 자전거 주요부위 적정 사이즈 계산

 

 

1)  프레임 사이즈(시트튜브 길이)

 

자전거 사이즈의 기준이 되는 프레임 사이즈는 시트튜브 길이로 나타냅니다.

B.B부터 탑튜브와 시트튜브가 만나는 교점 까지의 거리이며 공식은 다음과 같습니다.

(메이커별로 탑튜브와의 교점이 아닌 시트튜브 상단 끝까지의 거리를 기준으로 하는 수가 있으므로 실측하는게 좋습니다.)

 

* 로드바이크 경우  :  Inseam × 0.65 (주로 mm나 cm 단위)

 

* MTB 경우  :  {(Inseam × 0.65)-10} ÷ 2.54 (주로 인치단위..  1인치=2.54cm)

                   또는 {(Inseam × 0.65) ÷ 2.54} - 4 인치

 

* 예) 인심이 80cm 인 경우,

 

   로드바이크 : 80 × 0.65 = 52 cm

   MTB : {(80 × 0.65)-10} ÷ 2.54 16.5 인치  

 

* 신장별에 따른 개략적 해당 사이즈

 

키 (cm)

 

인심

시트튜브(수평)

시트튜브(슬로핑) 

유효탑튜브

사이즈

MTB치수 (인치)

165

 74 

 48~49 

 46~47 

 515~520

 XXS

 14.9"

169

77

50~51

 48~49 

 520~530

 XS

 15.7"

173

80

 52~53 

 50~51 

  530~540 

 S

 16.5"

177

83

 54~55 

52~53

 540~560

 M

 17.2"

181

86

56~57

54~55

 560~575

 L

 18.0"

185

89

 58~59 

 56~57 

 575~585

 XL

 18.8"

189

92

60~61

 58~59 

 585~600

 XXL

 19.5"

 

 

2)  안장 높이(Saddle Height)

 

페달을 제일 하단수직으로 내린 상태에서 페달축과 안장 상단까지의 거리입니다. 

 

* 로드바이크나 MTB라도 로드주행 위주일 경우   Inseam × 1.09

 

* MTB 경우  :  Inseam × 1.05

  

복잡하게 치수 재고 계산하기 귀찮다면 단순하게 안장에 앉아 페달을 맨 밑으로 위치했을 때 뒤꿈치로 밟으면 다리가 쭉 펴지고 앞꿈치로 밟으면 약간 구부러지는 정도의 높이로 맞추시면 됩니다. 

 

3) ③ + ④ = 유효탑튜브길이 + 스템길이 = 오버럴 리치(Overal Reach)

 

오버럴 리치란 유효탑튜브길이와 스템길이를 합한 거리 즉 핸들바 중앙과 안장 중앙 사이의 수평거리로서 쾌적하고 효율적인 라이딩을 결정 짓는 가장 중요한 자전거피팅의 요소입니다.  따라서 시트튜브를 기준으로 하는 프레임 사이즈도 중요하지만 더불어 탑튜브의 길이를 자전거 선택의 주요한 기준으로 삼아야 합니다.  시트튜브 기준으로만 자전거 차체 사이즈를 선택하면 시트튜브 기준 차체 사이즈는 맞는데, 실제 라이딩시 몸에 무리를 주는 경우가 발생할 수 있습니다.

 

* 오버럴 리치(Overal Rech) {상체길이(Upper Body Length) + 전체 팔길이(Total Arm Length)} ÷ 2

 

 

3. 기타 피팅 

 

1) 안장 수평 조정

 

기본적으로 안장은 수평 상태가 되도록 하여야 합니다.  그러나 로드 바이크(Road Bike)의 경우, 안장의 앞 코를 아주 약간 낮게 해주는 것이 좋고  MTB의 경우, 안장의 앞 코가 약간 높게 맞추어 주는 것이 좋습니다만 개인차가 있으므로 자기가 편하게 맞춥니다.

 

2) 안장 앞뒤 위치 조정

 

편안한 자세로 안장에 앉아 양쪽 페달(크랭크 암)이 수평(9시-3시 방향)가 되도록 위치한 뒤 무릎 앞쪽이 페달의 중심축과 수직 상태에 있는지 확인하고  이때 만일 무릎 앞쪽이 페달 중심축과 수직 상태가 안될 경우, 수평 상태에서 안장의 전후를 맞도록 조금씩 조정합니다.   위에서 언급한 오버럴 리치 즉 몸과 핸들 바 사이의 거리를 다른 요소들을 다 무시하고 안장의 앞 뒤  위치조정만으로 무리하게 맞추시려 하시면 절대 안됩니다. 

 

 

3) 크랭크 암 길이


고단 기어를 사용하여 페달의 회전을 적게 하면서 속도를 올리고자 할 때나 긴 언덕을 오를 때, 페달을 적게 돌리고 큰 힘을 얻고자 할 때에는 긴 크랭크 암을 사용하며 반대로 크랭크를 빨리 돌려 속도를 올리고자 할 때는 좀 짧은 크랭크를 사용하는게 힘의 손실이 적습니다.

신장이 175cm 이하는 170mm
신장이 176cm~185cm 까지는 172,5mm
신장이 186cm 이상은 175mm 길이의 크랭크 암을 사용하면 됩니다.
 

 

4) 핸들바 높이

 

MTB의 경우 상체가 약 45도 정도 자연스럽게 숙여지는 자세가 나올 수 있도록 핸들바는 안장보다 3~4 cm 정도 낮게 설정하고 로드바이크는 용도, 구조상 더욱 낮게 됩니다만 이도 개인차가 있습니다.  낮을수록 속도 내기 좋으나 어깨나 손목에 부담이 많이 오고 자세가 높으면 편하기는 하나 바람저항으로 속도내기 어려우며 엉덩이쪽에 부담이 갑니다.  여러 자세로 테스트해 보고 본인에 맞는 편한 자세를 찾으셔야 합니다.


Posted by Golmong
:



출처 : 바이크매거진

산악자전거는 XTR, 로드바이크는 듀라에이스(DURA-ACE). 시마노는 산악 뿐 아니라 로드 부품에서도 강한 경쟁력을 가지고 있다. 
입문용을 위한 부품 라인업부터 프로 선수들도 사용하고 있는 '듀라에이스'까지 그 라인업의 차이를 알아보자.

시마노 로드용 부품 라인업

라인업 구성
시마노의 로드 라인업은 마니아들과 선수들에게 모두 적합한 듀라에이스(DURA-ACE) 모델을 최상급으로 하여, 울테그라(ULTEGRA), 105, 티아그라(TIAGRA), 소라(SORA), 2300 시리즈 순으로 등급을 나눈다.
울테그라는 선수들보다는 동호인들에게 알맞는 정상급 라인업이며, 105 라인업부터는 레져 스포츠에 어울리는 모델로 개발된다.

최상급 라인업 듀라에이스(DURA-ACE)
'듀라에이스'는 무게와 강성, 성능에 있어서 최상의 품질을 유지한 로드 부품 라인업이다. 고속 주행 중에도 부드럽고 뛰어난 조작성을 유지할 뿐 아니라 Di2와 같은 최첨단 제품까지 모두 듀라에이스 제품군에 속해 있다.

카본을 활용하는 듀라에이스의 STI 레버는 뒤 변속을 담당하는 
오른쪽 레버의 스트로크를 짧게 만들어 더 빠르고 부드럽게 변속할 수 있도록 하였다.

뒤 변속에 따른 트리밍이 필요없어 라이딩에 집중할 수 있도록 설계한 앞 디레일러

할로우글라이드 기술을 활용하여 더 가볍고 강성이 좋아진 체인링

재사용이 가능한 퀵링크 체인 시스템. 공구 없이 쉽게 체인일 교체할 수 있다.

시마노는 전동 변속 시스템인 Di2를 선보이며 최첨단 기술을 적용하였다.
기존처럼 케이블을 밀고 당기는 것이 아니라 버튼을 누르듯이 변속할 수 있어
변속에 대한 스트레스를 최소화 하였다.

뒤 변속에 따라 자동으로 트리밍 되는 앞 디레일러는 Di2의 기술력을 보여주고 있다.

4개의 변속레버로 TT 자전거에도 편한 변속 시스템을 제공한 Di2


울테그라(ULTEGRA)로 최고의 기술력을 느끼자.
시마노 울테그라 라인업은 듀라에이스를 닮은 정상급 라인업에 속한다. 특히 2010년 모델부터는 외관까지도 거의 듀라에이스와 비슷한 특징을 보이고 있다.
할로우글라이드, 할로우테크 등의 기술과 카본 레버 등으로 무게, 강성을 모두 만족시키고 있다.
할로우글라이드 디자인이 채택된 울테그라 크랭크세트
Top 기어와 Low 기어 간의 간격이 넓어져서 체인 간섭이이 월등이 줄어들었다.

카본을 사용한 콘트롤 레버
브레이크 피봇의 위치 변경으로 브레이크 작동을 한층 향상시켰다.

젖은 환경에서도 거의 100%의 제동력을 보여줄 수 있도록
새로운 합성 브레이크 패드를 사용하였다.


새로워진 105를 만나자.
실버와 블랙 색상으로 출시된 105
2010년 시마노는 105 라인업에서 블랙과 실버 2가지 색상을 출시하면서 소비자들에게 자신의 자전거와 어울리는 색상을 찾을 수 있는 기회를 주었다. 특히 고급스러운 블랙 라인업은 강렬한 느낌을 주며 인기를 끌고 있다.
케이블 라이팅이 내부로 연결되어 깔끔한 핸들바로 꾸밀 수 있다.

10단 SIS 리어 디레일러는 와이드 링크 설계로 강성과 내구성이 증가되었다.

새롭게 설계된 이너&아웃터 플레이트로 파워 전달과 변속 능력이 향상되었다.


레져 스포츠를 위한 티아그라(TIAGRA)
시마노 티아그라는 스포츠와 피트니스 라이더를 위한 적절한 선택이다. 최고급 수준의 기술력을 적용하면서도 레져 스포츠에 적당한 고유의 정체성을 유지하고 있다.

레크레이션 라이더를 위한 소라(SORA)
가벼운 라이딩, 또는 입문용을 위한 자전거에서 시마노 소라 부품군은 많이 사용되고 있다. 9단 카세트 스프라켓을 기본으로 장착한 소라 라인업은 고급스러운 외관과 쉬운 작동 레버의 사용으로 인기를 얻고 있다.


로드바이크의 쉬운 접근을 위해 '2300' 시리즈
누구가 쉽게 로드바이크의 매력을 느낄 수 있도록 시마노는 2300 시리즈를 출시하였다. 이것은 'SHIMANO' 로고를 제품에 사용하고 있으며, 8단 시스템의 STI 레버와 플랫 핸들바를 활용할 수 있는 특징이 있다.
소라 스타일의 변속 8단 레버

앞 변속 능력이 좋은 SG-X 체인링 사용


시마노는 로드 부품군의 라인업도 프로 선수들을 위한 정상급부터 레크레이션 라이딩을 위한 보급형까지 두루 출시하고 있다. 전동 변속 시스템인 Di2 등 새롭고 참신한 제품을 선보이는 시마노의 다음 라인업을 기대해 본다.

Posted by Golmong
: