FreeBSD에서 IPFW를 이용하여 방화벽 설정이 가능 (IPFW를 사용하기 위해서는 커널 빌드가 필요하지만 라즈베리용 FreeBSD에서는 이미 적용되어 있음) 시스템이 부팅될 때 자동으로 IPFW를 시작되도록 /etc/rc.conf 파일에 내용 추가 (로깅, 설정파일도 지정)# vi /etc/rc.conffirewall_enable="YES"firewall_logging="YES"firewall_type="/etc/firewall.conf" 기타 세부 설정# vi /etc/sysctl.confnet.inet.ip.fw.verbose=1net.inet.ip.fw.verbose_limit=5 방화벽 설정(우선 순위가 높은 규칙이 우선적으로 적용되기 때문에 목적에 따라 순위를 지정)# vi /etc/fir..
- Install py-certbot# cd /usr/ports/security/py-certbot/# make install clean - Configuration# certbot certonly --webroot --webroot-path /usr/local/www/apache24/data/ -d do9.kr -d www.do9.kr# certbot certonly --webroot --webroot-path /usr/local/www/apache24/rnd/ -d rnd.do9.kr httpd.conf 파일 내용 추가# vi /usr/local/etc/apache24/httpd.conf Listen 80Listen 443 ServerName www.do9.kr Redirect / https://ww..
Virtual Hosts 설정FreeBSD에서 Virtual Hosts를 설정하기 위해서는 /usr/local/etc/apache24/httpd.conf 파일에 정보를 추가해주면 된다. Listen 80 ServerName www.do9.krDocumentRoot /usr/local/www/apache24/data/ ServerName rnd.do9.krDocumentRoot /usr/local/www/apache24/rnd/ AllowOverride None Options None Require all granted 정보를 추가해주고 적용하기 위해서 서비스를 재시작한다.# apachectl restart# service apache24 restart 도메인으로 접속하기 위해서 서브도메인 추가가 필요하다.
- 프로세스 정보 확인FreeBSD에서 기본적으로 /proc 에서 프로세스에 대한 정보를 확인할 수가 없다. mount 해보면 procfs가 없는 것을 볼 수 있다. # mount -t procfs proc /procmount 해주고 난 다음 다시 확인해보면 동작하는 것을 확인할 수 있다. 다시 /proc 에서 프로세스에 대한 정보를 확인해보면 프로세스에 대한 정보를 확인할 수 있다. - 파일 시스템 테이블에 추가하기# vi /etc/fstab proc /proc procfs rw 0 0 를 추가해주면 시스템을 시작할 때마다 자동으로 procfs를 mount 시켜준다.
FreeBSD 11을 Raspberry Pi 2에 설치하고 설정 및 업데이트하는 데 시간이 많이 소요가 된다.따라서, 설정을 마치고 나서 백업을 해두면 조금 더 편하게 초기 상태로 되돌릴 수 있다.방법은 FreeBSD 11을 설치할 때와 비슷하며 dd 명령어를 이용하여 반대로 해주면 된다. SD Card 삽입 후 확인$ diskutil list Disk unmount$ diskutil unmountDisk disk2 Backup$ sudo dd if=/dev/disk2 of=FreeBSD-20150901.img bs=1m conv=sync 복원은 설치와 동일한 방법으로 백업한 파일을 이용하면 된다.
- Install wget# cd /usr/ports/ftp/wget/# make install clean - Usagehttps://code.google.com/p/firmware-mod-kit/에서 firmware-mod-kit을 wget을 이용해서 받기(Modify firmware images without recompiling!)# wget https://firmware-mod-kit.googlecode.com/files/fmk_099.tar.gz
- Install vsftpd# cd /usr/ports/ftp/vsftpd/# make install clean - Configuration# vi /usr/local/etc/vsftpd.confanonymous_enable=NOlocal_enable=YESwrite_enable=YESlocal_umask=022dirmessage_enable=YESxferlog_enable=YESconnect_from_port_20=YESxferlog_file=/var/log/vsftpd.logxferlog_std_format=YESftpd_banner=Welcome to DO9 FTP service.secure_chroot_dir=/usr/local/share/vsftpd/emptylisten=YESbackgroun..
- Install tmux # cd /usr/ports/sysutils/tmux/ # make install clean - Configuration # vi /root/.tmux.conf # Set bind key set-option -g prefix C-x bind-key C-x last-window (이미 Ctrl+x가 있을 경우 한 번 더 입력해주면 사용 가능) # Set status bar set -g status-bg black set -g status-fg white set -g status-left '#[fg=green]#H ' set -g status-right '#[fg=yellow]#(uptime | cut -d "," -f -2)' # Highlight active window set..
FAMP(FreeBSD with Apache, MySQL and PHP) - Apache 2.4 – Installation and Configuration# cd /usr/ports/www/apache24/# make install clean Create a file named /boot/loader.conf or edit it if it is already present and add the following line:accf_http_load="YES" # vi /usr/local/etc/apache24/httpd.conf # vi /etc/rc.confapache24_enable="YES" # /usr/local/sbin/apachectl start# service apache24 start - M..
- Install python27 # cd /usr/ports/lang/python27/ # make install clean Configuration # ln -s /usr/local/bin/python2.7 /usr/bin/python 설치된 모듈 확인 # python -c 'help("modules")' - Install py-pip # cd /usr/ports/devel/py-pip/ # make install clean # pip FLAVOR=py27 install clean Configuration # ln -s /usr/local/bin/pip-2.7 /usr/bin/pip requests 모듈 설치 # pip install requests pip를 통한 설치된 모듈 확인(기본 모듈은 제외)..
- Install bash # cd /usr/ports/shells/bash/ # make install clean - Configuration # ln -s /usr/local/bin/bash /bin/bash # chshShell: /usr/local/bin/bash # vi /root/.bashrc alias vi='vim' alias ls='ls -FG' # vi /root/.profilesource /root/.bashrcsource $HOME/.bashrc # bash(bash에서 make DISABLE_VULNERABILITY=yes 같은 옵션을 줄 경우, 명령줄에서 사용 가능)
- Install vim-tiny# cd /usr/ports/editors/vim-tiny/# make install clean - ConfigurationVim 설정# vi /usr/local/etc/vim/vimrc(초기 설정)set nocompatibleset bs=indent,eol,startset history=50set rulerset numberset autoindentset smartindentset cindentset tabstop=4set shiftwidth=4set expandtabset pasteset nobackupset viminfo= alias 설정# vi /root/.cshrcalias ls ls -FGalias vi vim 변경사항 적용# source .cshrc
- Portsnap 구성 방법Portsnap is a system written by Colin Percival for secure distribution of compressed, digitally signed snapshots of the FreeBSD ports tree. The distribution follows the client–server model and uses the transport protocol HTTP (pipelined HTTP). The base system of FreeBSD includes Portsnap. This is a fast and user-friendly tool for retrieving the Ports Collection and is the recomme..
- FTP 설정FTP 서비스 자동 실행 설정 # vi /etc/rc.conf ftpd_enable="YES" FTP 접속 메시지 설정# echo 'Welcome :)' >> /etc/ftpwelcome FTP 사용자 접근 설정# vi /etc/ftpusersroot로 접근을 하고 싶은 경우, 해당 파일에서 root 제거 또는 주석(#) 처리 서비스 시작 # service ftpd start# /etc/rc.d/ftpd start FTP 접속# ftp localhost - Anonymous FTP 설정 ftpd 서비스 중지# service ftpd stop ftpd 서비스 자동 실행 설정 주석 처리 또는 제거# vi /etc/rc.conf#ftpd_enable="YES" Anonymous FTP user ..
- USER 생성 대화식 생성 방법 # adduser - USER 삭제 대화식 삭제 방법 # rmuser (FreeBSD 설치 시, freebsd(기본 계정)에 대해서 적절한 조치가 필요함) USER 삭제 # pw userdel username USER 삭제(홈디렉터리 포함) # pw userdel username -r - Anonymous FTP user 계정 생성 - USER 권한 상승일반 사용자 권한으로 su 명령어를 사용할 수가 없다. su: Sorry su: Sorry for normal user account. 일반 사용자 권한으로 su 명령어를 사용하기 위해서는 wheel 그룹을 추가하면 된다. You can fix this problem by adding user account to the..
1. Raspberry Pi 2 준비Raspberry Pi 2를 구한다. 2. FreeBSD 다운ftp://ftp.freebsd.org/ 서버에 접근가장 최근의 Snapshots을 다운 받으면 된다.웹 브라우저를 통해서 받아도 되고 FTP를 통해서 받아도 된다. ftp://ftp.freebsd.org/pub/FreeBSD/snapshots/arm/armv6/ISO-IMAGES/11.0/FreeBSD-11.0-CURRENT-arm-armv6-RPI2-20150625-r284814.img.xz 3. xz 압축 풀기 4. Micro-SD Card 삽입 후 Burn$ diskutil list또는 $ df -h위 명령어를 이용하여 Micro-SD Card가 삽입된 disk를 확인한다. 그리고 아래와 같이 disk..