** 이 포스트는 내가 해본 내용을 기준으로 작성한 기록이므로 다른 이들은 참고가 되지 않을 수 있음
** 설정 디렉토리 및 파일이 버전에 따라 다를 수 있으니 안되면 다시 찾아야 할 것임

1. OS 설치
   1) 종류는 다양하게 있으니 찾아보셔야..
   2) 여기선 기본 라즈비안에 데스크톱 없는 모델 LITE 설치. 간이서버로 이용하기 위해..

2. 설치방법 : 윈도를 기준으로 설명함
   1) 라즈베리파이재단의 프로그램 : 설치형. 쉬움. 간단함. Raspberry Pi Imager
      - 윈도에 설치해야 함. https://www.raspberrypi.com/software/
   2) 포터블방식 : 설치안해도 됨. 참고 https://yourjune.tistory.com/956
      - 이미지굽는앱 etcher 포터블다운로드 https://www.balena.io/etcher/ 
      - 이미지 다운로드 https://www.raspberrypi.com/software/ Manually install 에서 다운로드 
   3) No Desktop 방식은 초기id/pw를 pi / raspberry 로 로긴하고 passwd 명령을 통해 변경.
      root pi 모두 바꿔야 함.. 안그러면 털리 수 있음.  참고 https://www.maum.pro/46

3. 네트워크설정 : 참고 https://ansan-survivor.tistory.com/44
   1) 자기정보 보기 : ifconfig
   2) 네트워크 정보 수정 : sudo nano /etc/dhcpcd.conf (vim 에디터 쓸 사람은 nano 대신 vim 또는 vi 를)
   3) 나머지는 위 참고 블로그에서 읽어보시길.. 나름 성공했음
      -- 해보니까 subnet mask는 설정하지 않아도 되는 듯 함.. 해보니까 되는데 무슨 문제가 있을지 모르겠음.

4. SSH 서버 설정
   1) 제일 쉬운 방법은 sd card의 drive 에 ssh 라는 파일을 만드는 방법 (소문자, 확장자 없음)
   2) 접속 클라이언트는 PUTTY 가 있지만 mobaxterm 이것도 괜찮은 듯 함. 포터블도 있음.
       https://mobaxterm.mobatek.net/
   3) 나머지 방법은 이 블로그 참고 https://m.blog.naver.com/opusk/220984515191

*** 이후 작업은 SSH로 접속하여 진행함..
5. FTP 서버 설정 참고 https://lunasword.tistory.com/37
   1) sudo apt-get upgrade
   2) sudo apt-get update
   3) sudo apt-get install vsftpd
   4) sudo nano /etc/vsftpd.conf 열어서 아래 내용을 활성화하거나 화일 맨 끝에 추가함
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
   5) sudo nano /etc/vsftpd.chroot_list 실행해서 ID pi 넣고 저장 esc + ctrl_X
   6) sudo service vsftpd restart 재실행
   7) FTP 클라이언트로 접속 테스트.. 나머지 ID도 마찬가지 방식으로 적용함
   8) 참고로 사용자 추가는 여기 참고 https://flyingdeuk.github.io/posts/Pi-user/
   9) 좀더 자세한건 참고 블로그 방문

6. 웹서버 설정 APM  참고 https://bugwhale.tistory.com/39
   1) 아파치2 설치 sudo apt install apache2
       보통 /var/www/html 가 기본이 되는데 이 폴더들에 대한 권한을 특정ID에 부여해 주어야 한다.
       그래야 ftp 등으로 html 파일 등을 변경할 수 있음..
       chown 사용자ID /var/www 그리고 /var/www/html
       chgrp 사용자ID /var/www 그리고 /var/www/html

   2) PHP 설치 sudo apt install php php-fpm php-curl php-gd php-intl php-mbstring php-mysql php-soap php-xml php-xmlrpc php-zip libapache2-mod-php
   3) PHP 설치확인 
      sudo nano /var/www/html/phpinfo.php 해서
      <?php phpinfo(); ?> 입력하고 저장한 후 
      브라우저에서 http://192.168.0.???/phpinfo.php 로 접속하여 PHP 정보를 확인함
   4) MariaDB 설치
      설치 : sudo apt-get install mariadb-server
      초기보안설정 sudo mysql_secure_installation
         - 초기비번은 없으므로 엔터로 넘어가고 새로 pw를 설정함.. 나머지는 읽으면서 판단..
   5) MariaDB 설치 확인 
      sudo mysql -u root -p
   6) MariaDB 유저추가 : 위 root 로그인 상태에서.. 참고 https://nickjoit.tistory.com/144
      use mysql;     // mysql database 선택
      select host, user, password from user; //현재 유저 확인
      create user 사용자ID identified by '비밀번호'; //이렇게 하면 보통 모든곳에서 접근가능 유저가 됨.. 즉 사용자ID@%
             없앨 땐 drop user 사용자ID;
      show databases; //현재 데이터베이스들 보여줌
      create database 데이터베이스이름 default character set utf8; //문자형식을 utf8로 해야 한글이 안깨질 것임...
             없앨 땐 drop database 데이터베이스이름
      GRANT ALL privileges ON 데이터베이스이름.* TO 사용자ID IDENTIFIED BY '비밀번호'; //데이터베이스에 대한 모든 권한을 사용자에게 부여함..
      FLUSH privileges; //DB에 저장 최종 승인
   7) MariaDB 외부 client 하이디 HeidiSQL 참고: https://freehoon.tistory.com/53
      sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf  //bind-address = 0.0.0.0 로 바꿈
      sudo systemctl restart mariadb //start stop restart
      sudo iptables -A INPUT -p tcp --dport 3306 -j ACCEPT //외부접속 포트허용
      sudo iptables -A OUTPUT -p tcp --dport 3306 -j ACCEPT //내부접속 포트허용
      sudo iptables-save //변경사항저장
      외부접속클라이언트 http://www.heidisql.com/ 포터블도 있음 

   8) phpMyAdmin 은 설치하지 말길.. 보안상 문제가 있음.. 하이디 또는 기타 클라이언트를 이용할 것을 권함

7. 기타