다음에서 퍼옴

phoenixnap.com/kb/install-mongodb-on-centos-8

 

How to Install MongoDB on CentOS 8 {3 Easy Steps}

Install MongoDB database application on CentOS 8. Follow the MongoDB installation & configure, create user, and set up authentication with this tutorial.

phoenixnap.com

소개

MongoDB는 문서 기반 NoSQL 데이터베이스 애플리케이션입니다. MySQL과 달리 데이터를 다른 문서에 다르게 저장할 수 있습니다.

다른 문서의 다른 필드를 허용하며 데이터 구조는 영구적으로 고정되지 않습니다.

이 자습서에서는 CentOS 8에 MongoDB를 설치하는 방법을 알아 봅니다.

 

Prerequisites

  • A system running 64-bit CentOS 8 Linux
  • User account with sudo or root privileges
  • Access to a terminal window/command line

 

CentOS 8에서 MongoDB 설치 

 

Step 1: MongoDB 소프트웨어 리포지토리 추가

기본적으로 MongoDB는 공식 CentOS 리포지토리에서 사용할 수 없습니다. MongoDB 리포지토리를 추가하려면 터미널 창을 열고 MongoDB 리포지토리 구성 파일을 만듭니다.

 

[root@localhost ~]# gedit    /etc/yum.repos.d/mongodb-org-4.2.repo

 

mongodb-org-4.2.repo 파일에 다음을 입력

[mongodb-org-4.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.2.asc

 

- cat 명령어로 제대로 입력되었는지 확인

[root@localhost ~]# cat    /etc/yum.repos.d/mongodb-org-4.2.repo

 

 

Step 2: Install MongoDB Software

- CentOS8에 MongoDB를 설치

[root@localhost ~]# dnf   -y    install    mongodb-org

 

Step 3: MongoDB Service 시작

- 다음 명령을 입력하여 MongoDB 서비스를 시작

[root@localhost ~]# systemctl   start   mongod

 - 장치를 찾을 수 없다는 오류가 발생하면 다음 명령을 실행 한 후 이전 명령을 다시 시도

[root@localhost ~]# systemctl    daemon-reload

 - MongoDB를 영구적으로 사용하는 경우 다음 명령을 사용하여 부팅시 실행되도록 설정

[root@localhost ~]# systemctl   enable    mongod

 - MongoDB 서비스가 status 명령으로 사용하여 실행 중인지 확인

[root@localhost ~]# systemctl   status   mongod

 

 

MongoDB 설정(Set Up) 및 구성(Configure) 

MongoDB 관리자(Admin User) 생성

 

 - 사용을 위해 Mongo 셸을 열어 시작합니다. 다음 명령을 입력

[root@localhost ~]#  mongo

 

>

 - 관리자 계정으로 전환

>  use   admin

 

- Mongo 데이터베이스에 대한 관리자 사용자 계정을 만듭니다.

use admin # admin 데이터베이스 선택
 
db.createUser({
  user: "mdbadmin",  # 계정 이름
  pwd: "password",  # 비밀번호
  roles: [          # 사용자에게 주어진 권한 목록. 여러 데이터베이스에 대한 권한을 할당할 수 있다.
    {
      role: "userAdminAnyDatabase", # built-in 권한인 root. 문자 그대로 모든 데이터베이스를 관리할 수 있다.
      db: "admin"   # 어떤 데이터베이스에 대한 권한인지 명시
    }
  ]}
)

 

 

 - 시스템응답은 다음과 같습니다.

 

- 관리자가 아닌 사용자를 생성해서 실제 작업에 사용

db.createUser({
  user: "rhostem",
  pwd: "password",
  roles: [
    {
      role: "readWrite", # 읽기, 쓰기 권한
      db: "test"         # 위의 권한을 부여할 데이터베이스로 test를 지정
    }
  ]}
)

 

 

 -  사용자 목록 표시

> show   users 

 - 시스템은 방금 만든 사용자 이름에 대한 세부 정보를 표시해야합니다.

 - Mongo shell 종료

> quit()
[root@localhost ~]#

 

 

MongoDB 인증 Configure

기본적으로 모든 사용자는 MongoDB에서 모든 기능을 수행 할 수 있습니다. 사용자가 작업을 수행하려면 적절한 자격 증명이 있어야합니다.

 

 

Step 1: 인증(Turn on Authentication) 

 

 

- /lib/systemd/system/mongod.service 파일 편집 

[root@localhost ~]# gedit     /lib/systemd/system/mongod.service

 

- 다음 내용을 찾을 것

Environment="OPTIONS=-f /etc/mongod.conf"

 

 - --auth 를 추가

Environment="OPTIONS= --auth -f /etc/mongod.conf"

 

 

Step 2: 서비스 다시로드하여 변경사항 적용

 - Reload the mongod.service:

[root@localhost ~]# systemctl      --system    daemon-reload
[root@localhost ~]# systemctl   restart   mongod

 

Step 3: Mongo 사용자 인증 테스트

 - Mongo Shell로 전환 -> 관리자를 사용하여 모든 사용자 나열

 

[root@localhost ~]# mongo

 

>  use    admin
> show    users

  - 오류 메시지가 표시됨 

  - 자격증명으로 인증 : 결과는 1이 나와야함

> db.auth  (  'mdbadmin'  ,   'password'  )
1

 

Now, try running the show users command again:

> show   users

 

mdbadmin password가 실제 사용할 사용자 이름과 암호로 변경되어있는지 확인하세요

결론

이제 CentOS 8 시스템에 MongoDB가 설치되어 있어야합니다. 또한 무단 액세스를 방지하려면 보안 관리자 계정이 있어야합니다.

 

TCP 포트 개방

 - MongoDB는 기본적으로 27107번 포트를 사용

 - 외부에서 접속할 수 있도록 방화벽 설정을 통해 27017번 포트를 개방해야 함

 

 - 방화벽 설정

- mongodb를 찾아 체크

 

- 적용하기

- 설정파일 수정 

[root@localhost ~]# vi    /etc/mongod.conf

 - set number로  line number 표시

 - 29번 라인의 bindIp앞에 #으로 주석처리

 

bindIp=127.0.0.1       ->     bindIp=0.0.0.0

## 디비 관리 계정추가
useradd mongod
passwd mongod
## mongo 폴더 권한 설정
mkdir /var/lib/mongo/data
chown -R mongod:mongod /var/lib/mongo/
chgrp -R mongod /var/lib/mongo/
## 서비스 시작
service mongod start
## mongod 시스템 시작시 자동실행
chkconfig mongod on

– 설정파일 : /etc/mongod.conf
– 데이터 저장 폴더 : /var/lib/mongo
– 로그 저장 폴더 : /var/log/mongodb

 

 

docs.mongodb.com/v4.2/

 

The MongoDB 4.2 Manual — MongoDB Manual

The MongoDB 4.2 Manual Welcome to the MongoDB 4.2 Manual! MongoDB is a document database designed for ease of development and scaling. The Manual introduces key concepts in MongoDB, presents the query language, and provides operational and administrative c

docs.mongodb.com

Connect to mongodb

- 생성한 아이디로 로그인해본다( id :mdbadmin   password:password  내가만든db명 : admin

[root@localhost ~]#  mongo  -umdbadmin   -ppassword   admin

- 일반적인 접속방법

mongo --port <포트> -u "<사용자 계정>" -p "<비밀번호>" --authenticationDatabase "admin"

<client> 위의 과정 설치까지 진행 

 

mongo -u mdbadmin -p password  192.168.111.100/admin 

 

 


<WinClient> 2, 3번 권장 

 

1) 외부에서 접속하기 전 다시 원상복귀 해주기 

Environment="OPTIONS=-f /etc/mongod.conf"

 

www.mongodb.org/dl/win32/i386

☞ mongodb-win32-i386-2.6.5-signed 설치함 

 

☞ 설치폴더로 가서, mongo --host 192.168.111.100

 

 

2)

