نحوه نصب بستر سبد خرید LiteCart در اوبونتو 16.04
LiteCart یک بستر سبد خرید آزاد و منبع باز است که به زبان های PHP ، jQuery و HTML 5 نوشته شده است. این نرم افزار ساده ، سبک و با کاربرد آسان است.
این آموزش نحوه محافظت از سرور FreeBSD خود را با استفاده از فایروال OpenBSD PF نشان می دهد. فرض خواهیم کرد که شما یک نصب FreeBSD تمیز دارید که توسط Vultr مستقر شده است و کاربر دیگری اضافه نشده است. ما علاوه بر پیکربندی فایروال کارهای دیگری نیز انجام خواهیم داد که امنیت سرور FreeBSD ما را نیز سخت می کند. قبل از پیکربندی فایروال ، ما برخی از بسته ها را نصب خواهیم کرد زیرا نصب پیش فرض FreeBSD با حداقل ابزار و بسته ها (که صحیح است) همراه است ، تا کار را برای ما راحت تر کند.
پوسته پیش فرض در FreeBSD است /bin/sh
. این یک پوسته اساسی است که عملکردی کامل ندارد. ما از چیزی بهتر استفاده خواهیم کرد. ما نصب zsh
خواهیم کرد
ابتدا این بسته ها را نصب کنید:
# pkg install zsh gnuls
The package management tool is not yet installed on your system.
Do you want to fetch and install it now? [y/N]: y
Bootstrapping pkg from pkg+http://pkg.FreeBSD.org/freebsd:10:x86:64/latest, please wait...
...
GNULS ls
برنامه ای از لینوکس است. ما فقط می خواهیم همان ls
دستور را در لینوکس و FreeBSD داشته باشیم.
کاربر عادی را به سیستم اضافه کنید: (جان را با نام کاربری خود جایگزین کنید و فراموش نکنید که کاربر را به گروه چرخ اضافه کنید)
# adduser
Username: john
Full name: John Doe
Uid (Leave empty for default):
Login group [john]:
Login group is john. Invite john into other groups? []: wheel
Login class [default]:
Shell (sh csh tcsh zsh rzsh nologin) [sh]: zsh
Home directory [/home/john]:
Home directory permissions (Leave empty for default):
Use password-based authentication? [yes]:
Use an empty password? (yes/no) [no]:
Use a random password? (yes/no) [no]:
Enter password:
Enter password again:
Lock out the account after creation? [no]:
Username : john
Password : *****
Full Name : John Doe
Uid : 1001
Class :
Groups : john wheel
Home : /home/john
Home Mode :
Shell : /usr/local/bin/zsh
Locked : no
OK? (yes/no): yes
adduser: INFO: Successfully added (john) to the user database.
Add another user? (yes/no): no
Goodbye!
ایجاد پرونده پیکربندی zsh:
# ee /home/your-username/.zshrc
این را در پرونده .zshrc خود کپی کنید:
PS1="<%U%m%u>$[%B%1~%b]%(#.#.$) "
bindkey -e
alias su='su -m'
alias du='du -h -d0'
alias df='df -h'
alias l=less
alias ll='gnuls --color=always -l'
alias ls='gnuls --color=always'
alias pkg_ver='pkg version -v -l "<" | > upgrade'
export EDITOR=ee
autoload -U colors && colors
autoload -U promptinit && promptinit
autoload -U compinit && compinit
# History settings
SAVEHIST=1000
HISTSIZE=1000
HISTFILE=~/.history
setopt histignoredups appendhistory
این دستور را اجرا کنید: (جان را با نام کاربری خود جایگزین کنید)
chown john:john /home/john/.zshrc
اکنون با نام کاربری خود به سرور FreeBSD وارد شوید و رمز اصلی پیش فرض root را تغییر دهید:
<vultr>[~]$ su
Password:
<vultr>[~]# passwd
Changing local password for root
New Password:
Retype New Password:
<vultr>[~]#
ما به sendmail احتیاج نداریم توقف و غیرفعال کردن این سرویس:
<vultr>[~]# /etc/rc.d/sendmail stop
Stopping sendmail.
Waiting for PIDS: 7843.
sendmail_submit not running? (check /var/run/sendmail.pid).
Stopping sendmail_msp_queue.
Waiting for PIDS: 7846.
در مرحله بعد ، ما فایل rc.conf خود را تغییر خواهیم داد تا طبیعی تر به نظر برسد:
# ee /etc/rc.conf
آن را تغییر دهید تا مانند این باشد:
#----------- NETWORKING ------------------------------------------------#
hostname="ceph.domain1.com" # replace ceph.domain1.com with your domain
ifconfig_vtnet0="dhcp"
static_routes=linklocal
route_linklocal="-net 169.254.0.0/16 -interface vtnet0"
#--------- SERVICES BSD LOCAL ----------------------------------------#
sshd_enable="YES"
ntpd_enable="YES"
#pf_enable="YES"
#pf_rules="/etc/firewall"
#pf_flags=""
#pflog_enable="YES"
#pflog_logfile="/var/log/pflog"
#pflog_flags=""
sendmail_enable="NONE"
sendmail_submit_enable="NO"
sendmail_outbound_enable="NO"
sendmail_msp_queue_enable="NO"
ویرایش /etc/hosts
پرونده:
# ee /etc/hosts
آدرس IP و نام میزبان خود را اضافه کنید:
::1 localhost localhost.ceph ceph
127.0.0.1 localhost localhost.ceph ceph
108.61.178.110 ceph.domain1.com ceph
تنظیم منطقه زمانی:
# bsdconfig
هر زمان که می توانید ، دسترسی از راه دور را برای کاربر اصلی غیرفعال کنید. بیشتر حملات به SSH سعی خواهد کرد از طریق حساب کاربر root دسترسی داشته باشید. همیشه با نام کاربری خود ارتباط برقرار کرده و سپس su
به ریشه آن بپردازید. فقط کاربران wheel
گروه می توانند su
ریشه یابی کنند. به همین دلیل کاربر خود را به گروه چرخ اضافه کردیم.
غیرفعال کردن ورود به سیستم ریشه:
# ee /etc/ssh/sshd_config
لغو پاسخ این خط:
PermitRootLogin no
راه اندازی مجدد:
# reboot
پس از اتمام راه اندازی مجدد ، پیامی مانند این را در کنسول Vultr مشاهده خواهید کرد:
time correction of 3600 seconds exceeds sanity limit (1000); set clock manually to
correct UTC time.
به همین دلیل باید ساعت را به صورت دستی اصلاح کنیم. ابتدا از این دستورات پیروی کنید su
:
$ su
Password:
# ntpdate 0.europe.pool.ntp.org
حال می خواهیم دیوار آتش را پیکربندی کنیم. OpenBSD PF در هسته FreeBSD گنجانده شده است ، بنابراین نیازی به نصب هیچ بسته ای نیست.
با ee
ویرایشگر ، پرونده را ایجاد کنید /etc/firewall
:
# ee /etc/firewall
این را وارد کنید: (آدرسهای IP را جایگزین آدرس خود کنید)
#######################################################################
me="vtnet0"
table <bruteforcers> persist
table <trusted> persist file "/etc/trusted"
icmp_types = "echoreq"
junk_ports="{ 135,137,138,139,445,68,67,3222 }"
junk_ip="224.0.0.0/4"
set loginterface vtnet0
scrub on vtnet0 reassemble tcp no-df random-id
# ---- First rule obligatory "Pass all on loopback"
pass quick on lo0 all
# ---- Block junk logs
block quick proto { tcp, udp } from any to $junk_ip
block quick proto { tcp, udp } from any to any port $junk_ports
# ---- Second rule "Block all in and pass all out"
block in log all
pass out all keep state
############### FIREWALL ###############################################
# ---- Allow all traffic from my Home
pass quick proto {tcp, udp} from 1.2.3.4 to $me keep state
# ---- block SMTP out
block quick proto tcp from $me to any port 25
# ---- Allow incoming Web traffic
pass quick proto tcp from any to $me port { 80, 443 } flags S/SA keep state
# ---- Allow my team member SSH access
pass quick proto tcp from 1.2.3.5 to $me port ssh flags S/SA keep state
# ---- Block bruteforcers
block log quick from <bruteforcers>
# ---- Allow SSH from trusted sources, but block bruteforcers
pass quick proto tcp from <trusted> to $me port ssh \
flags S/SA keep state \
(max-src-conn 10, max-src-conn-rate 20/60, \
overload <bruteforcers> flush global)
# ---- Allow ICMP
pass in inet proto icmp all icmp-type $icmp_types keep state
pass out inet proto icmp all icmp-type $icmp_types keep state
ایجاد /etc/trusted
پرونده در این پرونده ، IP هایی را که "به آنها اعتماد داریم" قرار خواهیم داد.
# ee /etc/trusted
مقداری IP اضافه کنید:
# Hosting
1.2.0.0/16
# My friends
1.2.4.0/24
حالا برخی توضیحات. پورت های ناخواسته و IP های ناخواسته فقط برخی از درگاه ها / IP ها هستند که ما نمی خواهیم آنها را در سیاهههای مربوط ببینیم. ما این کار را با این قانون انجام داده ایم:
# ---- Block junk logs
block quick proto { tcp, udp } from any to $junk_ip
block quick proto { tcp, udp } from any to any port $junk_ports
اینها فقط پیش فرض است و نیازی به نگرانی در مورد آن نیست:
icmp_types = "echoreq"
set loginterface vtnet0
scrub on vtnet0 reassemble tcp no-df random-id
pass quick on lo0 all
block in log all
pass out all keep state
این قانون ترافیک SMTP خروجی از سرور شما را مسدود می کند (که پیش فرض Vultr است).
# ---- block SMTP out
block quick proto tcp from $me to any port 25
به جز bruteforcers
بقیه کاملاً مستقیم رو به جلو است.
# ---- Allow SSH from trusted sources, but block bruteforcers
pass quick proto tcp from <trusted> to $me port ssh \
flags S/SA keep state \
(max-src-conn 10, max-src-conn-rate 20/60, \
overload <bruteforcers> flush global)
Bruteforcers فقط می گوید: اجازه دهید از IP های <trusted> به پورت 22 اما فقط 10 اتصال همزمان از یک منبع IP امکان پذیر است. اگر بیش از 10 است ، این IP را مسدود کرده و آن را در bruteforcers جدول قرار دهید. همین قانون در مورد قانون 20/60 نیز صدق می کند. یعنی حداکثر 20 اتصال در 60 ثانیه.
فعال کردن فایروال:
# ee /etc/rc.conf
لغو این خطوط:
pf_enable="YES"
pf_rules="/etc/firewall"
pf_flags=""
pflog_enable="YES"
pflog_logfile="/var/log/pflog"
pflog_flags=""
راه اندازی مجدد:
# reboot
اگر همه کارها را درست انجام داده باشید ، می توانید وارد سیستم شوید و فایروال فعال می شود. لازم نیست هر بار که /etc/firewall
فایل را تغییر دهید ، مجدداً راه اندازی مجدد کنید. فقط انجام دهید:
# /etc/rc.d/pf reload
ببینید چه کسی سعی دارد در زمان واقعی به سرور شما متصل شود:
# tcpdump -n -e -ttt -i pflog0
نمایش تاریخ:
# tcpdump -n -e -ttt -r /var/log/pflog
ببینید شخصی در جدول بروکرها دارید:
# pfctl -t bruteforcers -T show
و همین است شما فایروال PF را با موفقیت در سرور FreeBSD پیاده سازی کرده اید!
LiteCart یک بستر سبد خرید آزاد و منبع باز است که به زبان های PHP ، jQuery و HTML 5 نوشته شده است. این نرم افزار ساده ، سبک و با کاربرد آسان است.
با استفاده از یک سیستم متفاوت؟ Anchor CMS یک سیستم مدیریت محتوا (CMS) بسیار ساده و بسیار سبک ، بسیار آزاد و آزاد است.
NFS یک سیستم فایل مبتنی بر شبکه است که به رایانه ها اجازه می دهد تا از طریق شبکه رایانه ای به فایلها دسترسی پیدا کنند. این راهنما توضیح می دهد که چگونه می توانید پوشه ها را روی NF قرار دهید
هنگام راه اندازی سرور جدید لینوکس ، به روزرسانی سیستم های هسته و سایر بسته ها تا آخرین نسخه پایدار یک روش توصیه شده است. در این مقاله
با استفاده از یک سیستم متفاوت؟ Matomo (سابقا پیویک) یک بستر تحلیلی منبع باز است ، یک جایگزین باز برای Google Analytics. منبع Matomo میزبان o
TeamTalk یک سیستم کنفرانس است که به کاربران امکان می دهد مکالمات صوتی / تصویری با کیفیت بالا ، چت متنی ، انتقال فایل ها و صفحه های به اشتراک بگذارند. من
Vultr یک ویژگی را فراهم می کند که به شما امکان می دهد با ایجاد یک نمونه جدید ، کلیدهای SSH را از قبل نصب کنید. این اجازه می دهد تا به کاربر root دسترسی داشته باشید ، با این حال ، th
با استفاده از یک سیستم متفاوت؟ NodeBB یک نرم افزار انجمن مبتنی بر Node.js است. از سوکت های وب برای تعامل فوری و اعلامیه های زمان واقعی استفاده می کند. NodeB
ZNC یک پیشرانه پیشرفته شبکه IRC است که تمام وقت بهم متصل می شود تا مشتری IRC بتواند بدون از دست دادن جلسه گپ قطع یا وصل شود.
رنجر یک مدیر فایل مبتنی بر خط فرمان است که دارای کلیدهای اتصال VI است. این برنامه یک رابط لعنتی مینیمالیستی و زیبا با نمای سلسله مراتب فهرست ارائه می دهد