프로덕션 시스템을 사용하고 있다는 것을 어떻게 알 수 있습니까?


135

우리 회사의 몇몇은 프로덕션 서버에서 루트 액세스 권한을 갖습니다. 우리는 할 수있는 좋은 방법을 찾고 대단히 우리에 ssh'd 때 취소합니다.

우리가 가진 몇 가지 아이디어는 다음과 같습니다.

  • 밝은 빨간색 프롬프트
  • 껍질을 얻기 전에 수수께끼에 대답
  • 껍질을 얻기 전에 임의의 단어를 입력하십시오

프로덕션 시스템을 차별화하기 위해 어떤 기술을 사용합니까?


11
사람들에게 프로덕션 시스템에 대한 공격을 피하도록 가르치는 방법이 있습니까? 예를 들어 Puppet에 모든 항목을 체크인 한 경우 문제 해결을 위해 프로덕션 시스템에만 로그인하면됩니다.
Alex Holst

37
프로덕션 시스템에서 루트 ssh 액세스를 허용합니까 ???? !!!!!
symcbean

7
@symcbean : 그것은 Sionide가 말한 것이 아닙니다. 그는 당신이 당신의 사용자 계정에 SSH를 한 후에 의미했을 수 있습니다.
Zan Lynx

3
이 질문이 커뮤니티 위키의 후보가됩니까?
MadHatter

15
SSH를 비활성화하여 프로덕션 시스템이라는 것을 분명히 알 수 있습니다. 그보다 더 명확하지는 않습니다.
Franci Penov

답변:


137

빨간색 프롬프트는 좋은 생각입니다.

다른 트릭은 /etc/motd파일 에 큰 ASCII 아트 경고를 넣는 것 입니다.
로그인 할 때 이와 같은 것을 가지고 있으면주의를 기울여야합니다.

 _______ _ _ _____ _____ _____ _____            
| __ __ | | | | _ _ | / ____ | | _ _ | / ____ | / \    
   | | | | __ | | | | | (___ | | | (___ / \   
   | | | __ | | | \ ___ \ | | \ ___ \ / / \ \  
   | | | | | | _ | | _ ____) | _ | | _ ____) | / ____ \
   | _ | | _ | | _ | _____ | _____ / | _____ | _____ / / _ / \ _ \


 _____ _____ ____ _____ _ _ _____ _______ _____ ____ _ _ 
| __ \ | __ \ / __ \ | __ \ | | | | / ____ | __ __ | _ _ / __ \ | \ | |
| | __) | | __) | | | | | | | | | | | | | | || | | | \ | |
| ___ / | _ / | | | | | | | | | | | | | | || | | | . `|
| | | | \ \ | | __ | | | __ | | | __ | | | ____ | | _ | || | __ | | | \ |
| _ | | _ | \ _ \\ ____ / | _____ / \ ____ / \ _____ | | _ | | _____ \ ____ / | _ | \ _ |


 __ __ _____ _ _ _____ _ _ ______ 
| \ / | / \ / ____ | | | | _ _ | \ | | ____ |
| \ / | / \ | | | | __ | | | | | \ | | | __   
| | \ / | | / / \ \ | | | __ | | | | . `| __ |  
| | | | / ____ \ | ____ | | | | _ | | _ | | \ | | ____
| _ | | _ / _ / \ _ \ _____ | _ | | _ | _____ | _ | \ _ | ______ |

이 웹 사이트 에서 이러한 경고를 생성 하거나 figlet 명령을 사용할 수 있습니다 .

무화과

의견에서 니콜라스 스미스가 제안한 것처럼 cowsay명령을 사용하여 일부 용이나 다른 동물과 물건을 꾸밀 수 있습니다.

드래곤 카우 세이

대신 / etc / motd 파일을 사용하여, 당신은 또한 부를 수 cowsay또는 figlet에서 .profile파일.


3
아, 그거 좋아!
Sionide21.

13
어떤 명령을 입력하면 더 이상 볼 수 없습니다.
Nils

3
사실, 그것은 빨간색 프롬프트가 유용한 곳입니다.
Kenny Rasschaert