https://www.mongodbmanager.com/ (Windows 32bit에서 사용가능한 프로그램)

 

NoSQL Manager Group

NoSQL Manager for MongoDB - desktop tool for Mongo database management, administration and development.

www.mongodbmanager.com

 

Download- NoSQL Manager for MongoDB Freeware 설치 

 

Host에 서버 ip주소넣기 

 

 

 

3) 1번 해결 

 

supdev.tistory.com/24

 

Window 32bit MongoDB 설치하기

1. MongoDB 다운로드 Linux와 Mac 운영체제와는 다르게 설치파일을 다운로드받아 설치합니다. MongoDB 다운로드 링크 https://www.mongodb.com/download-center 64bit의 경우 바로 DOWNLOAD 버튼을 클릭하여 최..

supdev.tistory.com

Server 3.4버전 (위의 과정 숫자만 3.4로 해서)

WinClient 3.2 받고 나서 

WinClient 설치파일

 

WinClient에서 설치 후 

 

- 고급 시스템 설정-환경 변수- (윗 칸) Path 편집- 새로만들기

 - 다운받은 위치 추가(C:\Program Files\MongoDB\Server\3.2\bin)- 확인 

 

-cmd 창 켜서 

mkdir C:\data\db
mongod -- dbpath C:\data\db
mongod --storageEngine=mmapv1

 

 

cmd창에 mongo를 친 후 

mongo

mkdir C:\datamkdi

r C:\data

cmd창 하나 더 열어서 

mongo 192.168.111.100/admin -u mdbadmin -p password

접속 

 

그 이후로는 cmd창 하나에 바로 접속 가능 

 

mongo 192.168.111.100/admin -u mdbadmin -p password

 

'Linux' 카테고리의 다른 글

MongoDB on CentOS8  (0) 2020.10.08
리눅스 정리  (0) 2020.10.08
mc  (0) 2020.10.08
FTP 서버 설치와 운영  (0) 2020.10.07
CentOS8 + MongoDB  (0) 2020.10.07

다음에서 퍼옴

phoenixnap.com/kb/install-mongodb-on-centos-8

 

How to Install MongoDB on CentOS 8 {3 Easy Steps}

Install MongoDB database application on CentOS 8. Follow the MongoDB installation & configure, create user, and set up authentication with this tutorial.

phoenixnap.com

소개

MongoDB는 문서 기반 NoSQL 데이터베이스 애플리케이션입니다. MySQL과 달리 데이터를 다른 문서에 다르게 저장할 수 있습니다.

