mount시 access time 기록하지 않도록 설정하기

Linux 2019.03.13 09:04 Posted by 김한별 behonestar

noatime 옵션을 주면 파일을 read해도 access time이 업데이트되지 않기 때문에 불필요한 쓰기가 발생하지 않는다. 


mount -t ext4 -o noatime /dev/mmcblk0p22 /common


'Linux' 카테고리의 다른 글

mount시 access time 기록하지 않도록 설정하기  (0) 2019.03.13
[nginx] https 적용하기  (0) 2018.06.22
[nginx] digest 인증 적용하기  (0) 2018.06.22
crontab 사용법  (0) 2017.08.31
Ubuntu Nginx 빌드  (0) 2017.07.20
sshd 디버깅 로그 보기  (0) 2017.07.05

[nginx] https 적용하기

Linux 2018.06.22 14:58 Posted by 김한별 behonestar

키 파일 생성

openssl req -new -newkey rsa:2048 -nodes -keyout foobar.key -out foobar.csr



인증서 생성

openssl x509 -req -days 365 -in foobar.csr -signkey foobar.key -out foobar.crt



키 파일과 인증서 복사

chmod 666 foobar.*

cp foobar.key foobar.crt /var/www



nginx 설정

vi /etc/nginx/sites-enabled/myconf

──────────────────────

server {

        listen 8443;


        ssl on;

        ssl_certificate /var/www/foobar.crt;

        ssl_certificate_key /var/www/foobar.key;


        server_name mysite;


        location / {

                ...

        }

}



nginx 재시작

sudo service nginx restart



끝.

'Linux' 카테고리의 다른 글

mount시 access time 기록하지 않도록 설정하기  (0) 2019.03.13
[nginx] https 적용하기  (0) 2018.06.22
[nginx] digest 인증 적용하기  (0) 2018.06.22
crontab 사용법  (0) 2017.08.31
Ubuntu Nginx 빌드  (0) 2017.07.20
sshd 디버깅 로그 보기  (0) 2017.07.05

[nginx] digest 인증 적용하기

Linux 2018.06.22 13:07 Posted by 김한별 behonestar

ubuntu 16.04 기준으로 작성



nginx 소스코드 내려받기


sudo apt-get install build-essential


sudo apt-get build-dep nginx


sudo apt-get source nginx




digest 모듈 내려받고 압축풀기


wget https://github.com/samizdatco/nginx-http-auth-digest/tarball/master -O - | tar zxvf -


cp -r samizdatco-nginx-http-auth-digest-* nginx-*/debian/modules/nginx-http-auth-digest




빌드 옵션에 digest 모듈 추가


cd nginx-*


vim debian/rules


full_configure_flags := \

  ...

  --add-module=$(MODULESDIR)/nginx-http-auth-digest \

  ...




빌드 및 설치


dpkg-buildpackage -rfakeroot


dpkg -i ../nginx-common_* ../nginx-full_*




digest password 파일 생성


cd nginx-*/debian/modules/nginx-http-auth-digest


htdigest.py passwd.digest khb 'digestauthrealm'


mv passwd.digest /var/www




digest 설정


vi /etc/nginx/site-enabled/*

──────────────────────

server {

        listen 80 default_server;

        listen [::]:80 default_server;


        server_name mysite;


        auth_digest_user_file /var/www/passwd.digest;

        location / {

                auth_digest 'digestauthrealm';

        }

}



끝.

'Linux' 카테고리의 다른 글

mount시 access time 기록하지 않도록 설정하기  (0) 2019.03.13
[nginx] https 적용하기  (0) 2018.06.22
[nginx] digest 인증 적용하기  (0) 2018.06.22
crontab 사용법  (0) 2017.08.31
Ubuntu Nginx 빌드  (0) 2017.07.20
sshd 디버깅 로그 보기  (0) 2017.07.05

crontab 사용법

Linux 2017.08.31 17:58 Posted by 김한별 behonestar

출처 : https://mytory.net/archives/601


# crontab -e

───────

0 5 * * * /home/mytory/svn_export.sh


0 5 * * * : 매일 5시 0분에 실행.

5 * * * * : 매시 5분이 될 때마다 실행. 즉, 한 시간 간격으로 실행.

* * * * * : 1분에 한 번씩 실행.

0 5 1 * * : 매달 1일 새벽 5시에 실행.

*/5 * * * * : 5분에 한 번씩

