Redmine

Ubuntu 22.04.03에서 Redmine 5.0 구성하기 [ 1 ]

정도비_ 2025. 3. 19. 13:59
반응형

Redmine 구성 방법은 개인이 요구사항에 맞게 수정되었습니다. 

sudo 활성화 된 계정으로 로그인 후 다음 명령을 실행하여 패키지를 설치합니다 :

$ sudo apt update
$ sudo apt upgrade
$ sudo apt install ruby ruby-dev apache2 libapache2-mod-passenger certbot python3-certbot-apache build-essential mysql-server mysql-client libmysqlclient-dev git subversion

SSH를 통한 공개 키 인증으로 관리 계정을 구성합니다 :

$ sudo adduser admin  
Adding user `admin’ …  
Adding new group `admin’ (1001) …  
Adding new user `admin’ (1000) with group `admin’ …  
Creating home directory `/home/admin’ …  
Copying files from `/etc/skel’ …  
New password:  '<Enter your admin account password here>'
Retype new password:  '<Re-enter your admin account password here>'
passwd: password updated successfully  
Changing the user information for admin  
Enter the new value, or press ENTER for the default  
Full Name []: 'Administrator'
Room Number []:  
Work Phone []:  
Home Phone []:  
Other []:  
Is the information correct? [Y/n] 'Y'

그리고 sudo를 통해 계정에 루트 액세스 권한을 부여합니다:

$ sudo usermod -aG sudo admin

각 계정에 고유한 공개/개인 키 쌍을 설정하고 SSH가 공개 키 인증을 사용하도록 강제하는 것이 좋습니다. 또한 클라우드 제공업체의 기본 Ubuntu 설치에 로그인할 수 있는 루트 계정이 포함된 경우 SSH를 통한 루트 액세스를 비활성화해야 합니다.

$ sudo -u admin bash
$ cd
$ mkdir .ssh
$ chmod 700 .ssh
$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/admin/.ssh/id_rsa):  'admin_keys'
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/admin/.ssh/id_rsa
Your public key has been saved in /home/admin/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:yCpiV8qk2JUbQn2dsPG+OaCULscmNZSB05+gDCoLQrA admin@localhost
The key’s randomart image is:
+—[RSA 3072]—-+
|o  o. o          |
|.oo.oo * .       |
|Eo.o+oo.+        |
|=.o. =oo         |
|+…O.+ S        |
|o.+Bo* . o       |
|oo=+O   +        |
|…*     .       |
|                 |
+—-[SHA256]—–+

$ mv admin_keys admin_keys.pem
$ tar -cvzf ~/admin_keys.tar.gz admin_keys.pem admin_keys.pub
$ mv admin_keys.pub .ssh/authorized_keys
$ chmod 600 .ssh/authorized_keys
$ rm admin_keys.pem

위의 명령어는 관리자 계정이 공개 키 인증을 사용하도록 구성합니다. 공개/개인 키 쌍은 관리자 계정 로그인 디렉토리에 있는 admin_keys.tar.gz 파일에 저장됩니다.

admin_keys.tar.gz 파일을 로컬 시스템에 복사하고 키쌍을 어딘가에 저장해야 합니다. 곧 서버에 로그인하려면 개인 키(.pem 파일)가 필요합니다.

클라우드 제공업체에 따라 공개 키 인증만 허용하도록 보안 셸을 구성해야 할 수도 있습니다. 다음 명령을 사용하여 /etc/ssd/sshd_config 파일을 검토합니다: 하지만 저는 SSH 설정에 대해 아무것도 하지 않았습니다. 아래 설정은 선택사항입니다.

----------------------------------------------------------------------------------------------

$ sudo vi /etc/ssh/sshd_config

다음 줄이 다음과 같이 설정되어 있는지 확인하고 필요한 경우 변경합니다:

PubkeyAuthentication yes  
UsePAM no  
PermitRootLogin no  
PasswordAuthentication no  
ChallengeResponseAuthentication no

----------------------------------------------------------------------------------------------

서버의 호스트 이름을 업데이트하고 서버를 재부팅하여 모든 업데이트와 다운로드된 업데이트를 적용합니다.

$ sudo hostnamectl hostname <server name>

# Hostname used is dobby-redmine.
$ sudo hostnamectl hostname dobby-redmine

$sudo reboot

서버가 재부팅되면 관리자 계정과 개인 키를 사용하여 서버에 다시 로그인합니다. Linux 및 MacOS에서는 다음 명령을 사용하여 이 작업을 수행합니다:

$ ssh -i admin_keys.pem admine@<My server>
The authenticity of host ‘redmine.mydomain.com (xxx.xxx.xxx.xxx)’ can’t be established.
ECDSA key fingerprint is SHA256:yCpiV8qk2JUbQn2dsPG+OaCULscmNZSB05+gDCoLQrA.
Are you sure you want to continue connecting (yes/no/[fingerprint])? 'yes'
Warning: Permanently added ‘<my server>’ (ECDSA) to the list of known hosts.
Enter passphrase for key ‘/home/me/admin_keys.pem’:  '<enter your passphrase here>'
Last login: Fri Jul 22 17:37:08 2022 from yyy.yyy.yyy.yyy

$

호스팅 제공업체가 AWS와 같이 루트가 아닌 기본 계정을 생성하는 경우 지금 해당 계정을 삭제할 수 있습니다.

$ userdel '<username>'

 

다음 섹션에는 "Redmin을 위한 Apache 구성"에 대해서 작성하겠습니다.

반응형