다른 문서의 다른 필드를 허용하며 데이터 구조는 영구적으로 고정되지 않습니다.

이 자습서에서는 CentOS 8에 MongoDB를 설치하는 방법을 알아 봅니다.

 

Prerequisites

  • A system running 64-bit CentOS 8 Linux
  • User account with sudo or root privileges
  • Access to a terminal window/command line

 

CentOS 8에서 MongoDB 설치 

 

Step 1: MongoDB 소프트웨어 리포지토리 추가

기본적으로 MongoDB는 공식 CentOS 리포지토리에서 사용할 수 없습니다. MongoDB 리포지토리를 추가하려면 터미널 창을 열고 MongoDB 리포지토리 구성 파일을 만듭니다.

 

[root@localhost ~]# gedit    /etc/yum.repos.d/mongodb-org-4.2.repo

 

mongodb-org-4.2.repo 파일에 다음을 입력

[mongodb-org-4.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.2.asc

 

- cat 명령어로 제대로 입력되었는지 확인

[root@localhost ~]# cat    /etc/yum.repos.d/mongodb-org-4.2.repo

 

 

Step 2: Install MongoDB Software

- CentOS8에 MongoDB를 설치

[root@localhost ~]# dnf   -y    install    mongodb-org

 

Step 3: MongoDB Service 시작

- 다음 명령을 입력하여 MongoDB 서비스를 시작

[root@localhost ~]# systemctl   start   mongod

 - 장치를 찾을 수 없다는 오류가 발생하면 다음 명령을 실행 한 후 이전 명령을 다시 시도

[root@localhost ~]# systemctl    daemon-reload

 - MongoDB를 영구적으로 사용하는 경우 다음 명령을 사용하여 부팅시 실행되도록 설정

[root@localhost ~]# systemctl   enable    mongod

 - MongoDB 서비스가 status 명령으로 사용하여 실행 중인지 확인

[root@localhost ~]# systemctl   status   mongod

 

 

MongoDB 설정(Set Up) 및 구성(Configure) 

MongoDB 관리자(Admin User) 생성

 

 - 사용을 위해 Mongo 셸을 열어 시작합니다. 다음 명령을 입력

[root@localhost ~]#  mongo

 

>

 - 관리자 계정으로 전환

>  use   admin

 

- Mongo 데이터베이스에 대한 관리자 사용자 계정을 만듭니다.

use admin # admin 데이터베이스 선택
 
db.createUser({
  user: "mdbadmin",  # 계정 이름
  pwd: "password",  # 비밀번호
  roles: [          # 사용자에게 주어진 권한 목록. 여러 데이터베이스에 대한 권한을 할당할 수 있다.
    {
      role: "userAdminAnyDatabase", # built-in 권한인 root. 문자 그대로 모든 데이터베이스를 관리할 수 있다.
      db: "admin"   # 어떤 데이터베이스에 대한 권한인지 명시
    }
  ]}
)

 

 

 - 시스템응답은 다음과 같습니다.

 

- 관리자가 아닌 사용자를 생성해서 실제 작업에 사용

db.createUser({
  user: "rhostem",
  pwd: "password",
  roles: [
    {
      role: "readWrite", # 읽기, 쓰기 권한
      db: "test"         # 위의 권한을 부여할 데이터베이스로 test를 지정
    }
  ]}
)

 

 

 -  사용자 목록 표시

> show   users 

 - 시스템은 방금 만든 사용자 이름에 대한 세부 정보를 표시해야합니다.

 - Mongo shell 종료

> quit()
[root@localhost ~]#

 

 

MongoDB 인증 Configure

기본적으로 모든 사용자는 MongoDB에서 모든 기능을 수행 할 수 있습니다. 사용자가 작업을 수행하려면 적절한 자격 증명이 있어야합니다.

 

 

Step 1: 인증(Turn on Authentication) 

 

 

- /lib/systemd/system/mongod.service 파일 편집 

[root@localhost ~]# gedit     /lib/systemd/system/mongod.service

 

- 다음 내용을 찾을 것

Environment="OPTIONS=-f /etc/mongod.conf"

 

 - --auth 를 추가

Environment="OPTIONS= --auth -f /etc/mongod.conf"

 

 

Step 2: 서비스 다시로드하여 변경사항 적용

 - Reload the mongod.service:

[root@localhost ~]# systemctl      --system    daemon-reload
[root@localhost ~]# systemctl   restart   mongod

 

Step 3: Mongo 사용자 인증 테스트

 - Mongo Shell로 전환 -> 관리자를 사용하여 모든 사용자 나열

 

[root@localhost ~]# mongo

 

>  use    admin
> show    users

  - 오류 메시지가 표시됨 

  - 자격증명으로 인증 : 결과는 1이 나와야함

> db.auth  (  'mdbadmin'  ,   'password'  )
1

 

Now, try running the show users command again:

> show   users

 

mdbadmin password가 실제 사용할 사용자 이름과 암호로 변경되어있는지 확인하세요

결론

이제 CentOS 8 시스템에 MongoDB가 설치되어 있어야합니다. 또한 무단 액세스를 방지하려면 보안 관리자 계정이 있어야합니다.

 

TCP 포트 개방

 - MongoDB는 기본적으로 27107번 포트를 사용

 - 외부에서 접속할 수 있도록 방화벽 설정을 통해 27017번 포트를 개방해야 함

 

 - 방화벽 설정

- mongodb를 찾아 체크

 

- 적용하기

- 설정파일 수정 

[root@localhost ~]# vi    /etc/mongod.conf

 - set number로  line number 표시

 - 29번 라인의 bindIp앞에 #으로 주석처리

 

bindIp=127.0.0.1       ->     bindIp=0.0.0.0

## 디비 관리 계정추가
useradd mongod
passwd mongod
## mongo 폴더 권한 설정
mkdir /var/lib/mongo/data
chown -R mongod:mongod /var/lib/mongo/
chgrp -R mongod /var/lib/mongo/
## 서비스 시작
service mongod start
## mongod 시스템 시작시 자동실행
chkconfig mongod on

– 설정파일 : /etc/mongod.conf
– 데이터 저장 폴더 : /var/lib/mongo
– 로그 저장 폴더 : /var/log/mongodb

 

 

docs.mongodb.com/v4.2/

 

The MongoDB 4.2 Manual — MongoDB Manual

The MongoDB 4.2 Manual Welcome to the MongoDB 4.2 Manual! MongoDB is a document database designed for ease of development and scaling. The Manual introduces key concepts in MongoDB, presents the query language, and provides operational and administrative c

docs.mongodb.com

Connect to mongodb

- 생성한 아이디로 로그인해본다( id :mdbadmin   password:password  내가만든db명 : admin

[root@localhost ~]#  mongo  -umdbadmin   -ppassword   admin

- 일반적인 접속방법

mongo --port <포트> -u "<사용자 계정>" -p "<비밀번호>" --authenticationDatabase "admin"

 

'Linux' 카테고리의 다른 글

MongoDB on CentOS8  (0) 2020.10.08
리눅스 정리  (0) 2020.10.08
mc  (0) 2020.10.08
FTP 서버 설치와 운영  (0) 2020.10.07
CentOS8 + MongoDB  (0) 2020.10.07

/ : root 

 

  • ls  /lib: 어느 위치에 있든 루트 밑의 lib 폴더를 보여줌 
  • ls lib : 현재 내가 있는 위치에서 바로 아래의 lib폴더를 보여줌    
  • cd / 아무거나 : / 넣으면 절대경로로 생각 

- 파일 내용을 보고 싶을 때 : cat 파일이름 

- 간단한 파일 작성할 때 cat 사용 :  cat > 만들파일이름.cfg

   ctrl+c로 나가기, 

   > 만든 파일이름.cfg : 파일지움  

 

 


rockdrumy.tistory.com/131

 

[Linux] Pipes(파이프) 명령

Pipes 명령 ----------------------------------------------------------------------------- Pipes(파이프)에 대해서 알아보자. 아래에서는 그냥 파이프라고 하겠다. 파이프는 유닉스 시스템의 융통성을 보여주..

rockdrumy.tistory.com


 

리눅스 권한 

--- : 권한 없음 (0) 
--x : 실행 (1) 
-w- : 쓰기 (2) 
-wx : 쓰기, 실행 (3) 
r-- : 읽기 (4) 
r-x : 읽기, 실행 (5) 
rw- : 읽기, 쓰기 (6) 
rwx : 읽기, 쓰기, 실행 (7)

 

u : user 
g : group 
o : other 
a : all 
r : read  
w : write 
x : excute

 

+ : 권한 추가 
- : 권한 제거 
= : 설정한대로 변경 



chmod ug+rw sample

: sample 파일을 user나 group멤버에게 읽기, 쓰기 권한 추가



chmod u=rwx, g+x sample

: sample파일을 user에게 rwx다주고 그룹에게는 x 권한추가



chmod 777 sample

: sample 파일을 유저 그룹 other에게 모두 7권한(아래 참조)을 줌 == 읽기 쓰기 실행 모두 허가

 

 

리눅스 권한 관리 명령어 사용법 정리 (chmod, chown, chgrp 명령어)

리눅스(Linux)는 하나의 컴퓨터를 여러 사람이 사용할 수 있는 멀티유저 운영체제(OS)이기 때문에 권한 관리가 매우 중요합니다. 파일과 디렉토리의 권한을 변경하고 소유권을 변경하는 방법을 �

withcoding.com

 

 

[UNIX / Linux] 권한 관리(chmod, chown, chgrp, umask)

접근 권한 변경(chmod) - chmod 명령: 기존 파일 또는 디렉토리에 대한 접근 권한(파일 모드)을 변경할 때 사용 - 파일 모드의 변경은 파일 소유자나 슈퍼 유저만 가능 - 파일 모드는 기호(문자)나 8진�

eunguru.tistory.com

 

리눅스 파일 권한(퍼미션) 변경 - chmod

파일 권한(퍼미션) 수정 - chmod chmod 명령어는 파일이나 디렉토리에 부여된 권한(퍼미션)을 수정하는 명령어이다. chmod로 퍼미션을 수정하는 방법은 기호문자열을 사용하는 방법과 8진수 숫자를 ��

ttend.tistory.com


 

 

 

 

02. 꼭 알아야 할 리눅스 기본 명령어 10가지

꼭 알아야할 리눅스 기본 명령어 10가지 1. ls - 현재 위치의 파일목록을 조회하는 명령어 2. cd - 디렉토리를 이동하는 명령어 3. touch - 파일의 용량이 0인 파일을 생성, 날짜 변경하는 명령어 4. mkdir

gomguard.tistory.com

cd - : 이동하기 바로 전의 디렉토리로 이동함. 


mv -b a.txt b.txt : b파일에 내용이 있으면 이동전에 덮어쓸건지 물어봄 

 

 

Linux - ls 명령어 옵션 정리

ls : 현재 경로에 있는  파일 및 디렉토리 정보를 출력한다.  $ ls  $ ls -l ## 옵션 정리 -a : 숨겨진 파일이나 디렉토리를 출력한다. $ ls -a -A : .와 ..을 제외하고 출력한다. $ ls -A -b : 알파벳 순..

big-sun.tistory.com

big-sun.tistory.com/category/%EC%A7%80%EC%8B%9D%EC%83%9D%ED%99%9C/%EB%AA%85%EB%A0%B9%EC%96%B4

 

'지식생활/명령어' 카테고리의 글 목록

따따한 작은 주머니 같은 블로그

big-sun.tistory.com

 

 

 

<비번 1234>

gounngo.tistory.com/entry/%EB%A6%AC%EB%88%85%EC%8A%A4-%EB%AA%85%EB%A0%B9%EC%96%B4-%EB%AA%A9%EB%A1%9D

 

리눅스 명령어 목록

 

gounngo.tistory.com

 

'Linux' 카테고리의 다른 글

MongoDB on CentOS8  (0) 2020.10.08
MongoDB on CentOS8  (0) 2020.10.08
mc  (0) 2020.10.08
FTP 서버 설치와 운영  (0) 2020.10.07
CentOS8 + MongoDB  (0) 2020.10.07

mc 프로그램을 설치해 두면 아스키 파일의 열람, 자료의 복사, 이동 삭제는 물론 하위 디렉토리를 포함한  디레토리 복사 등 서버에 필요한 파일 관리를 쉽게 할 수 있다. 

dnf -y install mc 
mc

 

- Tab : 왼쪽, 오른쪽 이동 

F1 키: 도움말 기능

F2 키: 사용자 메뉴

F3 키: 파일의 내용을 확인

F4 키: 문서편집모드, vi 편집기와 연동

F5 키: 파일 복사

F6 키: 파일(또는 디렉토리)의 이동, mv명령어와 동일

F7 키: 새로운 디렉토리 생성

F8 키: 파일(또는 디렉토리) 삭제

F9 키: 전체 풀다운 메뉴

F10키: mc 종료

 

'Linux' 카테고리의 다른 글

MongoDB on CentOS8  (0) 2020.10.08
리눅스 정리  (0) 2020.10.08
FTP 서버 설치와 운영  (0) 2020.10.07
CentOS8 + MongoDB  (0) 2020.10.07
APM설치, dnf로 쉬운 설치하기  (0) 2020.10.07

(이것이 리눅스다 참고) 

1. vsftpd의 설치와 운영 

- vsftpd(Very Secure FTPD)는 CentOS에서 기본적으로 제공 

-보안성과 성능이 우수 

 

 1) vsftpd 패키지 설치 

dnf -y install vsftpd

 

2) 서비스 가동 

 

 - vsftpd에 'anonymous (익명)'로 접속되는 디렉터리는 /var/ftp/다. 