0 */5 * * * : 5시간에 한 번씩

0 5,11 * * * : 새벽 5시와 밤 11시.

0 5,11 * * 0,3 : 매주 일요일과 수요일 새벽 5시와 밤 11시.


'Linux' 카테고리의 다른 글

[nginx] https 적용하기  (0) 2018.06.22
[nginx] digest 인증 적용하기  (0) 2018.06.22
crontab 사용법  (0) 2017.08.31
Ubuntu Nginx 빌드  (0) 2017.07.20
sshd 디버깅 로그 보기  (0) 2017.07.05
openssl arm cross complie  (0) 2017.01.10

Ubuntu Nginx 빌드

Linux 2017.07.20 15:06 Posted by 김한별 behonestar

nginx 소스코드 다운로드

sudo su

mkdir ~/nginx_src

cd ~/nginx_src

apt-get build-dep nginx

apt-get source nginx


nginx 모듈 다운로드

cd ~/nginx_src/

git clone https://github.com/arut/nginx-rtmp-module


빌드 & 설치

cd ~/nginx_src/nginx-1.10.3


./configure --with-cc-opt="-g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2" --with-ld-opt="-Wl,-Bsymbolic-functions -fPIE -pie -Wl,-z,relro -Wl,-z,now" --prefix=/usr/share/nginx --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-pcre-jit --with-ipv6 --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_addition_module --with-http_dav_module --with-http_geoip_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_image_filter_module --with-http_v2_module --with-http_sub_module --with-http_xslt_module --with-stream --with-stream_ssl_module --with-mail --with-mail_ssl_module --with-threads --add-module=../nginx-rtmp-module


make

make install



'Linux' 카테고리의 다른 글

[nginx] digest 인증 적용하기  (0) 2018.06.22
crontab 사용법  (0) 2017.08.31
Ubuntu Nginx 빌드  (0) 2017.07.20
sshd 디버깅 로그 보기  (0) 2017.07.05
openssl arm cross complie  (0) 2017.01.10
zeromq arm cross complie  (0) 2017.01.10

sshd 디버깅 로그 보기

Linux 2017.07.05 09:32 Posted by 김한별 behonestar

1. /etc/ssh/sshd_config 수정

# Logging

SyslogFacility USER

LogLevel DEBUG2


2. sshd 재시작

sudo service sshd restart


3. 로그 확인

tail -f /var/log/syslog


'Linux' 카테고리의 다른 글

crontab 사용법  (0) 2017.08.31
Ubuntu Nginx 빌드  (0) 2017.07.20
sshd 디버깅 로그 보기  (0) 2017.07.05
openssl arm cross complie  (0) 2017.01.10
zeromq arm cross complie  (0) 2017.01.10
rabbitmq-c arm cross complie  (0) 2017.01.10

openssl arm cross complie

Linux 2017.01.10 10:16 Posted by 김한별 behonestar

1. 다운로드

wget https://www.openssl.org/source/openssl-1.0.2d.tar.gz

tar -zxvf ./openssl-1.0.2d.tar.gz


2. 라이브러리 설치할 디렉토리 생성

mkdir -p ~/etc/openssl


3. Makefile 생성

cd ./openssl-1.0.2d

./Configure linux-generic32 shared -DL_ENDIAN --prefix=/data1/khb/etc/openssl --openssldir=/data1/khb/etc/openssl


4. 빌드 & 설치

make install CC=arm-hisiv400-linux-gnueabi-gcc \

  RANLIB=arm-hisiv400-linux-gnueabi-ranlib \

  LD=arm-hisiv400-linux-gnueabi-ld \

  MAKEDEPPROG=arm-hisiv400-linux-gnueabi-gcc \

  PROCESSOR=ARM