41
Windows 서버에서는 밝은 분홍색 바탕 화면 색과 밝은 노란색 제목 표시 줄 / 색 구성표를 사용하여 실제로 매우 분명합니다. 이것은 컬러 명령 프롬프트의 우리 버전입니다
Mark Henderson

8
ASCII 드래곤 을 믹스 에 추가하고 싶습니다 .
Nicholas Smith

80

똑같은 것은 아니지만 이 웹 사이트 는 개발자가 프로덕션 시스템을 변경할 때 분홍색 솜브레로를 착용하도록 권장합니다. 아마도 그것들을 훔치기위한 비슷한 규칙을 가질 수 있습니다.

분홍색 솜브레로 입고 개발자


1
하하! 내가 LOL했기 때문에 +1. 그러나 진지하게 사람들은 안경을 쓰면서 안경을 찾을 수 있습니다. 또한 어느 창이 어느 창인지 기억하는 데 도움이되지 않습니다.
Felix Dombek

7
예, 프로세스를 다음과 같이 변경해야합니다. 1) 프로덕션 편집 욕구를 선언하십시오. 2) 챙 넓은 모자를 꺼내서 다른 모든 창문을 끄십시오. 3) 모두가 보는 동안 생산물을한다. 4) 세션에서 로그 아웃하고 챙 넓은 모자를 제거하십시오.
Aric TenEyck

1
"2) 솜브레로를 꺼내고 다른 모든 창문을 닫으십시오"모든 SOP의 2 단계이기 때문에 회사에서는 실제로 작동하지 않습니다. 1 단계는 물론 "조명을 켭니다". 창문을 닫으면이 사무실에서 꽤 어두워 질 수 있기 때문입니다.
Parthian Shot

50

내가 사용한 가장 큰 것은 prod-systems가 분명히 test / dev 인스턴스와 다른 이름을 가진 이산 명명 체계입니다. "Username @ Hostname :"스타일 프롬프트가 눈에 띄게 달라집니다. 그리고 분명히 다른 단어뿐만 아니라 다른 형식도 의미합니다.

예 : PRD-WEB001 대 DEVEL-BOB-WEB001

여기에는 몇 가지 일이 있습니다.

  • 여분의 하이픈 블록은 2 세트 대신 3 세트로 만듭니다.
  • 첫 번째 세트는 길이가 다릅니다.
  • 이름의 전체 길이가 현저하게 다르기 때문에 명령 줄 간격이 서로 다르고 창에서 다른 텍스트에 비해 달라집니다.

무엇보다도 Oops 오류를 피하기 위해 프로덕션을 위해 특별한 터미널 구성이 필요하지 않습니다.

내 경험상, 당신은 당신이 어디에 있는지 끊임없이 상기시키는 무언가를 원합니다. 수수께끼와 같은 로그인 방법은 어떤 창이 어느 것인지 잊을 때까지 약 10 초 동안 좋습니다. ls불필요 한 로그인 배너를 보이지 않게 스크롤하기 위해 잘못된 디렉토리에서 작업을 수행하고 무언가를 인터넷 검색하는 동안 브라우저 창 아래에 터미널 창을 묻고 alt-tab을 잘못된 창으로 다시 연결하면 문제가 발생할 수 있습니다. 크게 다른 명령 프롬프트와 같은 일정한 시각적 신호를 얻는 것이 가장 좋습니다.


그것은 기본 시스템에는 실제로 잘 작동하지만, 링크의 절반이 링크를 멈 추면 dev- *를 prod- *로 변경하자마자 (이전에 몇 번이나 했음에도 불구하고) 때로는 config 파일에서 이전 이름에 대한 수많은 참조를 모두 고칠 때까지 시스템 자체가 반 작동합니다. 특히 독점 소프트웨어가 설치되어 있고 DNS 별칭은 많은 도움이됩니다. 더 나쁜 것은 창을 전환하는 동안 프롬프트를 완전히 잊어 버리기 쉽습니다.
SilverbackNet