다음 명령을 입력해 이 디렉터리 아래에 있는 /pub 디렉터리에 샘플 파일 몇 개 복사하고 서비스를 가동하자.

vsftpd 패키지의 서비스 이름도 vsftpd다. 

 

-외부에서 FTP서버에 원활하게 접근할 수 있도록 방화벽을 꺼뒀음

- anonymous 사용자는 FTP 전용 사용자로 모든 리눅스에 내장된 사용자다. 특별히 암호없이 ftp 서버에 접속 가능하다.

외부에서 접속할 때는 사용자 이름이 anonymous지만, 리눅스 내부에서는 ftp라는 이름으로 사용됨.

이 ftp사용자의 홈 디렉터리는 /var/ftp며, 그래서 anonymous 사용자로 접속했을 때 접속되는 디렉터리는 /var/ftp가 됨. 

 

 

 3) 파일 수정 

- vsftpd의 설정 파일은 /etc/vsftpd/vsftpd.conf 파일이다.

 

vi /etc/vsftpd/vsftpd.conf

- 파일을 열어 12행쯤에 YES로 변경 

 

 

-서비스 재시작

systemctl restart vsftpd

4) 호스트 운영체제 또는 WinClient에서 FTP 서버에 접속해서 파일을 다운로드/업로드 해본다. 

 