'Linux' 카테고리의 다른 글

Ubuntu Nginx 빌드  (0) 2017.07.20
sshd 디버깅 로그 보기  (0) 2017.07.05
openssl arm cross complie  (0) 2017.01.10
zeromq arm cross complie  (0) 2017.01.10
rabbitmq-c arm cross complie  (0) 2017.01.10
Ubuntu 16.04 Samba 설정  (1) 2016.06.14

zeromq arm cross complie

Linux 2017.01.10 10:13 Posted by 김한별 behonestar

1. 다운로드

wget http://download.zeromq.org/zeromq-4.1.3.tar.gz

tar -zxvf zeromq-4.1.3.tar.gz


2. thread stack size 변경

: 메모리 점유율을 낮추려고 튜닝한 것이므로 생략 가능.

vi ./zeromq-4.1.3/src/thread.cpp

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

void zmq::thread_t::start (thread_fn *tfn_, void *arg_)

{

    tfn = tfn_;

    arg = arg_;


+    size_t stacksize;

+    pthread_attr_t p_attr;

+    pthread_attr_init(&p_attr);

+    stacksize = 1024 * 1024; //1024KB

+    if(!pthread_attr_setstacksize(&p_attr, stacksize))

+    {

        int rc = pthread_create (&descriptor, &p_attr, thread_routine, this);

        posix_assert (rc);

+    }

}


3. 라이브러리 설치할 디렉토리 생성

cd zeromq-4.1.3

mkdir ./build


4. Makefile 생성

./configure CC=arm-hisiv400-linux-gnueabi-gcc \

   AR=arm-hisiv400-linux-gnueabi-ar \

   RANLIB=arm-hisiv400-linux-gnueabi-ranlib \

   LD=arm-hisiv400-linux-gnueabi-ld \

   --host=arm-hisiv400-linux-gnueabi \

   --prefix=/data1/khb/etc/zeromq-4.1.3/build/ \

   --without-libsodium 


또는


./configure --host=arm-hisiv400-linux-gnueabi \

   --prefix=/data1/khb/etc/zeromq-4.1.3/build/ \

   --without-libsodium


5. 빌드

make

make install


6. 타겟 파일시스템에 복사 (libzmq)

cp -ra ./build/* /data1/khb/filesys_ncx3/usr


7. 타겟 파일시스템에 복사 (libstdc++)
: 타겟 파일리스템에 들어있던 libstdc++과 호환되지 않아서 컴파일러쪽의 libstdc++을 복사함

# 기존 라이브러리 제거

rm -f ~/filesys_ncx3/lib/libstdc*


# cross complier 디렉토리의 libstdc++ 라이브러리 복사

cp -a /home/opt/hisilicon/arm-hisiv400-linux/arm-hisiv400-linux/arm-hisiv400-linux-gnueabi/lib/libstdc*.so* \

   ~/filesys_ncx3/lib



libzmq 라이브러리 테스트

1. libzmq 사용하여 소켓을 열고 닫는 예제

zhelpers.h

server.c

client.c


2. 빌드

# arm-hisiv400-linux-gnueabi-gcc server.c -L/data1/khb/filesys_ncx3/lib -L/data1/khb/filesys_ncx3/usr/lib -lzmq -lstdc++ -I/data1/khb/filesys_ncx3/usr/include -o server

# arm-hisiv400-linux-gnueabi-gcc client.c -L/data1/khb/filesys_ncx3/lib -L/data1/khb/filesys_ncx3/usr/lib -lzmq -lstdc++ -I/data1/khb/filesys_ncx3/usr/include -o client


3. 실행

./server

./client


'Linux' 카테고리의 다른 글

sshd 디버깅 로그 보기  (0) 2017.07.05
openssl arm cross complie  (0) 2017.01.10
zeromq arm cross complie  (0) 2017.01.10
rabbitmq-c arm cross complie  (0) 2017.01.10
Ubuntu 16.04 Samba 설정  (1) 2016.06.14
Linux 계정만 생성하고 shell 로그인은 차단하기  (0) 2016.05.20