패스워드에 lock 걸어 잠그기 [root@push06 skel]# passwd -l kbs Locking password for user kbs. passwd: Success [root@push06 skel]# grep kbs /etc/shadow kbs:!!$1$aPkNiTws$ZV5bM4sc48RINJ0vK5U3f0:15947:0:99999:7::: [root@push06 skel]# passwd -u kbs Unlocking password for user kbs. passwd: Success.
vi 형식v [대상파일이름] 설명vi는 3가지 모드가 있다.명령모드 : vi를 처음 실행한 상태.명령어를 통해 단어를 찾거나 지우거나.실행취소등..할수있다.-dd : 현재 커서가 위치한 한 라인 전체 삭제.-p : 아래쪽으로 붙여넣기-dw : 커서가 위치한 곳의 한단어 삭제-x : 커서가 위치한 문자 삭제.한글자씩.-R : 커서가 위치한 곳의 글자 교체.~ : 커서가 위치한 곳부터 대/소문자 변경-u : 실행취소- . : 이전명령실행-?단어 : 내용에 포함된 단어 검색-y : 한 글자 복사-yy : 현재 라인 복사-l : 오른쪽으로 이동-h : 왼쪽으로 이동-k : 위로 이동-j : 아래로 이동-w : 한단어 앞으로 이동-b : 한단어 뒤로 이동-0 : 문서의 맨 앞으로 이동-e : 단어의 마지막글자로 이동 편집모드 : 명령모드에서 i o a s 등을 눌러 파일 내용을 편집할수 있는 상태. esc를 누르면 명령모드로 돌아간다.-i : 커서가 있는 문자 앞에서부터 입력-l : 현재 줄에서 제일 처음부터 입력-a : 커서가 위치한 문자 뒤에서 부터 입력 -A : 현재줄에서 맨 뒤부분부터 입력-o : 현재 줄 한칸 아래에서 부터 입력-O : 현재줄 한칸 위에서부
chkconfig : 시스템 부팅시 런레벨에 따라 자동 실행되는 데몬들을 알수있고, 특정 데몬을 추가,수정할수 있다 chkconfig [옵션] 데몬명 [on/off] chkconfig --list : 현재 데몬들의 목록을 출력chkconfig --level 35 데몬명 on(off) 예root@hosting01:~# chkconfig --level 35 xinetd on root@hosting01:~# chkconfig --listNetworkManager 0:off 1:off 2:off 3:off 4:off 5:off 6:offacpid 0:off 1:off 2:on 3:off 4:on 5:on 6:offanacron 0:off 1:off 2:on 3:off 4:on 5:on 6:offxinetd 0:off 1:off 2:off 3:on 4:on 5:on 6:off root@hosting01:~# chkconfig --level 35 xinetd off root@hosting01:~# chkconfig --listNetworkManager 0:off 1:off 2:off 3:off 4
apache 웹서버 자체 보안설정리눅스2013/08/22 19:47수정삭제 http://blog.naver.com/winsomeday/130174753394 전용뷰어 보기httpd.conf 파일을 루트만 확인 및 수정할 수 있도록 퍼미션을 600으로 설정 아파치 cgi 실행옵션이 필요하지 않은 서버에서는 사용하지 못하게 한다. → AddHandler cgi-script .cgi 특정 디렉토리내에서만 cgi 사용가능하게 설정 cgi실행파일을 웹서버에 올려두고 실행하면 시스템 정보가 쉽게 유출되므로, httpd.conf파일에서 설정 →ScriptAlias /cgi-bin/ "/usr/local/apache/cgi-bin/" httpd.conf의 지시자 Options에 설정되는 Indexes 값 문제 Indexes가 설정되어 있고 DirectoryIndex에서 지정한 파일이 디렉토리내에 없으면 그 디렉토리의 목록을 출력해 주므로 →Options 지시자에서 Indexes 값 삭제 Options 지시자 FollowSymLinks를 제거 예를 들어 /home/kbs/www/linkfile 파일이 "ln -s /home/kbs/linkfile /etc/passwd" 의
install : 권한, 속성, 소유자, 그룹명등을 지정하여 복사하는 명령어 install 명령어 옵션 -c : 전통 유닉스 버젼과 호환을 위한 옵션, 별 의미 없음 -d : 복사될 경로를 지정, 경로가 존재하지 않으면 디렉토리 만들어서 복사 -g : 그룹 변경 (-g 그룹명) -m : 퍼미션 변경 (-m 퍼미션) -o : 소유자 변경 (-o 소유자)
사용형식 : gpasswd [옵션] [그룹명] [옵션] -a user : 특정 그룹에 유저 추가 -d user : 특정 그룹에서 유저 제거 -r : 특정 그룹의 패스워드 제거 -R : 특정 그룹에 접근 제한 -A user : 특정 그룹의 그룹관리자로 지정 -M user : 특정 그룹의 그룹멤버를 새로 설정 vi /etc/group 로 수정하는 방법이 보편적
/etc/skel 디렉토리는 사용자 계정 생성(useradd)시에 환경 설정 파일들이 저장되어 있는 디렉토리다.이 파일들은 useradd 명령어로 계정 생성시에 /etc/skel 이라는 디렉토리에 존재하는 파일들을 그대로 복사해온다.새로생성되는 사용자의 홈디렉토리로 복사 되어진다. root@web:/etc# ll skeltotal 20drwxr-xr-x. 2 root root 4096 Dec 25 07:51 .drwxr-xr-x. 82 root root 4096 Jan 2 03:24 ..-rw-r--r--. 1 root root 18 May 11 2012 .bash_logout-rw-r--r--. 1 root root 176 May 11 2012 .bash_profile-rw-r--r--. 1 root root 124 May 11 2012 .bashrcroroot@web:/# useradd KY root@web:/# passwd hky Changing password for user hky.New password: passwd: all authentication tokens updated successfully.ot@web:/# ll /home/KY tot
w 명령어 현재 접속중인 사용자들의 정보를 보는 명령어이다. 명령어의 위치 : /usr/bin/w - 서버의 현재 시각 정보 - 서버 부팅이후 시스템 작동시간 - 서버 접속자의 총 수 - 접속자별 서버 평균 부하율 정보 - 접속자별 서버 접속 계정명 - 접속자 별 접속 TTY명 - 접속자 별 접속한 IP명 - 접속자 별 로그인 시각 정보 - 접속자 별 CPU 사용 정보(JCPU, PCPU) - 접속자별 현재 사용 명령어 정보 -JCPU: tty필드에서 사용하는 징치명에서 사용하는 모든 프로세스의 CPU사용시간을 나타냄. 이때 지난 background로 실행되는 시간제외.현재실행되는 background 작업시간은 포함. -PCPU: 해당 w결과 값에서 WHAT필드에 나타나는 프로세스명에서 사용하는 CPU의 총시간을 나타냄 옵션 -h : head 정보(uptime정보와 필드 제목 정보)를 출력하지않고 좀 더 간단한 정보 출력. -s : JCPU, PCPU의 정보를 생략하고 결과 출력한다. -f : 고정된 형식의 FROM필드의 값(접근한 사용자의 ip주소 정보)을 생략하고 보여준다. 예 [root@web ~]# w 10:44:37 up 1 min, 2 us
active, stanby 구분 [root@~]# pstree ├─pulse───lvsd───2*[nanny] // active [root@~]# pstree ├─pulse // stanby <LVS1> eth0 123.45.123.20 eth0:1 123.45.123.59 [root@~]# ipvsadm -L // 현재 로드밸런싱 되고 있는 리스트 IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 123.45.123.59:http wlc persistent 1800 // 59 VIP → 75 VIP -> 123.45.123.75:http Route 1 131 20 → 77 VIp -> 123.45.123.77:http Route
runleve 중, 1=single-user모드는 별도의 로그인 과정 없이 root 계정으로 시스템을 사용할 수 있는 모드 이 모드로 부팅하면 root 패스워드를 변경할 수 있다. ※ 콘솔모드에서만 된다. <GRUB 메뉴가 나올경우> 1. 부팅해서 아래 커널선택 후 e키를 입력 2. Kernel 로 시작하는 줄에서 e키를 한번 더 입력 3. 끝부분에 "1" 또는 "single" 입력하고 Enter 누르면 2번의 화면으로 돌아오게 되는데 b키 입력 4. "passwd" 명령어 사용해서 패스워드 변경하고 reboot <선택메뉴만 나올경우> 1. Ctrl + X 를 누름 2. linux single 를 입력 후 엔터 3. 명령프롬프트가 나오면 passwd 를 누른뒤 암호를 변경
◎ /etc/passwd와 /etc/shadow 필드 설명 [/etc/passwd] root : x : 0 : 0 : root : /root : /bin/bash 필드 1 2 3 4 5 6 7 1 : 사용자명2 : 패스워드3 : 사용자 계정 uid4 : 사용자 계정 gid5 : 사용자 계정 이름6 : 사용자 계정 홈 디렉토리7 : 사용자 계정 로그인 쉘 [/etc/shadow] root : $1$9L2L0oTwd : 12751 : 0 : 99999 : 7 : : :필드 1 2 3 4 5 6 7 8 9 1 : 사용자명2 : 암호화된 패스워드3 : 암호 최종 변경일4 : 암호 변경 최소일수5 : 암호 변경 최대일수6 : 암호 변경 경고일 수7 : 암호 비활성화 기간8 : 계정 사용 종료일9 : 예약 필드
ftp란..파일의 업/다운로드를 할수 있는 시스템을 말한다.일반적으로 파일서버or다운로드사이트 등의 용도로 구축되어 ftp서버가 사용된다.ftp서버에는 proftpd와 vsftp가 많이 사용된다. 1.proftp 장점과 특징-standalone환경에서의 설치,운용과 xinetd모드의 설치운용이 가능.-shadow 패스워드시스템에서 사용가능-proftpd에서도 .htaccess를 개별 디렉토리에서의 접근제어 파일로 사용가능.-파일및 디렉토리 퍼미션을 개별설정 가능하며 서버보안 면에서 효율적 운용가능하다.-free sofrware이며 소스공개가능. 2.proftpd 관련 중요파일/etc/pam.d/ftp : proftpd의 보안을 위한 접근허용정책파일/etc/proftpd.conf : proftpd의 환경설정 파일/usr/sbin/in.proftpd : proftpd를 xinetd모드로 운영할 경우의 proftpd데몬 링크파일/usr/sbin/proftpd : proftpd의 데몬파일/home/ftp : anonymous로 proftpd에 접속할 경우의 ftp 홈디렉토리 /etc/rc.d/init.d/proftpd start : proftpd 시작/etc/rc