- filezilla-project.org/ 접속 

 

FileZilla - The free FTP solution

Overview Welcome to the homepage of FileZilla®, the free FTP solution. The FileZilla Client not only supports FTP, but also FTP over TLS (FTPS) and SFTP. It is open source software distributed free of charge under the terms of the GNU General Public Licen

filezilla-project.org

 

-다운로드 후 설치 진행 ( 모두 기본 설정 값으로 설치 함) 

 

-FileZilla 실행 후 

[호스트]에는 Server의 IP주소 192.168.111.100을 입력하고 [사용자]에는 anonymous (익명사용자)를, 

[비밀번호]에는 아무거나 입력한 후 (1234) <빠른연결> 클릭 ( 그 후 창이 뜨면 그냥 확인 누름)

 

접속된 상태 

- 왼쪽 에서 다운로드할 파일을 선택 후 오른쪽 리모트 사이트에서 '/pub' 디렉터리를 클릭한다. 

오른쪽 아래 에서 필요한 파일을 선택한 후 드래그해서 왼쪽에 가져다두면 다운로드가 실행된다. 

(또는 파일을 오른쪽 버튼을 클릭한 후 바로가기 메뉴에서 다운로드 클릭해도 됨) 

 

-왼쪽 로컬 컴퓨터에 있는 아무 파일을 마우스 오른쪽 버튼을 클릭한 후 [업로드]를 선택하면 실패한다. 

