728x90

/ 이름을 물어보면 정보를 알려줌
# dig www.naver.com  
- 자세하게 알려줌 

/ 네트워크 설정하면서 우리가 집어넣은 네임서버 정보를 볼 수 있다.
# cat /etc/resolv.conf

 

/ 파이프 more, 파이프 less
# rpm -ql httpd | more -> 스페이스바로 아래아래로 볼 수 있다.
# rpm -ql httpd | less -> 화살표로 왔다갔다 볼 수 있다.
- less를 빠져나올때는 q를 누르면 된다.
- less는 한줄씩 볼때는 좋은데 양이 또 너무 많으면 보기 힘들다.
- more은 윗 페이지를 다시 볼 수 없다.

 

# yum info httpd | head -10
- | -10 -> 헤드에서 10줄만 보여줘

# yum search httpd | head -10

- info와 search의 차이, 각 결과화면을 기억하기

 

# yum -y update httpd
- 업데이트 하기
- 되어 있는 경우 할것이 없다고 나옴

# yum -y install httpd
- 이미 설치되어있는 경우 할것이 없다고 나옴

/ 서비스 활성화, 비활성화 시키기
# systemctl disable httpd
# systemctl enable httpd
- ln : 링크
- -s : 소프트 링크

 

/ 링크
- ln : link
- ln -s : soft link. 유연성x. 링크 원본이 삭제되어도 목적 파일이 삭제되지 않음
- ln    : hard link. 유연성x. 링크 원본이 삭제되면 목적파일링크가 삭제된다.

/ 방화벽 정책
- All Deny : 일단 다 막고 시작함. 특정포트, 특정 서비스만 오픈, 중급이상 관리자들이 많이 사용
- All Open : 일단 다 열고 시작함. 필요한 포트와 서비스만 차단, 초급관리자들이 많이 사용
* 우리꺼는 들어올때는 All Deny, 나가는것은 All Open이다.

 

여기까지 복습
=================================================================

/ ssh
- Secure Shell의 약자. 22/tcp 암호화

/ telnet, telnetd : 23/tcp 암호화
- 텔넷은 보안이 취약하여 root로 바로 접속할 수 없다.

/ 텔넷 yum 확인
# yum list telnet*
- telnet : 클라이언트용
- telnet-server : 서버용

 

/ 설치하기
# yum install -y telnet telnet-server

 

/ 설치 후 확인
# yum list telnet*

 

/ 텔넷 시스템 시작
# systemctl start telnet.socket
# systemctl enable telnet.socket

/ 텔넷 상태 확인
# systemctl status telnet.socket

 

/ 프로세스 찾는 과정...
- ps -ef에서 telnet으로 검색이 안되는데 이유는 systemd로 통합이 되어서 그렇다고..
# ps -ef | grep systemd 로 검색해야 한다.

 

/ 텔넷 접속용 계정 따로 만들기 실습
# useradd teluser
- shadow에서 조회했을때 !!으로 되어있으면 teluser로 로그인할 수 없는 상태이다.
* *이어도 패스워드가 잠겨있는 상태이나 다른 인증방식으로 로그인할 수 있는 상태이다.

- 비밀번호를 만들어 주면 로그인이 가능해진다.
# passwd teluser
- 패스워드 부분에 $6$는 비밀번호 암호화 알고리즘, 두번째 $블라블라$는 솔팅 암호화 난수이다.
- 끝 부분의 7은 비밀번호 만료일수일다. (6번째 순서)
- 비어있는 7번째는 사용자 계정이 만료가 되는 날짜를 임의로 넣을 수 있다.
- 비어있는 8번째는 사용자 계정이 만료가 되려면 며칠이 남았는지 표시된다.(만료일수)

 

/ 사용자 관련 설정 파일
# vi /etc/login.defs
- 요 부분이 중요하다. 외워둘것

 

/ 사용자를 추가할때 홈 디렉토리를 어따가 둘지, 쉘을 뭘 쓸지 등등을 정한다.

 

/ 배시쉘을 쓰는 계정의 프로파일에 대한 정보. 배시쉘에 대한 일반적인 정보가 들어있는 디렉토리이다.
# ls -al /etc/skel

 

/ 사용자를 생성할때 홈디렉토리를 설정하고 싶다면 -d 옵션을 준다.
# useradd -d 경로 사용자이름
ex) # useradd -d /root/mydir teluser2

