詳細検索

SSH에서 강제 명령만 사용해 VIP를 추가해 보세요

아바타
글쓴이 miyashitak
5분 읽기

SSH에서 강제 명령만 사용해 VIP를 추가해 보세요
日本語에서 번역 • 원문 보기

좋은 아침입니다. 이쪽은 인프라의 미야시타입니다.

이는 서버의 가상 IP를 터미널에서 연결하거나 제거할 때 SSH를 설정하는 절차입니다.
이것은 MHA 내에서 손으로 IP가 실패하는 장소의 이미지입니다.

SSH 연결을 통해 루트 권한을 수행하는 방법은 다음과 같습니다.

·루트 기반 공개키 인증 활성화.

  • 로그인한 사용자가 sudo할 수 있도록 루트로 전환하세요.
    ·루트로 특정 명령만 실행할 수 있게 해줍니다.

세 가지 방법이 있지만, 이번에는 보안 수준을 크게 바꾸지 않는 세 번째 방법을 적용하고자 합니다.
이미 sudo가 가능한 환경이었으면 좋았겠지만, sudo가 안 되니 강제 명령어만 사용해야 합니다.

근무 환경은 다음과 같습니다:

OS:SunOS 테스트 5.10 Generic_147440-19 sun4v sparc sun4v 연결
→ 터미널이라고 불립니다
연결된 서버: Red Hat Enterprise Linux Server 6.2 릴리스 (산티아고)
→ 서버에 전화해.

솔라리스는 요즘 드문 터미널이라는 점을 참고해 주세요. 그리고 복고풍 분위기가 가득한 환경입니다.

(터미널 설정)

·사용자가 로그인할 수 있도록 공개키를 만드세요. 각 명령어마다 두 개의 키를 준비하세요.

[shell]# ssh-keygen -t rsa -N "" -f ~/.ssh/ipadd_command 공개/비공개 RSA 키 쌍을 생성합니다. 식별 정보는 /export/home/test/.ssh/ipadd_command에 저장되었습니다. 공개 키는 /export/home/test/.ssh/ipadd_command.pub에 저장되었습니다. 키 지문 인식: 80:1e:4f:8b:2a:0d:22:fb:e2:c7:22:75:70:ef:db:a2 test@test

# ssh-keygen -t rsa -N "" -f ~/.ssh/ipdel_command 공개/비공개 RSA 키 쌍을 생성함. 식별 정보는 /export/home/test/.ssh/ipdel_command에 저장되었습니다. 공개 키는 /export/home/test/.ssh/ipdel_command.pub에 저장되었습니다. 키 지문: 06:fe:1a:41:fc:2a:02:96:ca:c2:bd:66:64:ed:f5:17 test@test[/shell]

서버에서 실행되도록 명령어를 등록하세요.

[shell]# vi ipadd_command.pub command="IP addr add 172.31.0.1/24 dev eth2 label eth2:1" [/shell] 상단에 붙입니다.

[shell]# vi ipdel_command.pub command="ip addr del 172.31.0.1/24 dev eth2 label eth2:1" [/shell] 상단으로.

(서버 설정)

설정을 바꿔서 루트 사용자로 SSH로 접속하고 명령을 실행할 수 있게 하세요.

[shell]# vi sshd_config #PermitRootLogin 설정을 반영하는 PermitRootLogin ford-commands-only[/shell] 없음

[shell]# 서비스 sshd 재장전 sshd: [ OK ][/shell]

터미널에서 생성된 공개키를 등록하세요.

[shell]# vi ~/.ssh/authorized_keys[/shell] 서버에 추가된 키 정보를 방금 추가한 명령 정보와 함께 추가하세요.
(권한이 부여된 파일이 없다면, 새 파일을 만들어 _keys 주세요.)

이제 설정이 완료되었습니다. 이제 터미널에서 연결합시다.

[shell]# ssh -i ~/.ssh/ipadd_command root@server1 서버1과의 연결이 종료되었습니다. [/shell]

서버 인터페이스를 확인해보세요.

[shell]# ifconfig -a eth2:1 eth2:1 링크 encap:이더넷 HWaddr F8:0F:41:FF:FF:FF inet addr:172.31.0.1 Bcast:0.0.0.0 마스크:255.255.255.0 UP 방송 실행 멀티캐스트 MTU:1500 메트릭:1 메모리:ded20000-ded40000 [/shell]

저는 확실한 IP 주소를 가지고 있습니다. 이제 IP를 삭제하겠습니다.

[shell]# ssh -i ~/.ssh/ipdel_command root@server1 서버1과의 연결이 종료되었습니다. [/shell]

서버의 인터페이스는

[shell]# ifconfig -a eth2:1 eth2:1 링크 encap:이더넷 HWaddr F8:0F:41:FF:FF:FF UP BROADCAST 실행 멀티캐스트 MTU:1500 Metric:1 메모리:ded20000-ded40000 [/shell]

IP가 예상대로 어긋났습니다.

루트 키 인증이 불가능하고 실행할 명령어가 제한되는 환경에서는
쉽게 할 수 있으니 꼭 한번 시도해 보세요.

Related Articles