이를 해결하기 위해 

 

Server에서 

vi /etc/vsftpd/vsftpd.conf

파일을 열어 아래의 그림과 같이 수정한다. 

 

19행쯤 YES 인지 확인, 29,33행 주석제거

( 29행 주석제거 : anonymous 사용자의 업로드 허용,

 33행 주석 제거: anonymous 사용자의 디렉터리 생성 허용)

 

※ 참고 

 

[리눅스마스터] vsftpd.conf 설정 파일 해설

/etc/vsftpd/vsftpd.conf anonymous_enable = yes //익명 ftp 서비스 활성화 여부 설정 local_enable = yes //로컬 계정 사용자 접속 여부 설정 write_enable = yes //쓰기 가능 여부 설정 local_umask = 022 //파..

raisonde.tistory.com

 

- 업로드할 /var/ftp/pub/ 디렉터리의 소유권도 anonymous 사용자의 접속 이름인 ftp로 바꿔야 한다.

chown ftp.ftp /var/ftp/pub/

 

-변경 후에는 vsftpd 서비스를 다시 시작한다.

systemctl restart vsftpd

5) 호스트운영체제 또는 WinClient에서 보안을 제외하고 연결하기. 

 

- FileZilla를 닫고 다시 실행해서 왼쪽 상단의 [사이트 관리자] 아이콘을 클릭하고 <새 사이트>를 추가하자. 

사이트 관리자에 새 사이트 추가 

 - 연결을 클릭해서 연결한 후 Windows의 파일을 /pub 디렉터리에 마우스로 끌어다놓고 업로드하면 잘 될 것이다. 

 

- Server에 로컬 사용자로 접속해보면 (기존에 있던 centos) 잘 된다.

 그 이유는 vsftpd.conf에 'local_enable=YES'라는 행이 있기 때문이다.

 


2. Pure-FTPd의 설치와 운영 

 

- Pure-FTPd는 간단하면서도 보안에 강하다 

 

1)  위에서 실습한 vsftpd를 제거

 

dnf -y remove vsftpd

 

 

2) pure-ftpd패키지 설치하기 

 

wget http://download.hanbit.co.kr/centos/8/pure-ftpd-1.0.49-2.epel8.playground.x86_64.rpm
dnf -y install pure*.rpm

 

 

3) 설정 파일을 변경하기 

 

vi /etc/pure-ftpd/pure-ftpd.conf

 

- 77행쯤 확인 : Noanonymous no  (anonymous 사용자접속 허용)

279행 no로 바꾸기 (anonymous 사용자 업로드 허용)

 -서비스 시작

systemctl restart pure-ftpd
systemctl enable pure-ftpd

 

4) 허가권과 소유권 변경하기

 

 - 기존의 디렉터리 모두 삭제, 소유권 변경, 쓰기만 가능하도록 허가권 변경, 적당한 파일 복사 

-  ftp포트를 방화벽에서 해제

 

5) 호스트 운영체제 또는 WinClient에서 FileZilla로 FTP서버에 접속하기 

 

-아까 했던 방식으로 접속하여 원격 디렉터리인 /upload 디렉터리로 이동해서 업로드를 하면 

업로드는 잘 되지만 파일 조회는 안 될 것이다. 

업로드는 됐지만 FileZilla에서 조회불가

 

- /download 디렉터리의 파일은 잘 조회되고 다운로드 될 것이다. 

'Linux' 카테고리의 다른 글

리눅스 정리  (0) 2020.10.08
mc  (0) 2020.10.08
CentOS8 + MongoDB  (0) 2020.10.07
APM설치, dnf로 쉬운 설치하기  (0) 2020.10.07
리눅스 MariaDB 설치  (0) 2020.10.06

kpage.tistory.com/134

 

CentOS8 + MongoDB

다음에서 퍼옴 phoenixnap.com/kb/install-mongodb-on-centos-8 How to Install MongoDB on CentOS 8 {3 Easy Steps} Install MongoDB database application on CentOS 8. Follow the MongoDB installation & conf..

kpage.tistory.com

 

'Linux' 카테고리의 다른 글

mc  (0) 2020.10.08
FTP 서버 설치와 운영  (0) 2020.10.07
APM설치, dnf로 쉬운 설치하기  (0) 2020.10.07
리눅스 MariaDB 설치  (0) 2020.10.06
리눅스 기본명령어  (0) 2020.09.29