/ 사용자를 지울때 홈 디렉토리까지 지우려면
# userdel -r 사용자이름
ex) # userdel -r teluser2

/ 사용자를 만들면서 비밀번호를 같이 적용하려면 -p옵션을 준다.
# useradd -p 비밀번호 사용자이름
ex) # useradd -p 1234 teluser3
- 단, 이렇게 하면 shadow에 평문으로 저장이 된다.

 

/ 이전 리눅스의 /etc/passwd에 있는 비밀번호를 /etc/shadow에 옮기려면
- /etc/passwd pwconv -> /etc/shadow를 하면 된다. (지금 리눅스에서 하면 이상해짐)
- 되돌리는 것은 pwunconv를 하면 된다.

 

/ 터미널 접속하기
* 터미널에서는 사용자 계정일 경우 $로 표시된다.

 

/ 접속한 유저들 확인해보기
# who

 

/ 텔넷 나가기
# exit

/ 방화벽에 23번 포트 허용해주기

 

/ 외부 pc에서 cmd로 텔넷을 사용해보기
- 맨처음에는 텔넷을 사용할 수 없으므로 활성화 해야한다.

- 제어판 > 프로그램 > Windows 기능 켜기/끄기 > 텔넷 클라이언트 체크

- 이제 접속이 될것이다.

- who로 확인해보면 접속한 유저 목록이 확인된다.

- 텔넷으로 tcping처럼 확인할 수도 있다.
ex) telnet www.naver.com 22일때 빈화면이 나오면 해당 포트가 열려있는 것이다.

- putty로 텔넷 접속을 해볼 수도 있다.

* 가상 터미널 서버 pts(pseudo terminal server)

- w명령어와 who명령어의 결과 화면을 기억해두자.
- w는 쉘 정보는 보이는데 who는 안나온다.

- w, who 는 /ver/run/utmp에서 보이는 파일이다.
- /var/log/btmp는 lastb인데, 실패한 로그인 이력을 저장한다.
- /var/log/wtmp는 last인데, 로그인/로그아웃 리부팅
- /var/log/lastlog는 lastlog인데, 마지막 로그인이력

/ 관리자로 사용자를 바꾸기
# su - root
- su를 할때 -를 어지간하면 쓰는것을 추천 : 대시를 쓰지 않으면 루트 사용자의 옵션을 가져가지 않는다.

/ sudo
- 관리자 계정이 아닐때 sudo를 붙이면 관리자 계정으로 실행시키게 된다.(패스워드는 입력해야 함)

- 텔넷은 은퇴하는 프로그램이다...

 

/ ssh
- 공개키 인증방식과 관련하여 접속할것인데 접속할것이냐? 예

/ 쁘띠로 접속 후 서버에서 접속된 내용을 확인하기

 

- 또는 /var/log의 secure파일을 확인해볼 수 있다.
- 로그인 인증 내역이 남는다.
# cat /var/log/secure

 

/ ssh의 22번 포트 변경하기
- ssh의 22번 포트는 너무 유명한 포트라 접속하는 22번 포트를 변경할 수도 있다.
- 컨피그 파일 확인하기
# rpm -qc openssh-server
- 에서 /etc/ssh/sshd_config가 설정파일이다.

- sshd_config파일의 17번째 라인을 주석해제하고 포트를 변경한 후,ㅊㅇ 
- #systemctl restart sshd로 재시작을 해준다.
- 어지간하면 포트는 1023포트 이상으로 적용해준다.
- 확인은 # netstat -antp | grep sshd로 하면 된다.
- 근데 방화벽이 막혀있어서 밖에서 바로 접속이 안된다..
- 2220 방화벽을 추가해주자

 

/ 외부에서 루트가 로그인 하지 못하게 하기
- PermitRootLogin
- 아까의 /etc/ssh/sshd_config에서 48행의 PermitRootLogin을 no로 변경해준다.

# vi /etc/services
- 46, 47행의 포트번호를 변경해준다.

- 그리고 # systemctl restart sshd로 서비스를 재시작 해준다.

- 이후 쁘띠로 centos로 접속하여 'su -' 관리자 계정으로 스위치 유저를 하더라도 접속했던 계정은 그대로 centos이다.

 

- 누가 'se -'명령어를 서서 관리자 계정으로 스위치 유저를 했는지도 알 수 있다.
# cat /var/log/secure

 

 

 

 

 

 

 

 

 

 

 

 

 

 

728x90

+ Recent posts