본문 바로가기
카테고리 없음

DevOps - 도구 설치 2

by ^..^v 2020. 5. 27.
728x90
반응형

Maven Security Setup

사용자 홈 디렉터리 아래의 .m2 디렉터리에서 암호화한 마스터 패스워드의 값을 추출합니다. 

c:\Users\myanj\.m2>mvn -emp password
{YdoXCoBiBQoHXCYbvEUOi/b4gpXqSehBN6D/mo5VNlA=}

.m2 디렉터리에 settings-security.xml 파일을 생성합니다. 

<?xml version="1.0" encoding="UTF-8"?>
<settingsSecurity>
    <master>암호화한_마스터_패스워드</master>
</settingsSecurity>

서버 패스워드의 암호화한 값을 추출합니다.

c:\Users\myanj\.m2>mvn -ep password
{VK4wUQWR+LMHgQYmX0ioYkjiCeuFubSlWtKlIW4fWGA=}

.m2 디렉터리에 settings.xml 파일을 생성합니다.

<?xml version="1.0" encoding="UTF-8"?>
<settings>
  <profiles>
    <profile>
      <id>default</id>
      <repositories>
        <repository>
          <id>release</id>
          <name>release</name>
          <url>http://localhost:8081/artifactory/libs-release-local</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </repository>
        <repository>
          <id>snapshot</id>
          <name>snapshot</name>
          <url>http://localhost:8081/artifactory/libs-snapshot-local</url>
          <releases>
            <enabled>false</enabled>
          </releases>
          <snapshots>
            <enabled>true</enabled>
            <updatePolicy>always</updatePolicy>
          </snapshots>
        </repository>
      </repositories>
    </profile>
  </profiles>
  <activeProfiles>
    <activeProfile>default</activeProfile>
  </activeProfiles>
  <servers>
    <server>
      <id>release</id>
      <username>admin</username>
      <password>암호화한_서버_패스워드</password>
    </server>
    <server>
      <id>snapshot</id>
      <username>admin</username>
      <password>암호화한_서버_패스워드</password>
    </server>
  </servers>
</settings>

 

관리자 권한으로 파워쉘(PowerShell)을 실행해서 Windows OpenSSH 구성요소를 설치합니다. 

PS C:\Windows\system32> $OpenSSHClient = Get-WindowsCapability -Online | ? Name -like OpenSSH.Client*                   
PS C:\Windows\system32> Add-WindowsCapability -Online -Name $OpenSSHClient.Name  

설치가 완료되면 SSH키의 비밀번호를 매번 묻지 않도록 ssh-agent 서비스를 활성화합니다. 

PS C:\Windows\system32> $SSHAgentSvc = Get-Service -Name ssh-agent
PS C:\Windows\system32> Set-Service -Name $SSHAgentSvc.Name -StartupType Automatic
PS C:\Windows\system32> Start-Service -Name $SSHAgentSvc.Name

 

관리자 모드의 파워쉘을 닫고, 일반 권한의 파워쉘을 실행합니다. 

SSH 키를 생성합니다. 생성된 키는 사용자 홈의 .ssh 디렉터리에 저장됩니다. 

PS C:\Users\myanj> ssh-keygen -t rsa -b 4096 -C "깃허브_계정_메일주소"
Generating public/private rsa key pair.
Enter file in which to save the key (C:\Users\myanj/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in C:\Users\myanj/.ssh/id_rsa.
Your public key has been saved in C:\Users\myanj/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:gW7sUY+Chur3kn7jSF8R18/nUxoPZWMmwtpGLvQVx/8 myanjini@gmail.com
The key's randomart image is:
+---[RSA 4096]----+
|             ... |
|       .  o   o. |
|      ..oo = o ++|
|   . + .++* = +oo|
|  . o *.So.= oo.o|
| . . o o. o   o=E|
|.  .. ..      .o.|
|. .+oo.         .|
| .oo=+.          |
+----[SHA256]-----+

ssh-add 명령을 이용해서 키를 ssh-agent 서비스에 등록합니다. 

PS C:\Users\myanj> ssh-add
Identity added: C:\Users\myanj/.ssh/id_rsa (C:\Users\myanj/.ssh/id_rsa)

깃허브에 등록할 퍼블릭 키를 복사합니다.

PS C:\Users\myanj> cat ./.ssh/id_rsa.pub  | clip

퍼블릭 키를 깃허브에 등록합니다.

 

 

깃허브 레포지터리 생성

깃허브에 devops 레포지터리를 생성합니다.

README.md 파일을 생성해서 등록합니다.

PS D:\project> cd .\devops\
PS D:\project\devops> echo "# devops" >> README.md
PS D:\project\devops> git init
Initialized empty Git repository in D:/project/devops/.git/
PS D:\project\devops> git add .\README.md
PS D:\project\devops> git commit -m "first commit"
[master (root-commit) 923fab7] first commit
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 README.md
PS D:\project\devops> git remote add origin https://github.com/myanjini/devops.git
PS D:\project\devops> git push -u origin master
Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Writing objects: 100% (3/3), 230 bytes | 115.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To https://github.com/myanjini/devops.git
 * [new branch]      master -> master
Branch 'master' set up to track remote branch 'master' from 'origin'.

깃허브에 README.md 파일을 확인합니다. 

 

소스트리에 깃저장소를 추가합니다.

 

 

728x90
반응형

댓글