▷ APM 참고자료 

 

NoonGam's IT 블로그

네트워크, 프로그래밍, IT 관련 배우고자 하는 블로그입니다.

wodonggun.github.io

 

1. CentOS에서 제공하는 APM을 사용하기 위해 설치 (부팅 전 메모리 2GB(=2048MB) 권장) 

 

 1) 관련 패키지 설치 

dnf -y install httpd php php-mysqlnd mariadb-server

 

 2) APM과 관련된 서비스를 가동하고 필요한 설정 하기 

 

 -httpd 서비스의 현재 작동 상태를 확인 : Active : active(running)

systemctl status httpd

(active가 아닐경우 systemctl start httpd 명령을 입력해 httpd 서비스를 작동시키고 다시 위의 코드 실행) 

 

 

3) httpd 서비스를 상시 작동되도록 설정 

systemctl enable httpd

 

같은 방식으로 mariadb 서비스도 시작 및 상시 작동되도록 설정한다. 

 


2) 웹 서버 및 PHP가 작동하는지 확인 

 

 1) vi나 gedit으로 파일 생성 

 

vi /var/www/html/index.html

 

<h1> 아무거나 </h1>

 

 2) firefox 브라우저를 실행한 후 주소창에 http://localhost/ 입력하면 '아무거나' 화면이 뜰 것이다 

 

 

 3)  웹 서버에 설치된 PHP 확인 

 

vi /var/www/html/phpinfo.php

 

(웹 서버에 설치된 php정보를 보여줌)

<?php phpinfo(); ?>

 

웹 브라우저에서 http://localhost/phpinfo.php 로 접속하면 

정상적으로 PHP 모듈이 가동되는 화면 

 

3) 외부에서 웹 서버에 접근하기 

-방화벽 설정 실행 

firewall-config

-[설정]-[영구직]을 선택→ [서비스] 탭 [http] 및 [https] 체크 

-메뉴의 [옵션] →[Firewall 다시 불러오기]선택 →방화벽설정 닫기

 

- Winclient 또는 호스트 운영체제에서 웹 브라우저를 실행해서 

http://192.168.111.100/phpinfo.php 접속하면 정상적으로 접속된다. 

 

외부에서 APM 서버로 정상적으로 접속 

 

'Linux' 카테고리의 다른 글

FTP 서버 설치와 운영  (0) 2020.10.07
CentOS8 + MongoDB  (0) 2020.10.07
리눅스 MariaDB 설치  (0) 2020.10.06
리눅스 기본명령어  (0) 2020.09.29
리눅스 vi 에디터 단축키  (1) 2020.09.29

출처: 이것이 리눅스다 ※

 

1. cafe.naver.com/Thisislinux에서 파일 4개 다운

 

이것이리눅스다 : 네이버 카페

[이것이 리눅스다] 책의 질의 응답 및 자료실입니다.

cafe.naver.com

11장. 데이터베이스 서버 구축과 운영


<실습 1> 

▶ (링크) galera-4-26.4.3   (Linux용) 
▶ (링크) MariaDB 10.4.10 client   (Linux용)
▶ (링크) MariaDB 10.4.10 common   (Linux용)
▶ (링크) MariaDB 10.4.10 server   (Linux용) 


※ 홈페이지에서 다운 받아도 됨 

mariadb.org/download/ 

 

Download MariaDB Server - MariaDB.org

REST API MariaDB Repositories Release Schedule Reporting Bugs […]

mariadb.org

 

download 클릭 후 밑으로 조금 내리면 select가 보임 
형광색 표시를 누르기

 

rpm 누른 후 원하는 버전 다운 

 

2. 다운로드 한 파일 설치하기 

 

 1) 다운로드 디렉터리로 이동 

 cd 다운로드/ 

 

2) 다운로드 받은 rpm 패키지 파일 설치

dnf -y install ga*.rpm Maria*.rpm

 

3) 다음 명령을 차례로 입력해 서비스 가동 

  - active (running) 확인되면 q누르고 나오기 

systemctl restart mariadb 
ststemctl enable mariadb
systemctl status mariadb 

 

 4) 방화벽 설정 

firewall-config

- [설정]에서 [영구적]을 선택한 후 [영역]에서 [public]이 선택된 상태로 오른쪽 [서비스] 탭 [mysql]의 체크 

- [옵션]-[Firewalld 다시 불러오기]를 선택한 후 창 닫기 

 

 

5) MariaDB 서버 접속 

mysql

- MariaDB [(none)] > 프롬프트가 나오면 서버에 정상적으로 접속된 것 

 

☞ mysql 명령을 입력하면 아무런 확인 절차 없이 그냥 MariaDB 서버에 접속된다. 

CentOS를 설치했을 때, 별도의 사용자를 생성하지 않아도 root사용자는 원래 존재했었고, 설치과정 중에서 root사용자의 비밀번호만 지정했었다.

마찬가지로 MariaDB 서버를 설치하면 root라는 이름의 데이터베이스 사용자가 자동으로 생성되며, 비밀번호는 지정하지 않은 상태로 설치된다. 

 

