*** nginx는 이미 설치되어있다는 가정

 

 

php 설치

// php install
yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm 
yum -y install epel-release yum-utils
yum-config-manager --enable remi-php74
yum install php php-mysql php-fpm

// set address
nano /etc/php-fpm.d/www.conf

listen=localhost:9000 -> listen=/var/run/php-fpm/php-fpm.sock

// start
systemctl start php-fpm
systemctl enable php-fpm.service

// nginx setting
server {
    server_name my_domain;
    client_max_body_size 5G;

    #charset koi8-r;
    access_log  /var/log/nginx/my_service.access.log;

    root /usr/share/nginx/html/my_service;

    location / {
        index index.html index.htm index.php;
    }

    location = /50x.html {
        root /usr/share/nginx/html;
    }

    location ~ \.php$ {
        fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html/my_service$fastcgi_script_name;
        include fastcgi_params;
    }
}

systemctl restart nginx

ERR 403 Page

// 403 Page error
2021/12/20 23:38:06 [error] 2157#2157: *29 "/usr/share/nginx/html/my_service/index.php" is forbidden (13: Permission denied), client: 218.235.68.160, server: my_domain, request: "GET / HTTP/1.1", host: "my_domain"

// dir 및 하위 파일 권한 체크
ls -lZd /service_root/my_service

// dir 및 하위 파일 권한 변경
chcon -R -t httpd_sys_content_t /service_root/my_service

 

ERR mysql :: Connect Error: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

// mysql install
yum -y install http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
yum -y install mysql-community-server 
systemctl start mysqld
systemctl enable mysqld

// find your  temporary password (ex: XcheTa.X-5o1)
/var/log/mysqld.log

// change db password
ALTER USER 'root'@'localhost' IDENTIFIED BY 'XcheTa.X-5o1';
FLUSH PRIVILEGES;
use mysql;
UPDATE user set authentication_string=password('newpassword') where user='root';
-> policy error?
  SET GLOBAL validate_password_policy=LOW;
  UPDATE user set authentication_string=password('newpassword') where user='root';
FLUSH PRIVILEGES;

// mysql exit
quit;

 

필요시 mysql 계정 생성
db생성 하여 쓰면됩니다.

 

ERR -> /install/ajax.install.check.php

// 버전 이슈일 확률이 높음 -> php 7.4 재설치 진행

 

ERR unix:/var/run/php-fpm.sock failed (13: permission)

// /etc/php-fpm.d/www.conf <-- 약간씩 다를 수 있음
user = nginx
group = nginx

listen.owner = nginx
listen.group = nginx
listen.mode = 0660

// 실행
systemctl restart nginx
systemctl restart php-fpm

 

ERR 로그인 에러 / data 접근 권한 에러

// SElinux 에러
// SElinux는 특정 서비스에 대한 권한을 필요한 만큼 허용하고 이외에는 모두 차단하는 정책을 가지고있어, 서비스의 취약성을 이용한 공격이 발생해도 관계된 프로세스나 파일 시스템에 쉽게 접근하지 못하도록 사전에 차단하는 역할을 함.
// 따라서, 완정 중지를 하게되면 보안상 문제가 발생할 수 있음
// 아래와 같이 임시 비활성화 처리가 가능하다.
// Permissive -> 0, Enforcing -> 1
setenforce 0

 

ERR php mb_string

// 관련 내용: https://zetawiki.com/wiki/CentOS_php-mbstring_%EC%84%A4%EC%B9%98


// 확인
php -r "mb_substr();"
-> PHP Fatal error:  Call to undefined function mb_substr() in Command line code on line 1

rpm -qa php-mbstring
yum info php-mbstring | grep Repo
-> Repo        : base

// 설치
yum install php-mbstring -y

// 설치자료 확인
rpm -qa php-mbstring
-> php-mbstring-5.3.3-3.el6_2.8.x86_64


// 재실행
systemctl restart nginx
systemctl restart php-fpm
728x90
반응형

18.04 기분으로 작성한 포스팅입니다.

 

ubuntu를 처음 세팅하고나면 root계정의 비밀번호를 먼저 설정해줍니다.

sudo passwd root

 

ssh 설정을 해줄건데요. 딱 3줄만 수정해주면됩니다.

nano /etc/ssh/sshd_config

 

파일을 편집을해볼까요?

PermitRootLogin yes
PasswordAuthentication yes
ChallengeResponseAuthentication no

 

다른 설정은 건드리지말고 위의 3줄만 위와같이 잡아주면 됩니다.

 

잘 설정됐는지 테스트 및 재실행을 해볼게요

# test
sudo sshd -t

# restart
sudo service sshd restart

 

재실행이 잘 됐다면, 터미널을 종료하지말고 새로운 터미널을 열어 접속을 테스트 해봅니다.

# 설정 전 접속방법
ssh -i 'key.pem' ubuntu@ip(혹은 domain)

# 설정 후 접속방법
ssh root@ip(혹은 domain)

 

보안적인 면에서는 늘 키파일로 로그인하는게 좋겠지만, 여러 상황에 따라 비밀번호 접속 설정이 필요할수 있습니다.

728x90
반응형

[초기설정]

1. key파일을 이용해 root 계정으로 로그인

2. sudo passwd 입력

3. 새 암호 입력

4. 새 암호 확인

 

[변경]

1. root 계정으로 로그인

2. passwd 입력

3. 새 암호 입력

4. 새 암호 확인

 

끝...

728x90
반응형

검색해보면 mac에 mongo를 설치하는 방법은 정말 많이나온다.

(근데 공식 가이드라인이 제일 잘나왔다. 흠 잡을데없이)

 

그런데 의외로 mongo를 실행, 중지, 재실행하는 방법에 관해서는 알맞는 자료가 별로없다.

homebrew를 통해 설치한 경우에 대해서 알아본다.

 

[ 실행중인 mongo 확인 ]

$brew services list

위 명령어로 몽고가 어떤 이름으로 실행중인지 체크한다. (나의 경우엔 mongodb-community)

 

[ 중지 ]

$brew services stop mongodb-community

 

[  재실행 ]

$brew servcies restart mongodb-community

 

에러상황 혹은 db위치 변경, 로그 위치 변경 등의 목적으로 인해 중지 및 재실행하는 경우가 제법 많다.

꼭, 알아두고 대비하자

 

728x90
반응형

find명령어를 통해 쉽게, 파일을 찾을 수 있다.

find [기준경로] -name [파일명]

 

 

예를들어,

find / -name log.txt

 

728x90
반응형