RHCE
Red Hat Certified Engineer
- RedHat 리눅스 시스템 관리, 네트워크, 보안에 대한 전문지식을 보유하고 있음을 인증
- 리눅스 전문지식에 대한 자격증으로는 LPIC1가 있음
예상 문제
selinux 활성화
ip forwarding 설정
/etc/sysctl.conf
cron 설정
/etc/cron.deny
anonymous ftp
samba
- 설치
$ yum install -y samba
- samba 전용 그룹 생성 및 사용자 설정
$ groupadd project useradd -aG project guru
- 디렉토리 생성 및 권한 설정
$ mkdir /project $ chgrp project /project $ chmod 2770 /project
- selinux 설정
$ selinux chcon -R -t samba_share_t /project getsebool -a | grep samba; setsebool -P samba_enable_home_dirs on
- 설정 파일 수정(데몬 재가동 & 부팅시 설정 포함)
# /etc/samba/smb.conf workgroup = HPEDU hosts allow = x.x.x. ; or 방화벽 설정 [project] ; 기존 설정 복사 comment = hp-project path = /project writable = yes (browsable = yes) write list = +project ; or guru
- 재구동
$ service smb restart $ chkconfig smb on
- 방화벽 설정
$ system-config-firewall → smb 선택
- samba 계정 설정
$ smbpasswd -a guru
- test
$ smbclient -L //IP -U guru $ mount -t cifs -o user=gure //IP/project /mnt $ df -h
nfs
- 설치
$ yum install -y nfs-utils
- 설정
# /etc/exports /common IP(ro,sync)
- 재구동
$ service nfs restart $ chkconfig nfs on
- 방화벽
$ system-config-firewall → NFS4 선택
postfix
- 설치
$ yum install -y postfix
- 설정
# /etc/postfix/main.cf (or postconf -e "inet_interfaces = all") inet_interfaces = all inet_interfaces = localhost
- 재구동
$ service postfix restart $ chkconfig postfix on
- 방화벽
$ system-config-firewall → Mail (SMTP) 선택
- ailas 설정
# /etc/aliases guru: visitor
- alias 적용
$ newaliases
- test (다른 시스템)
$ mailx guru@192.168.56.201 $ mailq
httpd
- 설치 및 설정 (데몬 재가동 & 부팅시 설정 포함)
- Apache 항목 참조
- selinux
$ ls -ldZ /var/www/html $ chcon -R -t httpd_sys_content_t /www $ ls -ldZ /www
- 방화벽
$ system-config-firewall → WWW(HTTP) 선택
- httpd 디렉토리 접근 설정
<Directory "/var/www/virtual/security"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from IP ### 이 부분이 중요 </Directory>
httpd 가상 호스트
- 설정 (데몬 재가동 & 부팅시 설정 포함)
# /etc/httpd/conf/httpd.conf NameVirtualHost *:80 <VirtualHost *:80> ServerAdmin webmaster@dummy-host.example.com DocumentRoot /www ServerName server.example.com ErrorLog logs/dummy-host.example.com-error_log CustomLog logs/dummy-host.example.com-access_log common </VirtualHost> <VirtualHost *:80> ServerAdmin webmaster@dummy-host.example.com DocumentRoot /var/www/virtual ServerName www.example.com ErrorLog logs/dummy-host.example.com-error_log CustomLog logs/dummy-host.example.com-access_log common </VirtualHost>
- 재구동
$ service httpd restart $ chkconfig httpd on
- 디렉토리 생성 및 파일 다운 로드
$ mkdir /var/www/virtual $ wget ftp://my.site.com/virtualpage.html $ mv virtualpage.html index.html
- selinux
$ ls -lZ /var/www/virtual
- test
$ lynx http://server201.example.com $ lynx http://www201.example.com
iscsi
- 설치 및 start(enable)
$ yum install -y iscsi-initiator-utils $ service iscsid start $ chkconfig iscsid on
- iscsi 서버 질의 및 로그인
$ iscsiadm -m discovery -t st -p {iSCSI Server IP} $ iscsiadm -m node -T iqn~~ -p {iSCSI Server IP} -l $ iscsiadm -m node -T iqn~~ -p {iSCSI Server IP} -o update -n node.startup -v automatic $ dmesg | tail
- disk 작업
$ fdisk -cu /dev/sde $ mkfs -t ext4 /dev/sde1 $ mkdir /iscsi $ vi /etc/fstab $ mount /iscsi
ssh 접근제어
스크립트 작성
부팅시 커널값 설정
아래 파일을 편집하여 kernel 제일 뒤쪽에 원하는 값을 세팅하여 넣음 ~~~shell $ vi /boot/grub/grub.conf ~~~
iso mount
~~~properties
iso9660 ro,loop
~~~
추가 예상 문제
httpd 인증 설정 (File)
- 디렉토리 생성 및 파일 다운로드
$ cd /var/www/virtual $ mkdir security $ wget ftp://my.site.com/security.html
- 인증
$ htpasswd -c -m /var/www/.userlist guru
- 설정(데몬 재가동 & 부팅시 설정 포함)
# /etc/httpd/conf/httpd.conf <VirtualHost *:80> ServerAdmin webmaster@dummy-host.example.com DocumentRoot /var/www/virtual ServerName www201.example.com <Directory "/var/www/virtual/security"> Options Indexes FollowSymLinks AllowOverride None AuthName "Security" AuthType basic AuthUserFile "/var/www/.userlist" Require vaild-user Order allow,deny Allow from all </Directory> ErrorLog logs/dummy-host.example.com-error_log CustomLog logs/dummy-host.example.com-access_log common </VirtualHost>
- 재구동
$ service httpd restart $ chkconfig httpd on
- 검증
$ lynx http://IP/security/security.html
httpd 인증설정(LDAP)
- 디렉토리 생성 및 파일 다운로드
$ cd /var/www/virtual $ mkdir security $ wget ftp://my.site.com/security.html
- 인증서 파일 설치
$ cd /etc/httpd $ wget http://my.site.com/server.crt
- 설정(데몬 재가동 & 부팅시 설정 포함)
# /etc/httpd/conf/httpd.conf LDAPTrustedGlobalCert CA_BASE64 /etc/httpd/server.crt <VirtualHost *:80> ServerAdmin webmaster@dummy-host.example.com DocumentRoot /var/www/virtual ServerName www201.example.com <Directory "/var/www/virtual/security"> Options Indexes FollowSymLinks AllowOverride None AuthName "Security" AuthType basic AuthBasicProvider ldap <<<<< AuthLDAPUrl "ldap://xxx/dc=example,dc=com" TLS Require vaild-user Order allow,deny Allow from all </Directory> ErrorLog logs/dummy-host.example.com-error_log CustomLog logs/dummy-host.example.com-access_log common </VirtualHost>
- 재구동
$ service httpd restart $ chkconfig httpd on
caching name server
- 설치
$ yum install -y bind
- 설정 ~~~conf /etc/named.conf listen-on port 53 { any; }; listen-on-v6 port 53 { any; }; allow-query { localhost; 192.168.56.0/24; }; forwarders { 192.168.56.201; }; dnssec-validation no;
(rndc-confgen -a) service named restart chkconfig named on ~~~
log 서버
- 설정 (클라이언트)
/etc/rsyslog.conf .info @rhce
- 설정 (서버)
/etc/rsyslog.conf Provides UDP syslog reception $ModLoad imudp $UDPServerRun 514 Provides TCP syslog reception $ModLoad imtcp $InputTCPServerRun 514
- 재구동
$ service rsyslogd restart
- 방화벽 설정
$ service iptables save $ vi /etc/sysconfig/iptables $ iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 514 -j ACCEPT $ iptables -A INPUT -p udp -m state --state NEW -m udp --dport 514 -j ACCEPT $ service iptables restart $ iptables -L
- 테스트
$ tail /var/log/messages
-
Linux Professional Instritute Certified ↩