※ 데이터베이스 사용자인 root는 MariaDB 서버 안에서 모든 권한을 실행할 수 있는 데이터베이스 관리자이다.

운영체제 사용자인 root와 전혀 별개의 사용자다. 

 


원칙적으로 MariaDB 서버에 접속하려면 mysql -h 접속할컴퓨터 -u DB사용자이름 -p 명령을 실행한 후,

데이터베이스의 사용자의 비밀번호를 입력해서 접속해야 한다. 

 

그런데 옵션을 모두 생략하고 mysql 명령만 실행하면, 우선 MariaDB가 설치된 컴퓨터를 현재 컴퓨터로 간주하고 현재 운영체제의 사용자와 같은 이름인 root 사용자 권한으로 비밀번호 없이 접속하게 된다. 

즉, 현재 사용 중인 컴퓨터에 현재 운영체제 사용자 이름과 데이터베이스 사용자의 이름이 root이고, 

아직 데이터베이스 사용자인 root에 비밀번호를 넣어준 적이 없으므로 MariaDB서버에 그냥 접속되는 것이다. 

 

그러므로 보안 문제를 위해 데이터베이스 사용자 root의 비밀번호를 지정하는 것이 좋다. 

 

3) 보안에 중요한 데이터베이스 관리자 root의 비밀번호를 설정 

 1) 데이터베이스 관리자 root의 비밀번호를 1234로 변경 

mysqladmin -u root password '1234'

 

이제 외부에서 접속할 때는 mysql 명령을 입력해서 접속할 수 없다. 

mysql -h localhost -u root -p 명령을 입력해 MariaDB서버에 접속 후 비밀번호 입력해야 한다. 

 

※이전 버전인 10.3에서는 현재 로그인한 운영체제 사용자가 누구든 비밀번호를 입력해야 했다. 


4)다른 서버에서 Server에 설치된 MariaDB서버에 접속하기

 1) MariaDB에 접속하려면 MariaDB 클라이언트가 필요하다. 이때 운영체제에 맞는 파일을 다운로드 해야 한다.

 

노란표시 클릭 (책과 똑같은 버전 다운)
서버 사양에 맞춰서 다운 

 2) 다운로드한 파일로 설치를 시작한다. 

-Next, [I accpt the term ...]체크

-Custom Setup이 나오면 [Client Programs]만 설치되도록 설정 (나머지 x표시) 

-Install 

 


5) WinClient 서버에서 접속할 사용자 생성하기. (Windows 사용자는 winuser로 생성)

 

※ 데이터베이스 사용자 이름과 비밀번호만 안다고 아무 컴퓨터에서나 접속할 수 없게 설정한다. 

MariaDB 서버에 접속하려면 접속하는 컴퓨터까지 지정해놓은 곳에서만 접속해야 한다. 

 

 1)  MariaDB 접속

mysql -u root -p

 2) 접속 후 다음 SQL문을 입력해 mysql 데이터베이스에 있는 'user' 테이블 조회 

  ( 사용자  이름이 비어 있는 것은 제외)

USE mysql;
SELECT user, host FROM user WHERE user NOT LIKE '';

-MariaDB 서버를 설치하면 mysql, test 두 데이터베이스가 자동으로 생성됨. 

mysql에는 MariaDB 서버와 관련된 모든 시스템 정보가 들어 있다. 그중에서 MariaDB 서버에 접속할 사용자 정보 테이블인 user라는 테이블을 확인하는 것이다. 

 

3) WinClient의 정확한 IP 주소만으로 사용자를 생성할 수 있다. 

필자는 WinClient의 IP주소가 192.168.111.137이므로

사용자이름@192.168.111.137 사용자를 생성하면 된다.

그런데 WinClient는 동적 IP주소를 사용하기 때문에 재부팅 시 문제가 발생한다. 

 

이를 해결하려면 192.168.111.000으로 시작하는 IP주소 모두가 접속할 수 있게 아래와 같이 사용자를 생성하면 된다. 

 

GRANT ALL ON *.* TO winuser@'192.168.111.%' IDENTIFIED BY '4321';

→ '사용자 winuser@192.168.111.%의 비밀번호를 4321로 생성하라. 그리고 모든 데이터베이스와 테이블에 모든 권한을 행사할 수 있도록 하라.'

 

▷GRANT 구문 (GRANT는 사용자를 생성해주는 SQL문)

 

GRNAT 사용권한 ON 데이터베이스이름.테이블이름 TO 사용자이름@ '호스트이름' IDENTIFIED BY '비밀번호'; 

 


winclient 또는 호스트 운영체제에 접속해서 명령 프롬프트에서 다시 

 

mysql -h 192.168.111.100 -u winuser -p 명령을 입력해 winuser 사용자로 접속해보면 정상적으로 접속된다. 

 

이제 Server에서든 Winclient에서든 똑같이 MariaDB 서버에 접속해서 사용할 수 있다. 

'Linux' 카테고리의 다른 글

CentOS8 + MongoDB  (0) 2020.10.07
APM설치, dnf로 쉬운 설치하기  (0) 2020.10.07
리눅스 기본명령어  (0) 2020.09.29
리눅스 vi 에디터 단축키  (1) 2020.09.29
리눅스 이론  (0) 2020.09.29

+ Recent posts