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
반응형
댓글