개발자는 dev / test / staging / production에서 작동하는 설정을 만들어야합니다 (내가하는 일이지만 또 다른 이야기입니다). bash에 대한 작동중인 '빨간 프롬프트'에 대해서는 ( serverfault.com/a/479718/79266
RichVel

39

명심해야 할 것은 로그인시 표시기만이 아니라 지속적인 알림이어야한다는 것입니다. 종종 누군가 다른 탭에서 동시에 여러 개의 쉘을 실행하고 그들 사이를 이동할 것입니다. 일부는 개발되고 일부는 제작됩니다. 따라서 명령을 실행할 때 해당 시점에 표시기가 있어야합니다. 따라서 특별한 프롬프트를 갖는 것이 내 경험상 가장 좋은 방법이며 수정 된 제목 / 탭 표시 줄은 올바른 창 / 탭을 쉽게 찾을 수있는 좋은 방법입니다.

따라서 프롬프트와 마찬가지로 사용자 (권한 대 비 권한)와 비슷한 동작을 가진 채색 된 프롬프트 (빨간색이 선택되어 있음)와 호스트 이름의 모든 대문자를 사용하는 것이 좋습니다. 몇 가지 예 :

컬러 프롬프트 예

보통 같은

set prompt =  "%{\033[1;44m%}`whoami`@`hostname -s`#%{\033[0m%} "` 

쉘 시작 파일에. 이것은 파란색입니다. 전나무를 빨간색 44으로 41바꾸고 42녹색으로 바꿉니다 . 다른 색상과 와일드 패턴도 가능 합니다.


bash에 대한 작동하는 '빨간 프롬프트'(여기보다 더 어렵다)에 대해서는 serverfault.com/a/479718/79266 에서 내 답변을 참조하십시오 -또한 git 브랜치, 잘린 현재 디렉토리 등을 보여줍니다.
RichVel

14

이것들은 나의 제안입니다.

1) 프로덕션 환경에서 대부분의 명령 (rm, chown, chmod, /etc/init.d/*)에 sudo 액세스가 필요한지 확인하십시오

2) PS1 / PS2를 사용하여 사용자가 Prod 서버에 있음을 나타냅니다.

bash-3.2$  export PS1="[\u@\h \W]\$ "

명령 프롬프트가 다음과 같이 표시됩니다.

[sridhar@prodappserver901 conf]$

3) Putty / SSH 클라이언트를 사용하는 경우 항상 고유 한 배경색 / 프로필을 설정하여 프로덕션 서버를 돋보이게 할 수 있습니다.


# 1은 흥미로운 아이디어지만 데몬 사용자로 실행되는 스크립트 등 RM, chmod를 사용해야 할 수도 있기 때문에 실용적이지
ZAN 살쾡이

13

두 번째 및 세 번째 아이디어는 초기 연결 중에 도움이되지만 여러 터미널을 열어서 서로 이동할 때 가치가 없다는 것을 고려하십시오. sysadmin1138의 이름 지정 사용 아이디어는 적용 할 수있을 때 유용하지만 적용 할 수없는 경우가 많습니다.

내가 정말로 가치가있는 것으로 밝혀진 유일한 것은 유색 프롬프트입니다. 개발 / 테스트에는 녹색, 생산에는 빨간색, DMZ의 기계에는 파란색이 좋습니다. 이렇게하면 교체 컴퓨터를 준비 할 때와 같이 이름이 다른 네트워크에있는 두 대의 컴퓨터가 있어도 어느 컴퓨터에 있는지 쉽게 알 수 있습니다.


11

빨간색 / 특별 명령 프롬프트가 좋습니다. 또 다른 것은 TMOUT 변수를 사용하는 머신에서 더 빠른 자동 로그 아웃 일 수 있습니다. 많은 창을 열면 프로덕션 창이 더 빨리 사라집니다.

이것은 다른 행동으로 이어질 것입니다 :

  1. 나타나게 하다
  2. 테스트
  3. 스테이징 서버를 변경하십시오.
  4. 그런 다음에 만 프로덕션 환경을 신속하게 구축하고 여기에 배포하십시오 (정확한 준비 서버에서 수행 한 것처럼).

9

일반 루트 계정으로 프로덕션 머신에서 작업하는 것은 결코 좋은 생각이 아닙니다.

전체 sudo 권한을 가진 계정이 있어야합니다. sudo 세션 저장을 허용하지 않습니다. sudo su를 금지하십시오. 별도의 비밀번호를 사용하십시오 (개발자 컴퓨터에 사용하지 않은 비밀번호). 아마도 alias를 통해 명령을 실행하기 전에 쉘의 프로덕션 ID에 대해 알리도록 sudo를 조정하십시오.

실수로 실수하는 것은 매우 어려운 일입니다. 그리고 빨간 프롬프트는 결코 아프지 않습니다.


"sudo su"는 "sudo -i"또는 최소한 "sudo su-"를 의미합니까?
Sparr

우와! 스페어입니다! Small world :)
Sionide21

1
사람들이 루트 쉘을 갖지 못하게하는 것은 불가능합니다. ( sudo bash). 모든 '블랙리스트'설정에서 루트 쉘을 얻을 수 있습니다. (주의하면 화이트리스트 설정으로 중지 할 수 있지만 일반적으로 보장되지는 않습니다.)
user606723

1
루트 쉘에 대한 의도 된 액세스를 막을 수는 없습니다. 사람들이주의를 기울이지 않고 무의식적으로 그것을 할 수 있도록 사람들이 익숙한 몇 가지 일반적인 방법 만 있습니다.
Mihails Strasuns

8

빨간색 프롬프트 아이디어를 사용하여에 대한 작업 코드를 찾는 것이 상당히 지루하다는 것을 알았습니다 .bashrc.

여기 내 버전이 있습니다-https .bashrc: //github.com/RichVel/nicer-bash-prompt에 포함될 준비가되었습니다 . 당신이 (예를 들어 생산 호스트 이름에 적합한 패턴을 가지고 그것은 완전히 너무 오래, 호스트에 의해 구동 것 xyprod01, xyprod02그것이 잘 작동 등), 당신은 동일한 사용할 수 있습니다 .bashrc모든 환경에서.

다음과 같이 보입니다 :

빨간 프롬프트의 스크린 샷

이것은 프로덕션 호스트에 빨간색 프롬프트를 포함하여 더 나은 bash 프롬프트를 만듭니다. 또한 현재 git 브랜치와 $ PWD의 마지막 2 개 디렉토리를 보여줍니다. bash에서 Ctrl / R (역 검색)을 수행 할 때 프롬프트 표시가 엉망이되지 않도록주의하십시오.

이 답변 의 행을 따라 모든 터미널 창에서 bash 기록을 동기화하는 선택적 기능도 포함되어 있습니다 . 이것은 좋지만 모든 사람이 원하는 것은 아니기 때문에 기본적으로 비활성화되어 있습니다.


5

IT 설정이 무엇인지 모르겠지만 효과적인 솔루션 중 하나는 루트로 프로덕션 서버에 SSH로 이동 해야하는 특별한 공간을 갖는 것입니다. 데이터 센터가있는 경우 서버 룸 자체가 될 수 있지만 '정상적인'작업이 수행되지 않는 별도의 물리적 위치가 있으면 프로덕션 시스템에 액세스하고 있다는 사실을 지속적으로 상기시켜줍니다.


2
그것은 확실히 효과적이지만, 대부분의 상황에서 매우 비생산적 일 것입니다.
John Gardeniers

나는 요한의 의견에 동의하지만, 이것은 분명히 생각할만한 것입니다.
user606723

@JohnGardeniers : 비생산적인가? 생산성이 떨어질 것입니까?
LarsH

@LarsH, 작업의 다른 부분을 수행하기 위해 불필요하게 다른 방으로 가야하는 것은 생산성을 떨어 뜨립니다. 전체 네트워크는 단일 위치에서 관리 할 수 ​​있어야합니다.
John Gardeniers

@ JohnGardeniers : 이해했습니다. 처음에 "비생산적"이라고 말했을 때, 그 효과가 명시된 목적과 반대되는 것, 즉 생산 기계에 액세스하고 있다는 사실을 지속적으로 상기시키는 것이라고 생각했습니다.
LarsH

4

위의 제안을 조정하십시오. CDE를 유닉스 데스크톱으로 사용하고 .dt / dtwmrc의 메뉴를 통해 액세스하는 모든 프로덕션 시스템으로 사용합니다. 모든 dev 및 UAT 시스템에서 나는 정상적인 색 구성표를 유지하지만 prod 시스템에서는 터미널을 빨간색 배경으로 설정했습니다. 나는 모양이 마음에 들지 않지만 그 점이 중요합니다.

eta-Karol의 기본적으로 동일한 것을 제안하는 것을 놓쳤습니다.


4

생산 기계에 로그인하면 생산 기계임을 경고하는 단락과 지침의 짧은 목록이 표시됩니다. 작업을 안전하게 혼자서 수행 할 수 없다고 생각 될 경우 UNIX 지원을 요청할 수있는 번호가 있습니다. 제작 기계를 작동시킬 수 있다는 알림과 함께 작업 비용이 들며, 모든 작업이 기록되었다는 알림이 표시됩니다.

편집 : 나는 운송 산업에서 일합니다.


아야. 나는 이것이 필요하다는 것을 이해할 수는 있지만 그런 종류의 환경에서 일하지 않아서 기쁘다.
LarsH

1
나는 운송에 종사하는 것이 기쁘다. 그리고이 시스템들은 그들이 내려갈 때 돈을내는 것이 아니라 생명을 희생한다.
Basil

당신도 그렇게 조심해서 다행입니다!
LarsH

3

PuTTY에서는 창의 제목을 특정 저장된 세션의 기본값 이외의 것으로 변경할 수 있습니다. 이것은 창 안에서 무엇을 하든지 항상 창에 남아 있습니다. 작업 표시 줄에도 나타납니다.

창을 확장하고 동작을 클릭하십시오. 창 제목에 다음과 같은 것을 입력하십시오.

  * * * * * * * * * * * * PRODUCTION  * * * * * * * * * * * * PRODUCTION  * * * * * * * * * * * *

3

간단한 대답? 쉘 설정에서 쉘의 색상을 빨간색으로 변경하십시오. 설정하기가 명백하고 간단합니다. 뿐만 아니라 서버 헤더와 달리 몇 가지 명령을 입력해도 사라지지 않습니다.


3

Mac에서 수행 한 작업은 다음과 같습니다. 모든 서버에 대해 ~ / .ssh / config 파일에 해당 항목을 추가합니다. 예 :

Host app13
    HostName server.example.com
    User tom
    PermitLocalCommand yes
    LocalCommand osascript %d/bin/change_terminal_colours.scpt 12 35 35

이 Applescript는 SSH 세션이 설정되면 트리거됩니다. 터미널 배경색을 제공된 RGB 값으로 설정하거나 색상 값이 제공되지 않으면 기본값으로 돌아갑니다. 잠재적으로 까다로운 부분은 SSH 세션의 끝을 가로 채서 색상을 기본값으로 다시 설정하는 것입니다. 이를 위해 기본 ssh 명령을 무시하기 위해 ~ / bin / ssh로 다음 쉘 스크립트를 작성했습니다. 이것은 본질적으로 SSH 명령에 대한 호출을 가로 채서 감 쌉니다. 앨리어싱과 함수를 사용해 보았지만이 솔루션이 가장 효과적이었습니다.

#!/bin/bash
/usr/bin/ssh $@
osascript ~/bin/change_terminal_colours.scpt

다음은 change_terminal_colours.scpt 스크립트 의 소스입니다 . 이것을 ~ / bin 디렉토리에도 넣으십시오.

on run argv
    tell application "Terminal"
        # NOTE: Color values range from 0 to 65535.
        if (count of argv) > 0 then
            set backgroundColor to {(item 1 of argv) * 256, (item 2 of argv) * 256, (item 3 of argv) * 256}
        else
            set backgroundColor to background color of default settings
        end if

        try
            set background color of (selected tab of front window) to backgroundColor
        end try
    end tell
end run

나는 일주일 전에이 솔루션을 작성했으며 그 이후로 사용 해 왔습니다. 다른 사람들이 그 가치를 발견하기를 바랍니다. Googling에서 찾은 솔루션보다 더 효과적이라는 것을 알았습니다.


3

우리 그룹은 visionapp 원격 데스크톱 (2017 편집 : 제품 이름이 바뀌었지만 모양은 같지만 동일한 것으로 생각합니다)을 RDP에서 Windows 시스템으로, SSH로 Linux 시스템으로 사용합니다. 연결은 계층별로 폴더로 그룹화되고 탭 색상이 지정됩니다.

우리가 생산 연결을 열 때마다-bam! -우리 얼굴에 밝은 빨간색이 나타납니다.

여기에 이미지 설명을 입력하십시오

당신이 큰 Windows 상점이고 RDP에 많이 의존한다면 그것은 확실히 가치있는 투자입니다. SSH 만 있으면 다른 훌륭한 도구가있을 것입니다.


2

동일한 워크 스테이션에서 로그인하는 경우 고유 한 프롬프트 (가장 안정적인 솔루션 인 것 같음) 외에도 SSH 세션에 다른 프로파일을 사용할 수 있습니다.

예를 들어 프로덕션 시스템에는 빨간색 배경, 개발에는 녹색, 인프라 (라우터 등)에는 파란색, 로컬 워크 스테이션에는 흰색이 있습니다.

그놈을 사용하는 경우 원하는 프로필로 SSH 연결을 시작하는 쉬운 방법이 있습니다.

gnome-terminal --window-with-profile=production -e 'ssh root@production.example.com'

가장 큰 단점은 클라이언트 측이므로 다른 위치에서 서버에 액세스하는 경우 여전히 특별한 프롬프트가 가장 좋습니다.


2

프로덕션 시스템을 사용하고 있는지 확인하는 다른 방법은 프로덕션 시스템에서 TMOUT (자동 로그 아웃) 기능을 설정하는 것입니다.


1
그것이 어떻게 명확 해 집니까? 명령이나 프로세스가 실행 중일 수 있고 세션이 로그 오프되어 갑자기 중단 될 수 있으므로 잠재적으로 매우 위험합니다.
John Gardeniers

3
방금 TMOUT을 테스트했으며 장기 실행 명령이 실행중인 경우 세션을 종료하지 않는 것처럼 보입니다. 명령 프롬프트에 앉아있을 때만 종료됩니다. 닐스도 이것을 제안했고 그것은 나에게 의미가 있습니다.
sjbotha

1
이것이 TMOUT의 장점입니다. TMOUT을 발견하기 전에 자동 로그를 사용하거나 심지어 살해되었습니다. autolog와 killerd는 그렇게 좋지 않습니다. killerd 또한 버그가 있으며 완전한 CPU 하나를 차단하는 경향이 있습니다.
Nils

2

특정 산업 분야에서 일하는 동안 광범위한 규제 요구 사항으로 인해 모든 분쟁은 향후 모든 분쟁에 대한 모든 활동을 기록합니다. 이로 인해 액세스도 제한되며 소수의 신뢰할 수있는 사용자 중 한 명으로 컴퓨터에 액세스 할 수있는 몇 가지 "메뉴"를 건너 뛰어야합니다. 이 시스템을 설정하면 개인이 생산 또는 QA 환경을 고의적으로 선택한 다음 목록에서 액세스하려는 호스트를 선택해야합니다. 또한 시간 초과 기간이 있으므로 prod 호스트에 로그온하고 다음 날의 환경을 잊어 버리는 상황이 발생하지 않습니다.


2

나는 다른 사람들처럼 프롬프트 변경을 사용합니다. 빠르고 불쾌하지만 내 목적으로는 잘 작동합니다. 프로덕션 시스템에서는 일반 사용자로 빨간색을, prod 시스템에서는 루트로 빨간색 대문자를 제공합니다.

적은 줄로 작성 될 수는 있지만 원하는 경우 다른 2 가지 경우 (비 루트가 아닌 제품)를 조정할 수 있습니다.

프로덕션 서버는 DHCP를 사용하지 않는다는 가정하에 작업하지만 제품 시스템 인 경우 다른 방법으로 작업 할 수 있습니다. 무엇이든지 당신을 위해 일하십시오.

productionSrv=1
grep -qi bootproto=dhcp /etc/sysconfig/network-scripts/ifcfg-*
if [ "$?" -eq 0 ]; then
    productionSrv=0
fi
hostName=`hostname`
userName=`whoami`
if [ $userName == "root" ]
then
    if [ "$productionSrv" == 1 ]
    then
        hostName=`echo $hostName | tr [:lower:] [:upper:]`
        PS1='[\e[0;31m]\u[\e[0m]@[\e[0;31m]$hostName[\e[0m][$?][\e[0;31m][\W][\e[0m][\e[0;31m]\$[\e[0m]: '
    else
        PS1='[\e[0;31m]\u[\e[0m]@[\e[0;35m]$hostName[\e[0m][$?][\e[0;31m][\W][\e[0m][\e[0;31m]\$[\e[0m]: '
    fi
    PATH=$PATH:/sbin/
else
    if [ "$productionSrv" == 1 ]
    then
        PS1='[\e[0;32m]\u[\e[0m]@[\e[0;31m]$hostName[\e[0m][$?][\e[0;31m][\W][\e[0m][\e[0;32m]\$[\e[0m]: '
    else
        PS1='[\e[0;32m]\u[\e[0m]@[\e[0;35m]$hostName[\e[0m][$?][\e[0;31m][\W][\e[0m][\e[0;32m]\$[\e[0m]: '
    fi
fi


스크립트는 흥미롭지 만 프로덕션 시스템에서만 정적 IP를 가정하는 것은 일반적이지 않습니다. 대부분의 경우 모든 서버에는 개발 및 프로덕션 모두 고정 IP가 있습니다.
Martijn Heemels가

1
코스에 대한 말 정말. 우리 dev 시스템은 dhcp 예약을 사용합니다. 호스트 이름, 서브넷, VLAN 등을 비교하는 등 원하는 모든 시스템을 사용할 수 있습니다.
Sirex

@Sirex, 그 반대도 가능합니다. 예를 들어, Amazon EC2 VPS는 프로덕션 서버에서 정적 DHCP 임대를 사용하고 퍼블릭 IP가 전달됩니다. 인스턴스 자체는 최소한 네트워크 인터페이스 수준이 아니라 어떤 퍼블릭 IP가 실행 중인지 직접 알지 못합니다.
Matthew Scharley

1
예. / etc / PRODUCTION 파일을 생성하고 테스트하는 역할 rpm 패키지 만 있으면됩니다. 당신의 보트를 떠 다니는 무엇이든.
Sirex

1

프로덕션 시스템에서 다른 루트 암호를 사용하십시오.

프로덕션 시스템에 특별한 메시지가 출력되도록 특별한 sudo (또는 sudo wrapper)를 만들 수 있습니다.


.. prod 머신에서 다른 루트 비밀번호? 왜 그렇게 생각하지 않았어!?
user606723

또한 sudo에는 이미 많은 구성 옵션이 있습니다. 당신이 아직 이것을 할 수 없다면 나는 놀랄 것입니다. 커스텀 sudo는 테스트되지 않았기 때문에 suid 비트를 얻기에 충분하지 않기 때문에 끔찍한 아이디어입니다.
user606723

1

여기에는 전체 화면의 전경색을 밝은 분홍색으로 만들기위한 기본 퍼티 구성이 있습니다.

  • 제품 : 밝은 분홍색.
  • 회귀 : 옅은 녹색
  • 모델 : 옅은 파란색
  • 개발자 : 보통

잘 작동하지만 다른 아이디어가 마음에 듭니다.

  • Pro : 어떤 것이 전경색을 사용하지 않는 한, 모든 제품 화면은 밝은 분홍색입니다.
  • 단점 : 기본 퍼티 구성 이외의 다른 것을 통해 ssh하면 아무것도하지 않습니다.

1

.bashrc / .bash_profile에서

echo " THIS IS THE PRODUCTION SYSTEM. BE RESPONSIBLE.. " .. 
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.