NOC online · 24/7Longview, TX · +1 323 412 0665
KinetikatechServers · Security · Websites
KO

Linux 명령 및 셸 기술

SSH: 인프라를 실행하는 연결

ssh는 편의가 아니며 모든 서버의 모든 작업이 수행되는 전송이며 ~/.ssh/config는 오전 3시에 미래의 자신과의 계약입니다. 호스트 별칭, IdentityFile 항목, ProxyJump 대상 및 keepalive 설정은 기억된 플래그 문장을 한 단어 명령으로 바꿉니다. 터널(-L, -R, -D) 및 ControlMaster 멀티플렉싱은 '쉘'을 인프라 명령 표면으로 바꾸는 것이며 둘 다 메모리 작업이 아닌 구성 파일 작업입니다.

핵심 내용

  1. 모든 것을 ~/.ssh/config에 넣으세요. User, IdentityFile, IdentitiesOnly yes 및 ProxyJump를 사용한 호스트 별칭은 'ssh prod-web1'을 한 단어로 만듭니다. 하루에 5번 동일하게 입력되는 플래그 문장은 구성 항목이 누락된 것입니다.
  2. 키는 유일한 게임입니다. ssh-keygen -t ed25519 -C 'role@team', Authorized_keys에 대한 공개 절반 및 순환이 실제로 작동하는 것으로 입증되면 서버의 PasswordAuthentication no입니다.
  3. 점프 호스트는 ssh -J bastion.corp 내부 호스트 또는 호스트 블록의 ProxyJump bastion.corp라는 하나의 플래그로 축소되었습니다. 이전 ProxyCommand 주문은 여전히 ​​작동하며 더 이상 누구의 일도 아닙니다.
  4. 터널은 목적에 따라 사용됩니다. -L 5432:db.internal:5432는 데이터베이스에 연결하고, -D 1080은 엄격한 네트워크를 통해 SOCKS shim으로 사용하며, -R은 로컬 개발 상자를 노출하며 명시적으로 확장하지 않는 한 각각은 localhost에 바인딩됩니다.
  5. ControlMaster 멀티플렉싱(ControlMaster auto, ControlPath ~/.ssh/cm-%r@%h:%p, ControlPersist 10m)은 열려 있을 때마다 핸드셰이크 재실행을 중지하고 즉시 하나의 호스트에서 다중 창 작업을 수행합니다.
  6. Keepalive는 NAT 및 유휴 방화벽 삭제를 통해 세션을 유지합니다. ServerAliveInterval 60과 ServerAliveCountMax 3 클라이언트 측이 대부분의 경우 신비한 '세션이 4분에 종료됨' 보고서를 이겼습니다.
  7. 위험한 액세스를 제한합니다. 순수 포트 전달의 경우 -N(원격 명령 없음), stdin에서 읽는 일괄 작업의 경우 -n, 계정 대신 로그에서 무차별 대입 공격이 종료되도록 fall2ban 및 정상적인 MaxAuthTries를 사용합니다.
  8. 디버그 순서가 중요합니다. ssh -vvv는 구성 구문 분석, 인증 협상 및 채널 실패를 순서대로 표시하고 -G 호스트 덤프는 서버를 건드리지 않고 '왜 해당 키와 해당 사용자를 선택했는지'에 답합니다.

현장 노트

새 키가 실제로 Authorized_keys에 있기 전에 PasswordAuthentication을 비활성화하고 저녁 동안 내 팀을 잠근 적이 있습니다. 이제 의식은 다음과 같습니다. 두 번째 세션이 열리고 키가 작동하는 것으로 입증되었으며 구성에 ServerAliveInterval이 있으므로 유휴 요새 NAT 삭제가 세션 종료를 중지합니다.

자주 묻는 질문

한 문장으로 각각: -L, -R, -D?

-L은 원격 서비스를 향해 로컬 포트를 전달하고, -R은 원격 포트를 시스템으로 다시 푸시하며(노출된 내용을 정확히 알 수 있음), -D는 연결을 통해 동적 SOCKS 프록시를 엽니다.

몇 분 동안 유휴 상태가 되면 세션이 중단됩니다. 고치다?

NAT 또는 방화벽의 유휴 시간 초과가 일반적인 원인입니다. 클라이언트에서 ServerAliveInterval을 설정하고 서버에서 TCPKeepAlive를 정상으로 유지합니다. 동일한 수정 사항이 지하 요새 홉에 사용하는 구성에 속합니다.

ssh-agent 또는 암호문이 없는 키?

에이전트는 항상: 세션당 해독된 키를 보유하므로 키는 암호 문구를 유지하고 자동화는 비대화형으로 유지됩니다. 신뢰할 수 있는 요새에서 ForwardAgent yes는 괜찮으며 ssh-add -l은 자신에게 거짓말을 하기 전에 로드된 내용을 알려줍니다.

터널 사양 재입력을 어떻게 중지합니까?

Host 블록 내부의 LocalForward 및 RemoteForward 라인: 'ssh dbtunnel'은 모든 작업을 수행합니다. 목적당 하나의 항목으로 파일을 읽을 수 있게 유지하고 감사에서 누가 무엇을 전달하는지 정확하게 확인할 수 있습니다.

linux 명령 및 셸 기술에 대한 Kinetikatech의 지원

간단한 제안입니다: 관리자가 서버를 운영할지 아니면 싸울지 결정하는 명령 및 스크립팅 습관: 모든 기본 설치에 포함된 도구를 사용하여 텍스트와 프로세스를 검색, 변환, 전송 및 감독합니다. 당사의 Linux 서버 보안 및 서버 관리 서비스를 맡겨 주십시오. 철저하게 평가되고, 깨끗하게 구현되며, 24시간 모니터링됩니다.

엔지니어와 상담하기

서버 문제? 해킹된 웹사이트? 느린 페이지?

심각한 장애에 30분 이내 대응 — 24시간, 주 7일.

긴급 지원 요청 support@kinetikatech.com